Jump to content
View in the app

A better way to browse. Learn more.

Universal Devices Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Andy P

Members
  • Joined

  • Last visited

Everything posted by Andy P

  1. Hey Ross, fair point. But the script is over 2000 lines long and there 100 css classes, etc. What I could try to do would be to build a very simple example that just embeds one device and combines it with a camera image if that would be helpful. Would be good to know exactly what use case you would be wanting to tackle, ie what device and what type of camera.
  2. The topic of getting images from security cameras has been touched on before, and I studied all that in trying to achieve a combination of camera images with EISY node status. I thought I would share this to save someone else some time. The idea was to create these: The devices are retrieved using rest/nodes and rest/status, the on/off cycles around the device comes from rest/log. The top half of the circle is day, the bottom is night. Green dash is current time. The gray dashes are sunrise and sunset from /rest/time. Spokes are motion events in the log. The DIV has been set with a background image subset of an Amcrest camera (here 192.168.2.18) using CSS. Then to refresh it you have to use a script to update the ?t= part of the URL to force a new image. Fine tune the backround-size and position to get the part of the picture you want. Overflow hidden clips the image to the div. --imgVCcar: url('http://192.168.2.18/cgi-bin/snapshot.cgi?t=123456789'); .i_car { position: absolute; width: 230; height: 160; border-radius: 5px; overflow: hidden; background-image:var(--imgVCcar); background-size: 500px ; background-position: 63% 70%; } The breezeway image is from a Unifi Protect camera. You have to set each camera to allow anonymous snapshots first. --imgVCbreeze: url("http://192.168.3.183/snap.jpeg?t=123456789"); .VCbreezeway { background-image: var(--imgVCbreeze); } Function to update the url timestamp to force refresh: function updateTS(value) { var newTS = new Date().getTime(); return value.replace(/\?t=\d+/, '\?t=' + newTS); } The door sensors and motion detectors are YoLink using the plugin. The lights are controlled by Insteon dimmers. The rectangles are lastRunTime info retrieved with /rest/programs. Hope this helps someone! Andy
  3. This was the response I received from the ticket: Chris Jahn replied 3 hours ago Hi Andy, We are in the process of fixing and enhancing the NLS capabilities for node servers. Problems like this are fixed in the new code.
  4. ok, thanks, I opened a ticket, will let you know.
  5. Any guess on why some yolink devices are missing the name in the node info (xray and rest/status) and others are not. For example, this leak sensor: <properties> <property name="Sensor Temperature" uom="17" formatted="72&#xb0;F" value="72" id="CLITEMP"/> <property name="" uom="25" formatted="Dry" value="0" id="GV0"/> <property name="" uom="25" formatted="High" value="4" id="GV1"/> <property name="" uom="25" formatted="DON/DOF" value="0" id="GV2"/> <property name="Connection State" uom="25" formatted="Online" value="0" id="GV20"/> <property name="Nodeserver Status" uom="25" formatted="Connected" value="1" id="ST"/> </properties> It is not a problem with the admin console because that has all the names right: This Temp Humidity sensor has all the names filled in: <properties> <property name="Battery Level" uom="25" formatted="High" value="4" id="BATLVL"/> <property name="Current Rel Humidity (%)" prec="1" uom="51" formatted="43.3%" value="433" id="CLIHUM"/> <property name="Sensor Temperature" prec="1" uom="17" formatted="73.2&#xb0;F" value="732" id="CLITEMP"/> <property name="Low Temp Alarm" uom="25" formatted="Normal" value="0" id="GV1"/> <property name="Low Temp Limit" prec="1" uom="17" formatted="64.4&#xb0;F" value="644" id="GV10"/> <property name="High Temp Limit" uom="17" formatted="95&#xb0;F" value="95" id="GV11"/> <property name="Low Humidity Limit" uom="51" formatted="0%" value="0" id="GV12"/> <property name="High Humidity Limit" uom="51" formatted="100%" value="100" id="GV13"/> <property name="High Temp Alarm" uom="25" formatted="Normal" value="0" id="GV2"/> <property name="Connection State" uom="25" formatted="Online" value="0" id="GV20"/> <property name="Low Humidity Alarm" uom="25" formatted="Normal" value="0" id="GV4"/> <property name="High Humidity Alarm" uom="25" formatted="Normal" value="0" id="GV5"/> <property name="Battery Alarm" uom="25" formatted="Normal" value="0" id="GV7"/> <property name="Alarm triggered" uom="25" formatted="Normal" value="0" id="GV8"/> <property name="Command Setting" uom="25" formatted="DON/DOF" value="0" id="GV9"/> <property name="Nodeserver Status" uom="25" formatted="Connected" value="1" id="ST"/> </properties> I have the latest everything and restarted everything. Andy
  6. Andy P replied to Kentinada's topic in YoLink
    Yes, but instead of testing for Wet, I test for not Dry: Notify Leak - [ID 0095][Parent 006C] If 'YoLink / Leak Attic HVAC' Water Sensor is not Dry Or 'YoLink / Leak Attic Hot Water' Water Sensor is not Dry Or 'YoLink / Leak Attic Manifold' Water Sensor is not Dry Or 'YoLink / Leak Barn Utility Room' Water Sensor is not Dry Or 'YoLink / Leak Dining SE' Water Sensor is not Dry Or 'YoLink / Leak Dining West Mid' Water Sensor is not Dry Or 'YoLink / Leak East Office NE' Water Sensor is not Dry Or 'YoLink / Leak Kitchen Island' Water Sensor is not Dry Or 'YoLink / Leak Kitchen Sink' Water Sensor is not Dry Or 'YoLink / Laundry Leak' Water Sensor is not Dry Then Resource 'Notify Leak' Else - No Actions - (To add one, press 'Action') Also, this is how I monitor the battery level: Notify Battery - [ID 009A][Parent 006C] If Time is 6:10:00PM And ( 'YoLink / Leak Attic HVAC' Sensor Battery Level <= Medium Low Or 'YoLink / Leak Attic Hot Water' Sensor Battery Level <= Medium Low Or 'YoLink / Leak Attic Manifold' Sensor Battery Level <= Medium Low Or 'YoLink / Leak Barn Utility Room' Sensor Battery Level <= Medium Low Or 'YoLink / Leak Dining SE' Sensor Battery Level <= Medium Low Or 'YoLink / Leak Dining West Mid' Sensor Battery Level <= Medium Low Or 'YoLink / Leak East Office NE' Sensor Battery Level <= Medium Low Or 'YoLink / Leak Kitchen Island' Sensor Battery Level <= Medium Low Or 'YoLink / Leak Kitchen Sink' Sensor Battery Level <= Medium Low Or 'YoLink / Laundry Leak' Sensor Battery Level <= Medium Low ) Then Resource 'Notify Yolink Battery' Else - No Actions - (To add one, press 'Action')
  7. Actually, it creates the node for the controller, but not the node for the panel.
  8. For some reason my nodes stopped updating. I deleted and reinstalled the plugin which connects just fine to TC2, creates the panel node, but then it gives this error - any idea what is happening? 2024-11-15 07:16:36.910 Thread-2 (parameterHandler) udi_interface.custom INFO custom:_save: Sending data notices to Polyglot. 2024-11-15 07:16:36.910 Thread-2 (parameterHandler) udi_interface ERROR totalconnect-poly:discover: Discovery failed with error Missing element isSceneZones (GetPanelMetaDataAndFullStatusEx_V1.isSceneZones) Traceback (most recent call last): File "/var/polyglot/pg3/ns/0021b9025ffe_2/totalconnect-poly.py", line 157, in discover self.add_security_device(loc_id, loc_name, device, update) File "/var/polyglot/pg3/ns/0021b9025ffe_2/totalconnect-poly.py", line 176, in add_security_device panel_data = self.tc.soapClient.service.GetPanelMetaDataAndFullStatusEx_V1(self.tc.token, loc_id, 0, 0, 1) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/site-packages/zeep/proxy.py", line 46, in __call__ return self._proxy._binding.send( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/site-packages/zeep/wsdl/bindings/soap.py", line 123, in send envelope, http_headers = self._create( ^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/site-packages/zeep/wsdl/bindings/soap.py", line 73, in _create serialized = operation_obj.create(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/site-packages/zeep/wsdl/definitions.py", line 224, in create return self.input.serialize(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/site-packages/zeep/wsdl/messages/soap.py", line 79, in serialize self.body.render(body, body_value) File "/usr/local/lib/python3.11/site-packages/zeep/xsd/elements/element.py", line 232, in render self._render_value_item(parent, value, render_path) File "/usr/local/lib/python3.11/site-packages/zeep/xsd/elements/element.py", line 256, in _render_value_item return self.type.render(node, value, None, render_path) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/site-packages/zeep/xsd/types/complex.py", line 307, in render element.render(node, element_value, child_path) File "/usr/local/lib/python3.11/site-packages/zeep/xsd/elements/indicators.py", line 256, in render element.render(parent, element_value, child_path) File "/usr/local/lib/python3.11/site-packages/zeep/xsd/elements/element.py", line 226, in render self.validate(value, render_path) File "/usr/local/lib/python3.11/site-packages/zeep/xsd/elements/element.py", line 284, in validate raise exceptions.ValidationError( zeep.exceptions.ValidationError: Missing element isSceneZones (GetPanelMetaDataAndFullStatusEx_V1.isSceneZones)
  9. Great suggestions - and the windows equivalent would be to paste it into a text document on Onedrive to avoid using email. Thanks.
  10. Ok, so about an hour later I went to the mobile UD app and it allowed me to switch the outlet on and off. Then I tried the admin console again and it had started to work. So, I did go ahead and install 1.2.5, and that works, but it is not clear to me if somehow the interface had managed to repair itself at some point before I did that. And not sure what bug you found, but I am grateful for the quick response!
  11. I have added a bunch of leak sensors and motion sensors to my yolink hub and everything works as expected and updates in the Admin console. However, the Yolink Outlet gets added as a node, but doesn't update status in either direction. Any idea what is wrong? I did try removing and readding the device several times. Also restarted the node server and admin console. As I mentioned the other devices update correctly. PG3x Version 3.2.27 Status: Connected Frontend Version: 3.2.27 IoX Version: 5.8.4 Current Version: 1.2.3 This is the debug log when I manually turn the switch on and off 2024-10-25 16:43:04.049 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: on_message: {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:04.049 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: Message received and put in queue (size : 1) 2024-10-25 16:43:04.049 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: on_message: {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:04.049 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: Message received and put in queue (size : 1) 2024-10-25 16:43:04.049 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: Creating threads to handle the received messages 2024-10-25 16:43:04.049 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: Creating threads to handle the received messages 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: Received message - Q size=0 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: Received message - Q size=0 2024-10-25 16:43:04.050 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: 1 on_message threads starting 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: process_message : {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: process_message for d88b4c0100093b37: {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} yl-home/7f9440f690b24b919c0f5f4b752713c0/d88b4c0100093b37/report 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: porcessing report: {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface INFO udiYoOutletV2:updateStatus: udiYoOutlet updateStatus 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yolink_mqtt_classV3:updateCallbackStatus: Outlet - updateCallbackStatus : {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yolink_mqtt_classV3:updateStatusData: Outlet - updateStatusData : {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:04.050 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: 1 on_message threads starting 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: process_message : {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: process_message for d88b4c0100093b37: {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} yl-home/7f9440f690b24b919c0f5f4b752713c0/d88b4c0100093b37/report 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: porcessing report: {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface INFO udiYoOutletV2:updateStatus: udiYoOutlet updateStatus 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yolink_mqtt_classV3:updateCallbackStatus: Outlet - updateCallbackStatus : {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:04.050 Thread-265 (process_message) udi_interface DEBUG yolink_mqtt_classV3:updateStatusData: Outlet - updateStatusData : {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface INFO udiYoOutletV2:updateData: udiYoOutlet updateData - schedule 0 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface.node DEBUG node:setDriver: 8b4c0100093b37:Plug 1 No change in ST's value 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState :{'lastUpdTime': 1729888984014, 'lastMessage': {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'}, 'lastStateTime': 1729888984014, 'online': True, 'data': {'state': {'state': 'closed', 'power': 0, 'watt': 0, 'version': '0433', 'time': '2024-10-25T20:31:45.000Z', 'tz': 0, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}, 'delay': {'ch': 1, 'on': 0, 'off': 0}, 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}}, 'schedules': {'supportSeconds': True}}} 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface INFO udiYoOutletV2:updateData: udiYoOutlet updateData - schedule 0 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface.node DEBUG node:setDriver: 8b4c0100093b37:Plug 1 No change in ST's value 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState :{'lastUpdTime': 1729888984014, 'lastMessage': {'event': 'Outlet.StatusChange', 'time': 1729888984014, 'msgid': '1729888984013', 'data': {'state': 'closed', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'}, 'lastStateTime': 1729888984014, 'online': True, 'data': {'state': {'state': 'closed', 'power': 0, 'watt': 0, 'version': '0433', 'time': '2024-10-25T20:31:45.000Z', 'tz': 0, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}, 'delay': {'ch': 1, 'on': 0, 'off': 0}, 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}}, 'schedules': {'supportSeconds': True}}} 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState online 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState data {'state': {'state': 'closed', 'power': 0, 'watt': 0, 'version': '0433', 'time': '2024-10-25T20:31:45.000Z', 'tz': 0, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}, 'delay': {'ch': 1, 'on': 0, 'off': 0}, 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}}, 'schedules': {'supportSeconds': True}} 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState - return Unknown 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface.node DEBUG node:setDriver: 8b4c0100093b37:Plug 1 No change in GV20's value 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState online 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState data {'state': {'state': 'closed', 'power': 0, 'watt': 0, 'version': '0433', 'time': '2024-10-25T20:31:45.000Z', 'tz': 0, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -35, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}, 'delay': {'ch': 1, 'on': 0, 'off': 0}, 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}}, 'schedules': {'supportSeconds': True}} 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState - return Unknown 2024-10-25 16:43:04.051 Thread-265 (process_message) udi_interface.node DEBUG node:setDriver: 8b4c0100093b37:Plug 1 No change in GV20's value 2024-10-25 16:43:11.692 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: on_message: {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:11.692 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: Message received and put in queue (size : 1) 2024-10-25 16:43:11.692 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: on_message: {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:11.692 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: Message received and put in queue (size : 1) 2024-10-25 16:43:11.692 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: Creating threads to handle the received messages 2024-10-25 16:43:11.692 Thread-266 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: Received message - Q size=0 2024-10-25 16:43:11.692 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: 1 on_message threads starting 2024-10-25 16:43:11.692 Thread-266 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: process_message : {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: process_message for d88b4c0100093b37: {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} yl-home/7f9440f690b24b919c0f5f4b752713c0/d88b4c0100093b37/report 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: porcessing report: {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:11.692 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: Creating threads to handle the received messages 2024-10-25 16:43:11.692 Thread-266 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: Received message - Q size=0 2024-10-25 16:43:11.692 paho-mqtt-client-7f9440f690b24b919c0f5f4b752713c0 udi_interface DEBUG yoLink_init_V3:on_message: 1 on_message threads starting 2024-10-25 16:43:11.692 Thread-266 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: process_message : {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: process_message for d88b4c0100093b37: {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} yl-home/7f9440f690b24b919c0f5f4b752713c0/d88b4c0100093b37/report 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yoLink_init_V3:process_message: porcessing report: {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface INFO udiYoOutletV2:updateStatus: udiYoOutlet updateStatus 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface INFO udiYoOutletV2:updateStatus: udiYoOutlet updateStatus 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolink_mqtt_classV3:updateCallbackStatus: Outlet - updateCallbackStatus : {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolink_mqtt_classV3:updateStatusData: Outlet - updateStatusData : {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface INFO udiYoOutletV2:updateData: udiYoOutlet updateData - schedule 0 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface.node DEBUG node:setDriver: 8b4c0100093b37:Plug 1 No change in ST's value 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState :{'lastUpdTime': 1729888991656, 'lastMessage': {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'}, 'lastStateTime': 1729888991656, 'online': True, 'data': {'state': {'state': 'open', 'power': 0, 'watt': 0, 'version': '0433', 'time': '2024-10-25T20:31:45.000Z', 'tz': 0, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}, 'delay': {'ch': 1, 'on': 0, 'off': 0}, 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}}, 'schedules': {'supportSeconds': True}}} 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState online 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState data {'state': {'state': 'open', 'power': 0, 'watt': 0, 'version': '0433', 'time': '2024-10-25T20:31:45.000Z', 'tz': 0, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}, 'delay': {'ch': 1, 'on': 0, 'off': 0}, 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}}, 'schedules': {'supportSeconds': True}} 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolink_mqtt_classV3:updateCallbackStatus: Outlet - updateCallbackStatus : {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolink_mqtt_classV3:updateStatusData: Outlet - updateStatusData : {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'} 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface INFO udiYoOutletV2:updateData: udiYoOutlet updateData - schedule 0 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface.node DEBUG node:setDriver: 8b4c0100093b37:Plug 1 No change in ST's value 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState :{'lastUpdTime': 1729888991656, 'lastMessage': {'event': 'Outlet.StatusChange', 'time': 1729888991656, 'msgid': '1729888991656', 'data': {'state': 'open', 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}}, 'deviceId': 'd88b4c0100093b37'}, 'lastStateTime': 1729888991656, 'online': True, 'data': {'state': {'state': 'open', 'power': 0, 'watt': 0, 'version': '0433', 'time': '2024-10-25T20:31:45.000Z', 'tz': 0, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}, 'delay': {'ch': 1, 'on': 0, 'off': 0}, 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}}, 'schedules': {'supportSeconds': True}}} 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState online 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState data {'state': {'state': 'open', 'power': 0, 'watt': 0, 'version': '0433', 'time': '2024-10-25T20:31:45.000Z', 'tz': 0, 'loraInfo': {'netId': '010204', 'devNetType': 'C', 'signal': -40, 'gatewayId': 'd88b4c160305f2f4', 'gateways': 2}, 'delay': {'ch': 1, 'on': 0, 'off': 0}, 'alertType': {'overload': False, 'highLoad': False, 'lowLoad': False, 'highTemperature': False, 'remind': False}}, 'schedules': {'supportSeconds': True}} 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState - return Unknown 2024-10-25 16:43:11.694 Thread-266 (process_message) udi_interface.node DEBUG node:setDriver: 8b4c0100093b37:Plug 1 No change in GV20's value 2024-10-25 16:43:11.693 Thread-266 (process_message) udi_interface DEBUG yolinkOutletV2:getState: Outlet - getState - return Unknown 2024-10-25 16:43:11.694 Thread-266 (process_message) udi_interface.node DEBUG node:setDriver: 8b4c0100093b37:Plug 1 No change in GV20's value
  12. Just got into YoLink for their leak sensors and installed the plugin. Many thanks to Panda88 for supporting the plugin - works great! If you follow the configuration instructions, you need to generate a UAID and secret key in the YoLink mobile app and then enter it into the polyglot console. Unfortunately, YoLink does not have a web/desktop app, so you might start typing in the very long key by hand. After doing this, I suddenly realized that you can go into the YoLink app and tap on the copy icon next to the key and paste it into an email and send it to yourself and then copy and paste from the email to the console. I'm sure others have thought of this, but just passing it on. Maybe save someone a bunch of typing! Andy
  13. It the link is missing in the device, which it sounds like from the symptoms, doing a restore device as Techman suggests will fix the problem. If the issue was introduced when you did a restore to the PLM from the old PLM backup , you will likely need to repeat that step. That is the problem I had where the PLM was missing a lot of links.
  14. Insteon has acknowledged that they sometimes ship the device with the load assigned to the wrong button although they just use a generic statement. Here is the link from their webpage. Still no way to reassign to any button other than the top one by doing the reset. i3 Keypad Setup — Insteon IMPORTANT: We’ve discovered an issue where some i3 devices may have shipped with a configuration issue that impacts performance and reliability. To ensure best performance and reliability, factory reset before using.
  15. Hi, hoping to use this plugin with my Kasa EP25 devices. According to the Github info, it is the intent to support any devices in the python-kasa library. That library lists the EP25 but with an asterisk saying new devices need authentication. Do you plan to support that? Currently it just responds with ERROR Controller:_add_manual_devices: Unsupported device 192.168.3.118: Thanks, Andy
  16. Here is a link to a related post - no way so far.
  17. My approach is to create a folder called "random lights" and set the condition for that folder to a variable that gets set by a button on a scene controller so I can turn it on as I leave the house if I am going to be gone for a couple days. Then inside that folder there are a series of programs for each room I want to randomize - like Random Kitchen, Random Office, etc. I found it easier to just create a program for each room. Here is one example program that uses Repeat: Random Mudroom - [ID 0028][Parent 0023] If Time is Sunset + 30 minutes Then Repeat 5 times Wait 45 minutes (Random) Set 'Main Hallway' On 20% Wait 1 hour (Random) Set 'Main Hallway' Off Else - No Actions - (To add one, press 'Action')
  18. Jim, maybe a few more words about what you want you are trying to do in the big picture will generate some more suggestions. But I don't think you need eight programs - for example, I do this: Any zone faulted - [ID 0073][Parent 0071] If 'TC2 / Home-IA / Home- BASEMENT DO' Zone Status is Faulted Or 'TC2 / Home-IA / Home- BASEMENT WI' Zone Status is Faulted Or 'TC2 / Home-IA / Home- DEN WINDOW' Zone Status is Faulted Or 'TC2 / Home-IA / Home- EAST FAMILY' Zone Status is Faulted Or 'TC2 / Home-IA / Home- EAST KITCHE' Zone Status is Faulted Or 'TC2 / Home-IA / Home- EAST OFFICE' Zone Status is Faulted Or 'TC2 / Home-IA / Home- FOYER' Zone Status is Faulted Or 'TC2 / Home-IA / Home- FRONT DOOR' Zone Status is Faulted Or 'TC2 / Home-IA / Home- KITCHEN WIN' Zone Status is Faulted Or 'TC2 / Home-IA / Home- LAUNDRY GLA' Zone Status is Faulted Or 'TC2 / Home-IA / Home- LAUNDRY WIN' Zone Status is Faulted Or 'TC2 / Home-IA / Home- LIBRARY DOO' Zone Status is Faulted (... more zones removed ) Then $State_Faulted = 1 Else $State_Faulted = 0
  19. Have you looked at the universal devices mobile app? I think that fits what you are describing? Introducing UD Mobile for iOS - Universal Devices - News (universal-devices.com)
  20. Looks like I just got hit by this same bug - still shows panel status but no longer updating any of the zones 2024-02-14 16:52:51,798 Thread-2 udi_interface ERROR totalconnect-poly:discover: Discovery failed with error Missing element isSceneZones (GetPanelMetaDataAndFullStatusEx_V1.isSceneZones) Traceback (most recent call last):
  21. This post explains how to do what @paulbates suggests keeping two hubs in sync using variables and network resources
  22. I am assuming the network traffic was generated by the query all action updating the portal
  23. OK, I did this to myself. Michel set me on the right track when he told me I had created a program with an infinite loop. So, over the weekend I was updating my config and changed a bunch of devices. When going through the programs looking for places I had to change devices which no longer existed I looked at the Query All program and it had an error in the Then statement. I deleted that statement and put in Run Program - Query All - which just caused it to run itself. I should have put in: Set 'Barn EISY' Query So, I assume this is fixed and will close this thread. I don't know how the query all program got messed up originally but I know that I made it worse. Thanks, Michel. Andy
  24. Oh wow, traffic started again this morning at 3am - I am opening a ticket:
  25. Andy P replied to BUnger's topic in eisy
    You might want to get some help on what you find old school and cryptic from the people in this forum. But, to answer the specific question, I believe the EISY is worth more to be sold as an EISY than to try to repurpose. I come to this conclusion because of what @EWhite said about the BIOS but also, it is 8gb ram and 60gb storage costing $290 which I wouldn't want to run anything else on - although you could add a m2 nvme to that. But, you can get the Mele Quieter3q which is essentially the same box with 8gb of ram and twice the storage with windows installed for less than $200 on amazon. So, thinking find someone else who sees the value of the EISY if possible. Andy

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.