diff --git a/interface/src/project/SettingsCustomization.tsx b/interface/src/project/SettingsCustomization.tsx
index 7e4daf26d..1bf5a5464 100644
--- a/interface/src/project/SettingsCustomization.tsx
+++ b/interface/src/project/SettingsCustomization.tsx
@@ -110,7 +110,7 @@ const SettingsCustomization: FC = () => {
<>
- Customize which entities to exclude from all all services (MQTT, API). This will have immediate effect.
+ Customize which entities to exclude. This will have immediate effect on all services including MQTT and API.
{
const saveCustomization = async () => {
if (deviceEntities && selectedDevice) {
- const exclude_entities = deviceEntities.filter((de) => de.x).map((new_de) => "07" + new_de.s);
+ const masked_entities = deviceEntities
+ .filter((de) => de.m)
+ .map((new_de) => new_de.m.toString(16).padStart(2, '0') + new_de.s);
try {
- const response = await EMSESP.writeExcludeEntities({
+ const response = await EMSESP.writeMaskedEntities({
id: selectedDevice,
- entity_ids: exclude_entities
+ entity_ids: masked_entities
});
if (response.status === 200) {
enqueueSnackbar('Customization saved', { variant: 'success' });
@@ -160,11 +162,11 @@ const SettingsCustomization: FC = () => {
return;
}
- const toggleDeviceEntity = (id: number) => {
+ const toggleDeviceEntity = (id: number, mask: number) => {
setDeviceEntities(
deviceEntities.map((o) => {
if (o.i === id) {
- return { ...o, x: !o.x };
+ return { ...o, m: mask ^ o.m };
}
return o;
})
@@ -177,7 +179,7 @@ const SettingsCustomization: FC = () => {
- ({deviceEntities.reduce((a, v) => (v.x ? a + 1 : a), 0)}/{deviceEntities.length})
+ ({deviceEntities.reduce((a, de) => (de.m === 7 ? a + 1 : a), 0)}/{deviceEntities.length})
ENTITY NAME
CODE
@@ -188,10 +190,10 @@ const SettingsCustomization: FC = () => {
{deviceEntities.map((de) => (
toggleDeviceEntity(de.i)}
- sx={de.x ? { backgroundColor: '#f8696b' } : { backgroundColor: 'black' }}
+ onClick={() => toggleDeviceEntity(de.i, 7)}
+ sx={de.m === 7 ? { backgroundColor: '#f8696b' } : { backgroundColor: 'black' }}
>
- {de.x && }
+ {de.m === 7 && }
{de.n}