Sorry for the inconvenience.
I just checked, and the updated version is different.
Now I don’t understand how the 3 homeyscript cards and that script ended up with your flows after the import. When did you imported the TEF? Not recently?
I just imported the TEF twice, to make sure, and it is the one I expect; there’s one Homeyscript card in it, and this is te code in it:
// Sensor.Check, to check on sensor last update time. Argument: inactive time (in seconds):
const INVALIDATE_AFTER = (args[0]); // Example 86400sec./3600 = 24hrs
const invalidatedDevices = [];
for (const device of Object.values(await Homey.devices.getDevices())) {
if (! device.capabilitiesObj) continue;
let count = 0;
for (const capabilityObj of Object.values(device.capabilitiesObj)) {
if (device.capabilitiesObj.measure_temperature || device.capabilitiesObj.alarm_contact || device.capabilitiesObj.alarm_motion ) {
if (! capabilityObj?.lastUpdated || (Date.now() - new Date(capabilityObj?.lastUpdated) > INVALIDATE_AFTER * 1000)) {
count++;
}
}
}
if (count && count === Object.keys(device.capabilitiesObj).length) {
invalidatedDevices.push("- " + device.name + "\n (zone: " + device.zoneName + ")" );
}
}
// When there are matching sensors
if ( invalidatedDevices.length != 0 ) {
// create / update HomeyScript variable
await tag('InvalidatedDevices', invalidatedDevices.join('\n'));
// Send Timeline notification
Homey.flow.runFlowCardAction({
uri: 'homey:manager:notifications',
id: 'create_notification',
args: {
text: "\nDevices without updates for " + INVALIDATE_AFTER / 3600 + "hrs: \n" + invalidatedDevices.join('\n') + "\n\nflow Sensors Check"
},
});
console.log("Devices without updates for " + INVALIDATE_AFTER / 3600 + "hrs: \n" + invalidatedDevices.join('\n'));
return("Devices without updates for " + INVALIDATE_AFTER / 3600 + "hrs: \n" + invalidatedDevices.join('\n'));
}
// When there's no matching sensor
if ( invalidatedDevices.length == 0 ) {
// Just report "None"
// create / update HomeyScript variable
await tag('InvalidatedDevices', 'None');
// Send Timeline notification
Homey.flow.runFlowCardAction({
uri: 'homey:manager:notifications',
id: 'create_notification',
args: {
text: "\nDevices without updates for " + INVALIDATE_AFTER / 3600 + "hrs: None\n\nflow Sensors Check"
},
});
console.log("Devices without updates for " + INVALIDATE_AFTER / 3600 + "hrs: None" );
return invalidatedDevices.length != 0;
}
// Original script by Robert Klep
// https://community.homey.app/t/a-script-to-check-sensor-last-update/63142/9