sanjoyg / dirigera_platform

HomeAssistant Integration for Dirigera Platform
MIT License
71 stars 8 forks source link

How to use Remote Controllers in HA? #23

Open eric14142004 opened 3 months ago

eric14142004 commented 3 months ago

With the newest version, all paired remotes appeared as sensor entities in HA, but only showing the battery info: image How does it really work? Are they being treated as HA events?

slajob commented 3 months ago

I'm currently working on it. So keep in touch 😎

sanjoyg commented 3 months ago

@slajob are you working on putting in a fix to expose isOn and lightLevel? Then I wont work on it

slajob commented 3 months ago

are you working on putting in a fix to expose isOn and lightLevel? Then I wont work on it

@sanjoyg Yes I'm working on exposing remotes (shortcut buttons) pushing action. But It can take more time because it's not native suported by Leggin/dirigera package and looking for some workaround. So still working with the highest priority because I need these functionalities in my system

sanjoyg commented 3 months ago

Cool! Can push to base lib, adding optional attributes to controllerattributes struct

On Thu, 28 Mar 2024 at 15:00, Sławomir Job @.***> wrote:

@slajob https://github.com/slajob are you working on putting in a fix to expose isOn and lightLevel? Then I wont work on it

Yes I'm working on exposing remotes (shortcut buttons) pushing action. But It can take more time because it's not native suported by Leggin/dirigera package. So still working with the highest priority because I need these functionalities in my system

— Reply to this email directly, view it on GitHub https://github.com/sanjoyg/dirigera_platform/issues/23#issuecomment-2024758881, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB2X3CVCFQE7BQYLXDPNTXTY2PIJBAVCNFSM6AAAAABFJX4PK6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRUG42TQOBYGE . You are receiving this because you commented.Message ID: @.***>

slajob commented 2 months ago

After few deep research probably there is no possibility to use shortcut buttons currently. I tested it out using just base lib in python and unfortunately the shortcut buttons is_on attribute is not changing when pushing shortcut button. I tested it out with old tradfri and new somrig button. The lack of support is also indicated by the fact that the buttons have three functions: one press, two presses and a long hold, and the is_on parameter is only one.

From base lib issue I got there is no possibility for now to receive shortcut buttons push without assigning them to scenes. So you have to create a scene with something dump to get that event. Source: https://github.com/Leggin/dirigera/issues/28

I also asked for issue in some api researcher: https://codeberg.org/argrento/dirigera/issues/1

@sanjoyg are you owing some shortcut buttons to try it by yourself?

sanjoyg commented 2 months ago

No I dont have the shortcut. Did you try dumping the events from the base library event listener api?

On Tue, 2 Apr 2024 at 00:21, Sławomir Job @.***> wrote:

After few deep research probably there is no possibility to use shortcut buttons currently. I tested it out using just base lib in python and unfortunately the shortcut buttons is_on attribute is not changing when pushing shortcut button. I tested it out with old tradfri and new somrig button. From base lib issue I got there is no possibility for now to receive shortcut buttons push without assigning them to scenes. So you have to create a scene with something dump to get that event. Source: Leggin/dirigera#28 https://github.com/Leggin/dirigera/issues/28

I also asked for issue in some api researcher: https://codeberg.org/argrento/dirigera/issues/1

@sanjoyg https://github.com/sanjoyg are you owing some shortcut buttons to try it by yourself?

— Reply to this email directly, view it on GitHub https://github.com/sanjoyg/dirigera_platform/issues/23#issuecomment-2030350922, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB2X3CVSAYREQ7NEFVZMWWTY3GUCPAVCNFSM6AAAAABFJX4PK6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZQGM2TAOJSGI . You are receiving this because you were mentioned.Message ID: @.***>

sanjoyg commented 2 months ago

@slajob I dont have a shortcut button, would you see using the following code if you are able to see any events coming up when the outlets are clicked

import dirigera from dirigera import Hub

ip= token=

hub = dirigera.Hub(token, ip)

import json

def on_message(ws: Any, message: str): print(message)

def on_error(ws: Any, message: str): print(message)

hub.create_event_listener( on_message=on_message, on_error=on_error )

