Expiry Manager

Hi, how can I use this ?

Set the property on the Expire metadata to ignore state updates.

value: 1h0m0s,command=ON
config:
  ignoreStateUpdates: "true"
  ignoreCommands: "true"
1 Like

Thanks. I use Blockly to set expire times of some devices, here is the generated script:

var itemMetadata;


if (items.getItem('GlobalSetting').state == 'ONS') {
  itemMetadata = items.metadata.getMetadata('FF_MasterBedroom_Power', 'expire');
  itemMetadata = (itemMetadata === null) ? { value: '', configuration: {} } : itemMetadata;
  itemMetadata.value = '4h0m0s,command=OFF';
  items.metadata.replaceMetadata('FF_MasterBedroom_Power', 'expire', itemMetadata.value, itemMetadata.configuration);
  itemMetadata = items.metadata.getMetadata('FF_Bathroom_Power', 'expire');
  itemMetadata = (itemMetadata === null) ? { value: '', configuration: {} } : itemMetadata;
  itemMetadata.value = '4h0m0s,command=OFF';
  items.metadata.replaceMetadata('FF_Bathroom_Power', 'expire', itemMetadata.value, itemMetadata.configuration);
} else {
  itemMetadata = items.metadata.getMetadata('FF_MasterBedroom_Power', 'expire');
  itemMetadata = (itemMetadata === null) ? { value: '', configuration: {} } : itemMetadata;
  itemMetadata.value = '5h0m0s,command=OFF';
  items.metadata.replaceMetadata('FF_MasterBedroom_Power', 'expire', itemMetadata.value, itemMetadata.configuration);
  itemMetadata = items.metadata.getMetadata('FF_Bathroom_Power', 'expire');
  itemMetadata = (itemMetadata === null) ? { value: '', configuration: {} } : itemMetadata;
  itemMetadata.value = '5h0m0s,command=OFF';
  items.metadata.replaceMetadata('FF_Bathroom_Power', 'expire', itemMetadata.value, itemMetadata.configuration);
}

Is it possible to include ignoreStateUpdates in this rule ?

Use the “store true to config ignoreStateUpdates into namespace expire for item ItemName” block.