Mqtt binding + triggered/updated/changed + rules

Yes, viewable and online in paperUI.

I do have a bit of an interesting find.

I decided to try the docker image. So i created the folders for the container. Ran the docker image, so it would create the skeleton.

Then i copied my items/rules/things/addons configs in to the folder for the docker image. The docker image was running same as my server. I then removed the postCommand=true from the things file.

Left the item as it was and modified my rules to show on updates…

AND IT WORKS.

I then updated it to trigger the rule as " when testing_Motion changed to ON" and that worked too!

So there is something wrong in my server itself. So now I need to spin up my original install, and figure out how to export the bindings list so i can put them in my addons.cfg file and let my docker do it’s thing.

Thanks for the help troubleshooting with me today!. Talk about a ghost in the machine

Another update. As I have been trying to get things moved over to the docker. Something I have copied over (binding, setting, config, ect) has triggered the same non-rule triggering behavior in the container as well.

further progress. for the docker container. I removed EVERYTHING from the userdata folder and the rule is triggering.

So it’s something in there… getting closer

I offer the clue that many MQTT users specify channels in the form
mqtt:topic:BedroomRepeaterNode:MotionSensor
and not
mqtt:topic:broker1:BedroomRepeaterNode:MotionSensor

I do not understand the subtleties, and I guess it may relate to how your xxx.things file(s) are structured. There can either be cross-references or nested Things.

You’d still expect work/not-work behaviour of course, if there was something wrong there. Half-working is weird.

agreed. very odd. But i have had the mqtt messages coming in like this for quite sometime. So not sure why the rules weren’t triggering. But i am starting to wondering if it’s one of those situations where i need to blow away the cache and tmp files. then reboot since even the docker stopped working once i gave my whole userdata folder to the container.

So, the latest and greatest update is i am running on the docker. I did NOT copy over my userdata folder and so far it’s behaving the way it’s expected to. No postCommand=true workaround or anything.

Just curious, is there any reason why one would not wipe out the cache/temp file maybe each time the server reboots, or when openhab gets restarted?

I think underpowered Pi users (the majority OH user) find reboot a tedious process.