By whom was the item changed?

Hi everybody, I would like to find out who changed an item. In this case, it is enough for me whether the change to the item was changed by a rule or via the UI. Otherwise the change would be initiated by the item itself.

Thanks and best regards
Peter

It’s not clear what you’re asking. Do you want to record it in the log? Do you want a notification on your phone?

For an existing rule, you would just add a log entry or a notification.

For the UI, you would have to make a new rule that triggers when the device receives a command, which would then post the log entry or notification. However, this rule would trigger if the command comes from the UI or another rule. So, you would need to add some additional logic to prevent the new rule from firing if it’s triggered by another rule.

OK, i try to explain my idea. I’ve rules for switch light on by motion or at a special illumination. Sometimes somebody switch the light manually. That is only one example. There are different usecases. To play around with some KI models to calculate possible useraction, it needs the information of manually switch for example. I would like to predict when a light will most likely be switched on manually. This probability should be determined using various sensors. This includes the time of day, people present, lighting conditions, etc.

Only solution I could imagine is to work with a proxy rule and an Item storing the source of action (source-keeper) Your UI would then not send commands directly to the target Item but call it‘s proxy rule. The proxy rule then updates the source-keeper and sends a command to the target. Your existing rules need to be extended with updating the source-keeper.

Jruby supports specifying the source of the command, and in the item command event you can check the source.

Design Pattern: Manual Trigger Detection had a few different approaches to achieving this.