slajob commented 2 months ago

@sanjoyg As I said in previous message i tried this code from base library using this event listener but it works ONLY when you have a shortcut connected with scene in Ikea Smart home app and there is a message printed where you can see its triggered by my scene "Stop frame speaker":

{"id":"10abbfd1-154e-44ad-baca-b82c1d44e4f8","time":"2024-04-02T18:09:59.362Z","specversion":"3.146.0","source":"urn:com:ikea:homesmart:iotc:rulesengine","type":"sceneUpdated","data":{"id":"12e08765-cbc8-4f32-8940-6f00da400933","info":{"name":"Stop frame speaker","icon":"scenes_clean_sparkles"},"type":"userScene","triggers":[{"id":"b63926a9-9933-440a-a107-293dfb853331","type":"app","triggeredAt":"2024-04-01T17:44:47.340Z","disabled":false},{"id":"0bcf91eb-93e1-41cf-9630-d32f30c34b9d","type":"controller","triggeredAt":"2024-04-02T18:09:59.362Z","disabled":false,"trigger":{"days":["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],"controllerType":"shortcutController","clickPattern":"singlePress","buttonIndex":0,"deviceId":"b55c75ec-829c-4623-a167-0b537569c9e2_1"}}],"actions":[],"commands":[],"createdAt":"2023-04-03T20:35:38.713Z","lastCompleted":"2024-04-02T18:02:10.502Z","lastTriggered":"2024-04-02T18:02:10.502Z","undoAllowedDuration":30,"lastUndo":"2024-04-01T17:44:47.352Z"}}
{"id":"775d55fe-0a90-4579-85dd-f2516984da6b","time":"2024-04-02T18:09:59.386Z","specversion":"3.146.0","source":"urn:com:ikea:homesmart:iotc:rulesengine","type":"sceneUpdated","data":{"id":"12e08765-cbc8-4f32-8940-6f00da400933","info":{"name":"Stop frame speaker","icon":"scenes_clean_sparkles"},"type":"userScene","triggers":[{"id":"b63926a9-9933-440a-a107-293dfb853331","type":"app","triggeredAt":"2024-04-01T17:44:47.340Z","disabled":false},{"id":"0bcf91eb-93e1-41cf-9630-d32f30c34b9d","type":"controller","triggeredAt":"2024-04-02T18:09:59.362Z","disabled":false,"trigger":{"days":["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],"controllerType":"shortcutController","clickPattern":"singlePress","buttonIndex":0,"deviceId":"b55c75ec-829c-4623-a167-0b537569c9e2_1"}}],"actions":[],"commands":[],"createdAt":"2023-04-03T20:35:38.713Z","lastCompleted":"2024-04-02T18:09:59.372Z","lastTriggered":"2024-04-02T18:09:59.372Z","undoAllowedDuration":30,"lastUndo":"2024-04-01T17:44:47.352Z"}}

When shortcut button is not connected to any scene, clicking shortcut button dont raise this event listener. Creating empty scenes could resolve that, but ikea smart home app don't allow creating empty scenes doing nothing.

Here in this thread you can see a owner of this base lib said there is not possibility to handle empty shortcut buttons

sanjoyg commented 2 months ago

@slajob 1.1.0 of the base library was released, it has the ability to create_scene , will that help with empty scene?

slajob commented 2 months ago

@sanjoyg Yess, I requested for that feature and started working

vulcanoid1975 commented 2 months ago

Will this help in any way?

Data pulled out of MQTT via Zigbee2MQTT:

Device info SOMRIG shortcut button (E2213) by IKEA

Entities Kitchen Button Ikea Battery (sensor.kitchen_button_ikea_battery) MQTT discovery data: Topic: homeassistant/sensor/0x6c5cb1fffe1421bf/battery/config Payload Subscribed topics: zigbee2mqtt/bridge/state 1 most recently received message(s) Received 4:23:43 PM QoS: 0, Retained Payload: state: online zigbee2mqtt/Kitchen Button Ikea 1 most recently received message(s) Received 4:24:21 PM QoS: 0 Payload: action: null battery: 100 linkquality: 96 update: installed_version: 16777248 latest_version: 16777248 state: idle update_available: null Transmitted messages: Kitchen Button Ikea Action (sensor.kitchen_button_ikea_action) MQTT discovery data: Topic: homeassistant/sensor/0x6c5cb1fffe1421bf/action/config Payload availability:

I have the following shortcut buttons:

TRADFRI open/close remote image

RODRET Dimmer image

SOMRIG shortcut button image

I can try and help testing ...

sanjoyg commented 2 months ago

Thank you for this, but cant assume zigbeemqtt integration for all installations. @slajob is already working on a mechanism to enable these buttons

jfilipelcarvalho commented 2 months ago

I have a Styrbar and a Somrig buttons. Would be great to see that work without any workaround 😁💪

Unseen88 commented 1 month ago

amazing work, the remotes will be a great functionality through HA even if have to go through a work around

yuri609 commented 1 month ago

@slajob Hello, I have few Styrbar remotes (E2002), some Tradfri On/Off switches (E1743). Can you please confirm that these models will be also supported? Thank you so much for your effort and great job!

sanjoyg commented 1 month ago

Can ou please get the json dump please.

yuri609 commented 1 month ago

Can ou please get the json dump please.

2024-05-21 19:38:08.974 INFO (SyncWorker_20) [custom_components.dirigera_platform] === START Devices JSON === 2024-05-21 19:38:08.974 INFO (SyncWorker_20) [custom_components.dirigera_platform] -------------- 2024-05-21 19:38:10.204 INFO (SyncWorker_20) [custom_components.dirigera_platform] [{'id': 'a21e9ef8-762d-4349-9f6a-3a596fd9680a_1', 'type': 'sensor', 'deviceType': 'environmentSensor', 'createdAt': '2024-05-20T15:19:46.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T19:36:25.000Z', 'attributes': {'customName': 'Bathroom temp sensor', 'model': 'Temperature/Humidity Sensor', 'manufacturer': 'SONOFF', 'firmwareVersion': '', 'hardwareVersion': '', 'serialNumber': '00124B0025394BA4', 'productCode': 'SNZB-02', 'currentTemperature': 23.709999084472656, 'currentRH': 73, 'permittingJoin': False}, 'capabilities': {'canSend': [], 'canReceive': ['customName']}, 'room': {'id': 'cb0cc864-07df-454d-9577-c239437bb537', 'name': 'Koupelna', 'color': 'ikea_yellow_no_31', 'icon': 'rooms_bathtub'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': '8027239f-e4de-4a38-a1d3-bcb7d5ce5070_1', 'relationId': '8027239f-e4de-4a38-a1d3-bcb7d5ce5070', 'type': 'gateway', 'deviceType': 'gateway', 'createdAt': '2024-03-08T06:39:04.188Z', 'isReachable': True, 'lastSeen': '2024-05-21T17:38:00.666Z', 'attributes': {'customName': 'Domov', 'model': 'DIRIGERA Hub for smart products', 'manufacturer': 'IKEA of Sweden', 'firmwareVersion': '2.556.0', 'hardwareVersion': 'P2.5', 'serialNumber': '8027239f-e4de-4a38-a1d3-bcb7d5ce5070', 'identifyStarted': '2000-01-01T00:00:00.000Z', 'identifyPeriod': 0, 'otaStatus': 'upToDate', 'otaState': 'readyToCheck', 'otaProgress': 0, 'otaPolicy': 'autoDownload', 'otaScheduleStart': '00:00', 'otaScheduleEnd': '00:00', 'permittingJoin': False, 'backendConnected': True, 'backendConnectionPersistent': True, 'backendOnboardingComplete': True, 'backendRegion': 'eu-central-1', 'backendCountryCode': 'CZ', 'userConsents': [{'name': 'analytics', 'value': 'enabled'}, {'name': 'diagnostics', 'value': 'enabled'}], 'logLevel': 3, 'coredump': False, 'timezone': 'Europe/Prague', 'nextSunSet': '2024-05-21T18:55:00.000Z', 'nextSunRise': '2024-05-22T03:08:00.000Z', 'homestate': 'home', 'countryCode': 'XZ', 'coordinates': {'latitude': 50.59167335305864, 'longitude': 13.835090060341294, 'accuracy': -1}, 'isOn': False}, 'capabilities': {'canSend': [], 'canReceive': ['customName', 'permittingJoin', 'userConsents', 'logLevel', 'time', 'timezone', 'countryCode', 'coordinates']}, 'deviceSet': [], 'remoteLinks': []}, {'id': '426e4cc1-bcf3-4f24-bd39-75a6c2bb5663_1', 'type': 'sensor', 'deviceType': 'environmentSensor', 'createdAt': '2024-05-20T17:27:00.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T19:35:48.000Z', 'attributes': {'customName': 'Hall temp sensor', 'model': 'Temperature/Humidity Sensor', 'manufacturer': 'SONOFF', 'firmwareVersion': '', 'hardwareVersion': '', 'serialNumber': '00124B00291FEB5F', 'productCode': 'SNZB-02', 'currentTemperature': 22.280000686645508, 'currentRH': 61, 'permittingJoin': False}, 'capabilities': {'canSend': [], 'canReceive': ['customName']}, 'room': {'id': 'b29f6476-3176-4035-9ddf-233fa2f384f1', 'name': 'Chodba', 'color': 'pantone_16_0940_tcx', 'icon': 'rooms_coat_hanger'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': '0f391aa0-11ec-472b-a3cd-3f9a169b0a40_1', 'type': 'controller', 'deviceType': 'soundController', 'createdAt': '2024-05-20T15:08:37.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T14:32:48.000Z', 'attributes': {'customName': 'Office Symfonisk remote', 'model': 'SYMFONISK Sound Controller', 'manufacturer': 'IKEA of Sweden', 'firmwareVersion': '24.4.5', 'hardwareVersion': '1', 'serialNumber': '943469FFFE5CBFDE', 'productCode': 'E1744', 'batteryPercentage': 75, 'isOn': False, 'lightLevel': 1, 'permittingJoin': False, 'otaStatus': 'upToDate', 'otaState': 'readyToCheck', 'otaProgress': 0, 'otaPolicy': 'autoUpdate', 'otaScheduleStart': '00:00', 'otaScheduleEnd': '00:00'}, 'capabilities': {'canSend': ['isOn', 'lightLevel'], 'canReceive': ['customName']}, 'room': {'id': 'd0f42d15-bf83-4537-a9fd-bd6e2311e734', 'name': 'Ložnice\xa0', 'color': 'ikea_yellow_no_24', 'icon': 'rooms_bed'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': '87725d07-0089-4ffa-8050-ce42f79b0860_1', 'type': 'controller', 'deviceType': 'lightController', 'createdAt': '2024-05-20T14:59:09.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T17:49:40.000Z', 'attributes': {'customName': 'Office Styrbar remote', 'model': 'Remote Control N2', 'manufacturer': 'IKEA of Sweden', 'firmwareVersion': '2.4.11', 'hardwareVersion': '1', 'serialNumber': '0C4314FFFEC56B45', 'productCode': 'E2001', 'batteryPercentage': 100, 'isOn': False, 'lightLevel': 1, 'permittingJoin': False, 'otaStatus': 'upToDate', 'otaState': 'readyToCheck', 'otaProgress': 0, 'otaPolicy': 'autoUpdate', 'otaScheduleStart': '00:00', 'otaScheduleEnd': '00:00', 'circadianPresets': []}, 'capabilities': {'canSend': ['isOn', 'lightLevel'], 'canReceive': ['customName']}, 'room': {'id': '171caf1a-699b-4c62-ba63-0255ecbbbccf', 'name': 'Pracovna', 'color': 'ikea_yellow_no_28', 'icon': 'rooms_office_chair'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': 'b7ee70a0-3c10-4033-8453-a260c5910c37_1', 'type': 'sensor', 'deviceType': 'environmentSensor', 'createdAt': '2024-05-20T17:33:48.000Z', 'isReachable': False, 'lastSeen': '2024-05-21T16:32:47.000Z', 'attributes': {'customName': 'Kitchen temp sensor', 'model': 'Temperature/Humidity Sensor', 'manufacturer': 'SONOFF', 'firmwareVersion': '', 'hardwareVersion': '', 'serialNumber': '00124B00290FB51B', 'productCode': 'SNZB-02', 'currentTemperature': 21.979999542236328, 'currentRH': 0, 'permittingJoin': False}, 'capabilities': {'canSend': [], 'canReceive': ['customName']}, 'room': {'id': 'fe35b4c1-a4c7-4bdf-83a1-f892b7b43367', 'name': 'Kuchyně', 'color': 'ikea_blue_no_58', 'icon': 'rooms_kitchen'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': 'ca0dc5c0-c966-4b81-86b8-30a7ee03a843_1', 'type': 'speaker', 'deviceType': 'speaker', 'createdAt': '2024-05-20T10:40:31.487Z', 'isReachable': True, 'lastSeen': '2024-05-20T13:15:44.494Z', 'attributes': {'customName': 'Bedroom', 'model': 'SYMFONISK Bookshelf S21', 'manufacturer': 'Sonos, Inc.', 'firmwareVersion': '79.0-52294', 'hardwareVersion': '1.20.3.3-2.0', 'serialNumber': '34-7E-5C-38-2C-28:B', 'productCode': 'S21', 'identifyStarted': '2024-05-20T10:40:31.487Z', 'identifyPeriod': 0, 'playback': 'playbackIdle', 'playbackLastChangedTimestamp': '2024-05-20T13:15:44.494Z', 'playbackAudio': {'serviceType': 'sonos', 'providerType': 'Sonos Radio', 'playlist': {'id': 'eyJhY2NvdW50VHlwZSI6InNvbm9zIiwiY29udGVudFR5cGUiOiJjb250YWluZXIiLCJjb250ZW50Ijp7ImNvbnRhaW5lciI6eyJhY2NvdW50SWQiOiJzbl8xIiwib2JqZWN0SWQiOiJ0dW5laW46NDU2MSIsInNlcnZpY2VJZCI6IjMwMyIsInR5cGUiOiJzdGF0aW9uIn19fQ==', 'title': 'Radio Kiss'}}, 'playbackPosition': {'position': 0, 'timestamp': '2024-05-20T13:15:44.494Z'}, 'playbackAvailableActions': {'crossfade': False, 'pause': False, 'repeat': ['off'], 'seek': False, 'shuffle': False, 'playbackNext': False, 'playbackPrev': False}, 'playbackModes': {'crossfade': False, 'repeat': 'off', 'shuffle': False}, 'volume': 11, 'isMuted': False, 'audioGroup': '3c580627-580a-413d-abe0-6afafa2e3991'}, 'capabilities': {'canSend': [], 'canReceive': ['playback', 'playbackAudio', 'volume', 'isMuted']}, 'room': {'id': 'd0f42d15-bf83-4537-a9fd-bd6e2311e734', 'name': 'Ložnice\xa0', 'color': 'ikea_yellow_no_24', 'icon': 'rooms_bed'}, 'deviceSet': [], 'remoteLinks': ['0f391aa0-11ec-472b-a3cd-3f9a169b0a40_1'], 'isHidden': False}, {'id': '757307b9-cbe9-4bf1-9c61-2f79dad058e2_1', 'type': 'controller', 'deviceType': 'soundController', 'createdAt': '2024-05-20T15:15:51.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T16:35:33.000Z', 'attributes': {'customName': 'Bathroom Symfonisk remote', 'model': 'SYMFONISK Sound Controller', 'manufacturer': 'IKEA of Sweden', 'firmwareVersion': '24.4.5', 'hardwareVersion': '1', 'serialNumber': '943469FFFE75C561', 'productCode': 'E1744', 'batteryPercentage': 1, 'isOn': False, 'lightLevel': 1, 'permittingJoin': False, 'otaStatus': 'upToDate', 'otaState': 'readyToCheck', 'otaProgress': 0, 'otaPolicy': 'autoUpdate', 'otaScheduleStart': '00:00', 'otaScheduleEnd': '00:00'}, 'capabilities': {'canSend': ['isOn', 'lightLevel'], 'canReceive': ['customName']}, 'room': {'id': 'cb0cc864-07df-454d-9577-c239437bb537', 'name': 'Koupelna', 'color': 'ikea_yellow_no_31', 'icon': 'rooms_bathtub'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': 'aa4bbdf1-931e-49bb-8cf9-726038b307d3_1', 'type': 'sensor', 'deviceType': 'environmentSensor', 'createdAt': '2024-05-20T13:16:01.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T19:31:35.000Z', 'attributes': {'customName': 'Bedroom Temp sensor', 'model': 'Temperature/Humidity Sensor', 'manufacturer': 'SONOFF', 'firmwareVersion': '', 'hardwareVersion': '', 'serialNumber': '00124B002543B50A', 'productCode': 'SNZB-02', 'currentTemperature': 20.950000762939453, 'currentRH': 70, 'permittingJoin': False}, 'capabilities': {'canSend': [], 'canReceive': ['customName']}, 'room': {'id': '171caf1a-699b-4c62-ba63-0255ecbbbccf', 'name': 'Pracovna', 'color': 'ikea_yellow_no_28', 'icon': 'rooms_office_chair'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': '5646d068-683d-4301-bab0-aa73758350ac_1', 'type': 'speaker', 'deviceType': 'speaker', 'createdAt': '2024-05-20T10:40:30.940Z', 'isReachable': True, 'lastSeen': '2024-05-20T13:16:18.256Z', 'attributes': {'customName': 'Bathroom', 'model': 'SYMFONISK Bookshelf S21', 'manufacturer': 'Sonos, Inc.', 'firmwareVersion': '79.0-52294', 'hardwareVersion': '1.20.3.3-2.0', 'serialNumber': '54-2A-1B-64-9E-08:4', 'productCode': 'S21', 'identifyStarted': '2024-05-20T10:40:30.940Z', 'identifyPeriod': 0, 'playback': 'playbackPaused', 'playbackLastChangedTimestamp': '2024-05-20T10:40:30.940Z', 'playbackAudio': {}, 'playbackPosition': {'position': 0, 'timestamp': '2024-05-20T10:40:29.826Z'}, 'playbackAvailableActions': {'crossfade': False, 'pause': False, 'repeat': ['off'], 'seek': False, 'shuffle': False, 'playbackNext': False, 'playbackPrev': False}, 'playbackModes': {'crossfade': False, 'repeat': 'off', 'shuffle': False}, 'volume': 0, 'isMuted': True, 'audioGroup': '08c02da0-c7f7-43dd-9404-a6c0b3212710'}, 'capabilities': {'canSend': [], 'canReceive': ['playback', 'playbackAudio', 'volume', 'isMuted']}, 'room': {'id': 'cb0cc864-07df-454d-9577-c239437bb537', 'name': 'Koupelna', 'color': 'ikea_yellow_no_31', 'icon': 'rooms_bathtub'}, 'deviceSet': [], 'remoteLinks': ['757307b9-cbe9-4bf1-9c61-2f79dad058e2_1'], 'isHidden': False}, {'id': '7fddfe10-24c8-43b0-82c1-9afbf074ae0c_1', 'type': 'repeater', 'deviceType': 'repeater', 'createdAt': '2024-05-20T13:43:52.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T16:33:10.000Z', 'attributes': {'customName': 'Signal repeater', 'model': 'TRADFRI Signal Repeater', 'manufacturer': 'IKEA of Sweden', 'firmwareVersion': '2.3.086', 'hardwareVersion': '1', 'serialNumber': '70AC08FFFEB85433', 'productCode': 'E1746', 'identifyStarted': '2000-01-01T00:00:00.000Z', 'identifyPeriod': 0, 'permittingJoin': False, 'otaStatus': 'upToDate', 'otaState': 'readyToCheck', 'otaProgress': 0, 'otaPolicy': 'autoUpdate', 'otaScheduleStart': '00:00', 'otaScheduleEnd': '00:00'}, 'capabilities': {'canSend': [], 'canReceive': ['customName']}, 'room': {'id': '771767fc-ad61-4c22-9189-60ab3e41a0a9', 'name': 'Dětský pokoj', 'color': 'ikea_orange_no_11', 'icon': 'rooms_play_area'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': 'e792f52a-cf3c-4fd4-a827-e0b7a3b9983d_1', 'type': 'sensor', 'deviceType': 'environmentSensor', 'createdAt': '2024-05-20T17:34:44.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T19:15:46.000Z', 'attributes': {'customName': 'Living Room temp sensor', 'model': 'Temperature/Humidity Sensor', 'manufacturer': 'SONOFF', 'firmwareVersion': '', 'hardwareVersion': '', 'serialNumber': '00124B00290F79CA', 'productCode': 'SNZB-02', 'currentTemperature': 23.549999237060547, 'currentRH': 61, 'permittingJoin': False}, 'capabilities': {'canSend': [], 'canReceive': ['customName']}, 'room': {'id': 'e95da93f-3139-4fd5-b187-b26d7835f79f', 'name': 'Obývací pokoj', 'color': 'ikea_green_no_65', 'icon': 'rooms_sofa'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': 'cded7b04-d687-4c1e-8048-56481a89e352_1', 'type': 'controller', 'deviceType': 'shortcutController', 'createdAt': '2024-05-20T15:25:58.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T19:24:30.000Z', 'attributes': {'customName': 'Hall shortcut button', 'model': 'TRADFRI SHORTCUT Button', 'manufacturer': 'IKEA of Sweden', 'firmwareVersion': '24.4.6', 'hardwareVersion': '1', 'serialNumber': 'F082C0FFFE2E2C21', 'productCode': 'E1812', 'batteryPercentage': 20, 'isOn': False, 'lightLevel': 1, 'permittingJoin': False, 'otaStatus': 'upToDate', 'otaState': 'readyToCheck', 'otaProgress': 0, 'otaPolicy': 'autoUpdate', 'otaScheduleStart': '00:00', 'otaScheduleEnd': '00:00'}, 'capabilities': {'canSend': ['singlePress', 'doublePress', 'longPress'], 'canReceive': ['customName']}, 'room': {'id': 'b29f6476-3176-4035-9ddf-233fa2f384f1', 'name': 'Chodba', 'color': 'pantone_16_0940_tcx', 'icon': 'rooms_coat_hanger'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': 'e08c299f-55a9-4199-b6fb-7b2299ca588f_1', 'type': 'sensor', 'deviceType': 'motionSensor', 'createdAt': '2024-05-20T14:43:42.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T19:32:30.000Z', 'attributes': {'customName': 'Office motion sensor', 'model': 'TRADFRI motion sensor', 'manufacturer': 'IKEA of Sweden', 'firmwareVersion': '24.4.5', 'hardwareVersion': '1', 'serialNumber': '3425B4FFFE2E5D9A', 'productCode': 'E1745', 'batteryPercentage': 65, 'isOn': False, 'lightLevel': 1, 'permittingJoin': False, 'isDetected': False, 'otaStatus': 'upToDate', 'otaState': 'readyToCheck', 'otaProgress': 0, 'otaPolicy': 'autoUpdate', 'otaScheduleStart': '00:00', 'otaScheduleEnd': '00:00', 'sensorConfig': {'scheduleOn': False, 'onDuration': 180}, 'circadianPresets': []}, 'capabilities': {'canSend': ['isOn', 'lightLevel'], 'canReceive': ['customName']}, 'room': {'id': '171caf1a-699b-4c62-ba63-0255ecbbbccf', 'name': 'Pracovna', 'color': 'ikea_yellow_no_28', 'icon': 'rooms_office_chair'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': 'b741f34a-bf6a-4f44-b21b-aac202e92acd_1', 'type': 'sensor', 'deviceType': 'environmentSensor', 'createdAt': '2024-05-20T15:21:12.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T19:37:12.000Z', 'attributes': {'customName': 'Kids Room temp sensor', 'model': 'Temperature/Humidity Sensor', 'manufacturer': 'SONOFF', 'firmwareVersion': '', 'hardwareVersion': '', 'serialNumber': '00124B00290F7C95', 'productCode': 'SNZB-02', 'currentTemperature': 22.049999237060547, 'currentRH': 66, 'permittingJoin': False}, 'capabilities': {'canSend': [], 'canReceive': ['customName']}, 'room': {'id': '771767fc-ad61-4c22-9189-60ab3e41a0a9', 'name': 'Dětský pokoj', 'color': 'ikea_orange_no_11', 'icon': 'rooms_play_area'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}, {'id': 'd7198534-d7ae-4ed8-8274-8c4e2e7ba3ea_1', 'type': 'speaker', 'deviceType': 'speaker', 'createdAt': '2024-05-20T10:40:31.236Z', 'isReachable': True, 'lastSeen': '2024-05-21T17:28:42.363Z', 'attributes': {'customName': 'TV Room', 'model': 'Sonos Beam S31 ColorWhite', 'manufacturer': 'Sonos, Inc.', 'firmwareVersion': '79.0-52294', 'hardwareVersion': '1.35.1.7-2.1', 'serialNumber': '54-2A-1B-94-29-2E:7', 'productCode': 'S31White', 'identifyStarted': '2024-05-20T10:40:31.236Z', 'identifyPeriod': 0, 'playback': 'playbackPlaying', 'playbackLastChangedTimestamp': '2024-05-21T14:21:22.984Z', 'playbackAudio': {'serviceType': 'sonos', 'providerType': 'linein.homeTheater.hdmi', 'playlist': {'id': 'eyJhY2NvdW50VHlwZSI6InNvbm9zIiwiY29udGVudFR5cGUiOiJjb250YWluZXIiLCJjb250ZW50Ijp7ImNvbnRhaW5lciI6eyJhY2NvdW50SWQiOm51bGwsIm9iamVjdElkIjoiaG9tZVRoZWF0ZXItaW5wdXQiLCJzZXJ2aWNlSWQiOm51bGwsInR5cGUiOiJsaW5laW4uaG9tZVRoZWF0ZXIuaGRtaSJ9fX0=', 'title': 'TV Audio'}}, 'playbackPosition': {'position': 0, 'timestamp': '2024-05-21T14:21:22.984Z'}, 'playbackAvailableActions': {'crossfade': False, 'pause': False, 'repeat': ['off'], 'seek': False, 'shuffle': False, 'playbackNext': False, 'playbackPrev': False}, 'playbackModes': {'crossfade': False, 'repeat': 'off', 'shuffle': False}, 'volume': 8, 'isMuted': False, 'audioGroup': '63031a4a-923e-4931-8a44-7e6b2cb99f7b'}, 'capabilities': {'canSend': [], 'canReceive': ['playback', 'playbackAudio', 'volume', 'isMuted']}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': True}, {'id': '0c8cec69-141e-47fd-ac97-af5b269d2fcd_1', 'type': 'controller', 'deviceType': 'lightController', 'createdAt': '2024-05-21T19:34:38.000Z', 'isReachable': True, 'lastSeen': '2024-05-21T19:37:11.000Z', 'attributes': {'customName': 'Office On/Off switch', 'firmwareVersion': '24.4.6', 'hardwareVersion': '1', 'manufacturer': 'IKEA of Sweden', 'model': 'TRADFRI on/off switch', 'productCode': 'E1743', 'serialNumber': '70AC08FFFE94B220', 'batteryPercentage': 40, 'isOn': False, 'lightLevel': 1, 'permittingJoin': False, 'otaPolicy': 'autoUpdate', 'otaProgress': 0, 'otaScheduleEnd': '00:00', 'otaScheduleStart': '00:00', 'otaState': 'readyToCheck', 'otaStatus': 'upToDate', 'circadianPresets': []}, 'capabilities': {'canSend': ['isOn', 'lightLevel', 'blindsState'], 'canReceive': ['customName']}, 'room': {'id': '171caf1a-699b-4c62-ba63-0255ecbbbccf', 'name': 'Pracovna', 'color': 'ikea_yellow_no_28', 'icon': 'rooms_office_chair'}, 'deviceSet': [], 'remoteLinks': [], 'isHidden': False}] 2024-05-21 19:38:10.205 INFO (SyncWorker_20) [custom_components.dirigera_platform] -------------- 2024-05-21 19:38:10.205 INFO (SyncWorker_20) [custom_components.dirigera_platform] === END Devices JSON ===