Re-transmit binding?

Is there such a thing like a re-transmit binding for wireless communication ?
When I send a command, it keeps sending it every x seconds until the state changes accordingly. (no autoupdate)

Example: I set the rollershutter level to 50 with a command. The state remains until the shutter reports back the new state. Thats how it is already. What I miss is an automatic re-transmit of that command if the state does not change within x seconds.

I would love this to be similar to the expire binding. When it still was a binding that is.
Rollershutter “Bathroom” … {channel=" …", retransmitt =“10s,3,updatedItem”}

Yes, I know how to do this in python or with Timers. I just thought this may be a nice thing to support out of the box since wireless or other lossy forms of communications do happen :wink:

Something like this would have to be implemented in core I think because the bindings do not really have access to Items in OH 2.x+ architecture. That’s why Expire was moved into core.

Ideally, this should be built into the add-on because retrying isn’t really applicable to all technologies.

It also gets complicated when an Item is linked to multiple channels and if profiles get involved.

This would be a great candidate for a rule template though. Put all the Items into a group, add the “retransmit” metadata to those Items and one rule can do this. Published to the marketplace, and it becomes installable like an add-on.

My Debounce [4.0.0.0;4.9.9.9] is a similar concept.

Of course, autoupdate would need to be disabled for this to be meaningful.

If you can compile an addon yourself; I implemented exactly what you’re looking for, but I never published it on the marketplace:

Switch valve {channel="xxx" [profile="basic-profiles:redeliver-command", numRedeliveries=3, redeliverDelayMillis=1000] }

Perfect, many thanks!