I don’t have alerting set up for such cases, only a sitemap that shows which device has sent “anything” the last time.
Maybe this is something you can use in your setup as a basis, the only thing you would need to add is a rule that is triggered every few hours/minutes (as needed) that compares the “last-seen”-timestamps against the current time and send a message/mail/whatever if one of the devices is overdue.
My setup looks like this:
There are items defined for each device:
DateTime WC_Fenster_LastUpdate "Last seen [%1$ta %1$td.%1$tm. 1$tH:%1$tM]" <clock>
These items are updated by rules that are triggered by events from the respective device:
rule "last seen WC_Fenster"
Item WC_Fenster_Kontakt received update or
Item WC_Fenster_Hell received update or
Item WC_Fenster_Temp received update
postUpdate(WC_Fenster_LastUpdate, new DateTimeType())
Note that in the rule you can aggregate different events to update the item. The best choice would be a report the device sends regularly. Consult your event.log for events belonging to the respective device.
In my case the result is shown in a sitemap:
Text item=WC_Fenster_LastUpdate label="WC Fenster" valuecolor=[>172800="red",>86400="orange",<=86400="green"]
In your case you may want to check the state of the “last-seen” items for outdated timestamps. Group them into a group and use one of the methods documented in various threads to check each member of the group for an entry that is “too old”, alerting you in a way you prefer.