Hi @Spaceman_Spiff
sure i do have an example. I just slightly changed the rule to
import HABApp
from HABApp.openhab.events import ItemStateEvent, ItemCommandEvent, ItemStateChangedEvent
from HABApp.core.events import ValueUpdateEventFilter, ValueChangeEventFilter, ValueChangeEvent, ValueUpdateEvent
from HABApp.openhab.items import SwitchItem, ContactItem, DatetimeItem
class MySwitchRule(HABApp.Rule):
def __init__(self):
super().__init__()
self.my_switch = SwitchItem.get_item('MQTT_EG_Kinderzimmer_Links')
print("my_switch: " + self.my_switch.get_value())
self.my_switch.listen_event(self.item_changed, ValueUpdateEventFilter())
def item_changed(self, event: ValueUpdateEvent):
# Check if event is ValueUpdateEvent
assert isinstance(event, ValueUpdateEvent), type(event)
print('Changed '+event.name+' to: '+event.value)
MySwitchRule()
Which then gives in the console when i toggle the Switch in openHAB twice (toggeling ON and following OFF). See that the phrase “Changed …” is repeated.
14:14:10 patrick@openHAB ~ 33s
$ /opt/habapp/bin/habapp -c /etc/openhab/habapp
_ _ _ ____ _
| | | | / \ | __ ) / \ _ __ _ __
| |_| | / _ \ | _ \ / _ \ | '_ \| '_ \
| _ |/ ___ \| |_) / ___ \| |_) | |_) |
|_| |_/_/ \_|____/_/ \_| .__/| .__/
|_| |_|
1.0.8
my_switch: OFF
Changed MQTT_EG_Kinderzimmer_Links to: ON
Changed MQTT_EG_Kinderzimmer_Links to: ON
Changed MQTT_EG_Kinderzimmer_Links to: OFF
Changed MQTT_EG_Kinderzimmer_Links to: OFF
Frontail gives:
2023-06-10 14:13:57.750 [INFO ] [openhab.event.ItemCommandEvent ] - Item 'MQTT_EG_Kinderzimmer_Links' received command ON
2023-06-10 14:13:57.752 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'MQTT_EG_Kinderzimmer_Links' predicted to become ON
2023-06-10 14:13:57.769 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'MQTT_EG_Kinderzimmer_Links' changed from OFF to ON
2023-06-10 14:14:33.497 [INFO ] [openhab.event.ItemCommandEvent ] - Item 'MQTT_EG_Kinderzimmer_Links' received command OFF
2023-06-10 14:14:33.499 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'MQTT_EG_Kinderzimmer_Links' predicted to become OFF
2023-06-10 14:14:33.513 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'MQTT_EG_Kinderzimmer_Links' changed from ON to OFF
What do you think where this is coming from.
Thx
Patrick
Edit: I also see this in HABApp.log. How can i fix this?
160 2023-06-10 14:15:27.367 [WARN ] [HABApp.Rule ] - /opt/habapp/lib/python3.11/site-packages/paho/mqtt/client.py:1782: ResourceWarning:unclosed <ssl.SSLSocket fd=10, family=2, type=1, proto=6, laddr=('192.168.x.x', 3 2923)>
161 2023-06-10 14:16:31.371 [WARN ] [HABApp.Rule ] - /opt/habapp/lib/python3.11/site-packages/paho/mqtt/client.py:1782: ResourceWarning:unclosed <ssl.SSLSocket fd=10, family=2, type=1, proto=6, laddr=('192.168.x.x, 3 7687)>
162 2023-06-10 14:18:31.375 [WARN ] [HABApp.Rule ] - /opt/habapp/lib/python3.11/site-packages/paho/mqtt/client.py:1782: ResourceWarning:unclosed <ssl.SSLSocket fd=10, family=2, type=1, proto=6, laddr=('192.168.x.x', 4 4707)>
163 2023-06-10 14:20:31.378 [WARN ] [HABApp.Rule ] - /opt/habapp/lib/python3.11/site-packages/paho/mqtt/client.py:1782: ResourceWarning:unclosed <ssl.SSLSocket fd=10, family=2, type=1, proto=6, laddr=('192.168.x.x', 4 0557)>