diff --git a/tests/components/overkiz/__init__.py b/tests/components/overkiz/__init__.py index 1f0ecef24444..dfc6209c8a49 100644 --- a/tests/components/overkiz/__init__.py +++ b/tests/components/overkiz/__init__.py @@ -1,14 +1,16 @@ -"""Tests for the overkiz component.""" +"""Tests for the Overkiz component.""" import humps from pyoverkiz.models import Setup +from homeassistant.components.overkiz.const import DOMAIN + from tests.common import load_json_object_fixture +DEFAULT_SETUP_FIXTURE = "setup/cloud_somfy_tahoma_switch_europe.json" -def load_setup_fixture( - fixture: str = "overkiz/setup/setup_tahoma_switch.json", -) -> Setup: + +def load_setup_fixture(fixture: str = DEFAULT_SETUP_FIXTURE) -> Setup: """Return setup from fixture.""" - setup_json = load_json_object_fixture(fixture) + setup_json = load_json_object_fixture(fixture, DOMAIN) return Setup(**humps.decamelize(setup_json)) diff --git a/tests/components/overkiz/conftest.py b/tests/components/overkiz/conftest.py index 151d0719ddbc..a18aff6bd7e1 100644 --- a/tests/components/overkiz/conftest.py +++ b/tests/components/overkiz/conftest.py @@ -1,19 +1,92 @@ """Configuration for overkiz tests.""" -from collections.abc import Generator -from unittest.mock import AsyncMock, Mock, patch +from collections.abc import Awaitable, Callable, Generator +from dataclasses import dataclass, field +from unittest.mock import AsyncMock, patch +from pyoverkiz.client import OverkizClient +from pyoverkiz.enums import APIType +from pyoverkiz.models import Event, OverkizServer, Setup import pytest from homeassistant.components.overkiz.const import DOMAIN from homeassistant.core import HomeAssistant -from . import load_setup_fixture +from . import DEFAULT_SETUP_FIXTURE, load_setup_fixture from .test_config_flow import TEST_EMAIL, TEST_GATEWAY_ID, TEST_PASSWORD, TEST_SERVER from tests.common import MockConfigEntry -MOCK_SETUP_RESPONSE = Mock(devices=[], gateways=[]) +type SetupOverkizIntegration = Callable[..., Awaitable[MockConfigEntry]] + + +@dataclass +class MockOverkizClient(OverkizClient): + """Mock Overkiz client used by integration tests.""" + + setup: Setup = field(default_factory=load_setup_fixture) + event_batches: list[list[Event]] = field(default_factory=list) + server: OverkizServer = field( + default_factory=lambda: OverkizServer( + name="Somfy", + endpoint="https://example.test/enduser-mobile-web/enduserAPI", + manufacturer="Somfy", + configuration_url=None, + ) + ) + + def __post_init__(self) -> None: + """Initialize async client methods.""" + self._execution_id = 0 + self.api_type = APIType.CLOUD + self.login = AsyncMock(return_value=True) + self.get_setup = AsyncMock(side_effect=self._async_get_setup) + self.get_devices = AsyncMock(side_effect=self._async_get_devices) + self.get_scenarios = AsyncMock(return_value=[]) + self.fetch_events = AsyncMock(side_effect=self._async_fetch_events) + self.get_current_executions = AsyncMock(return_value=[]) + self.cancel_command = AsyncMock(return_value=None) + self.execute_command = AsyncMock(side_effect=self._async_execute_command) + + def set_setup_fixture(self, fixture: str) -> None: + """Load a setup fixture for the next integration setup.""" + self.setup = load_setup_fixture(fixture) + self.event_batches.clear() + self.reset_mock() + + def queue_events(self, *batches: list[Event]) -> None: + """Queue batches of events returned by fetch_events.""" + self.event_batches.extend(batches) + + def reset_mock(self) -> None: + """Reset call history while keeping configured behavior.""" + self.login.reset_mock() + self.get_setup.reset_mock() + self.get_devices.reset_mock() + self.get_scenarios.reset_mock() + self.fetch_events.reset_mock() + self.get_current_executions.reset_mock() + self.cancel_command.reset_mock() + self.execute_command.reset_mock() + + async def _async_get_setup(self) -> Setup: + """Return the configured setup.""" + return self.setup + + async def _async_get_devices(self, refresh: bool = False) -> list: + """Return the configured devices.""" + return self.setup.devices + + async def _async_fetch_events(self) -> list[Event]: + """Return queued event batches one refresh at a time.""" + if self.event_batches: + return self.event_batches.pop(0) + return [] + + async def _async_execute_command(self, *args, **kwargs) -> str: + """Return a unique execution id for each command.""" + self._execution_id += 1 + return f"exec-{self._execution_id}" @pytest.fixture @@ -37,21 +110,48 @@ def mock_setup_entry() -> Generator[AsyncMock]: @pytest.fixture -async def init_integration( +def mock_client() -> MockOverkizClient: + """Return a configurable mock Overkiz client.""" + return MockOverkizClient() + + +@pytest.fixture +def setup_overkiz_integration( hass: HomeAssistant, mock_config_entry: MockConfigEntry, + mock_client: MockOverkizClient, +) -> SetupOverkizIntegration: + """Return a helper to set up the Overkiz integration from a chosen fixture.""" + + async def _setup( + *, + fixture: str = DEFAULT_SETUP_FIXTURE, + ) -> MockConfigEntry: + mock_config_entry.add_to_hass(hass) + + mock_client.set_setup_fixture(fixture) + + with ( + patch( + "homeassistant.components.overkiz.create_cloud_client", + return_value=mock_client, + ), + patch( + "homeassistant.components.overkiz.create_local_client", + return_value=mock_client, + ), + ): + await hass.config_entries.async_setup(mock_config_entry.entry_id) + await hass.async_block_till_done() + + return mock_config_entry + + return _setup + + +@pytest.fixture +async def init_integration( + setup_overkiz_integration: SetupOverkizIntegration, ) -> MockConfigEntry: """Set up the Overkiz integration for testing.""" - mock_config_entry.add_to_hass(hass) - - with patch.multiple( - "pyoverkiz.client.OverkizClient", - login=AsyncMock(return_value=True), - get_setup=AsyncMock(return_value=load_setup_fixture()), - get_scenarios=AsyncMock(return_value=[]), - fetch_events=AsyncMock(return_value=[]), - ): - await hass.config_entries.async_setup(mock_config_entry.entry_id) - await hass.async_block_till_done() - - return mock_config_entry + return await setup_overkiz_integration() diff --git a/tests/components/overkiz/fixtures/setup/cloud_nexity_rail_din_europe.json b/tests/components/overkiz/fixtures/setup/cloud_nexity_rail_din_europe.json new file mode 100644 index 000000000000..8fa4fad8bd24 --- /dev/null +++ b/tests/components/overkiz/fixtures/setup/cloud_nexity_rail_din_europe.json @@ -0,0 +1,5558 @@ +{ + "creationTime": 1582277965000, + "lastUpdateTime": 1582277965000, + "id": "SETUP-1234-5678-1698", + "location": { + "creationTime": 1582277965000, + "lastUpdateTime": 1582277965000, + "city": "**", + "country": "**", + "postalCode": "**", + "addressLine1": "**", + "timezone": "Europe/Paris", + "longitude": "**", + "latitude": "**", + "twilightMode": 2, + "twilightAngle": "CIVIL", + "twilightCity": "paris", + "summerSolsticeDuskMinutes": 1290, + "winterSolsticeDuskMinutes": 990, + "twilightOffsetEnabled": false, + "dawnOffset": 0, + "duskOffset": 0, + "countryCode": "FR" + }, + "gateways": [ + { + "gatewayId": "1234-5678-1698", + "type": 74, + "subType": 0, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "alive": true, + "timeReliable": true, + "connectivity": { + "status": "OK", + "protocolVersion": "2021.4.4" + }, + "upToDate": true, + "updateStatus": "UP_TO_DATE", + "syncInProgress": false, + "mode": "ACTIVE", + "functions": "INTERNET_AUTHORIZATION,SCENARIO_DOWNLOAD,SCENARIO_AUTO_LAUNCHING,SCENARIO_TELECO_LAUNCHING,INTERNET_UPLOAD,INTERNET_UPDATE,TRIGGERS_SENSORS" + } + ], + "devices": [ + { + "creationTime": 1611818018000, + "lastUpdateTime": 1611818018000, + "label": "Bathroom Hub", + "deviceURL": "internal://1234-5678-1698/pod/0", + "shortcut": false, + "controllableName": "internal:PodMiniComponent", + "definition": { + "commands": [ + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "update", + "nparams": 0 + }, + { + "commandName": "setCountryCode", + "nparams": 1 + }, + { + "commandName": "activateCalendar", + "nparams": 0 + }, + { + "commandName": "deactivateCalendar", + "nparams": 0 + }, + { + "commandName": "refreshPodMode", + "nparams": 0 + }, + { + "commandName": "refreshUpdateStatus", + "nparams": 0 + }, + { + "commandName": "setCalendar", + "nparams": 1 + }, + { + "commandName": "setLightingLedPodMode", + "nparams": 1 + }, + { + "commandName": "setPodLedOff", + "nparams": 0 + }, + { + "commandName": "setPodLedOn", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["offline", "online"], + "qualifiedName": "core:ConnectivityState" + }, + { + "type": "DataState", + "qualifiedName": "core:CountryCodeState" + }, + { + "type": "DataState", + "qualifiedName": "core:LocalIPv4AddressState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": [ + "doublePress", + "longPress", + "simplePress", + "triplePress", + "veryLongPress" + ], + "qualifiedName": "internal:LastActionConfigButtonState" + }, + { + "type": "ContinuousState", + "qualifiedName": "internal:LightingLedPodModeState" + } + ], + "dataProperties": [], + "widgetName": "Pod", + "uiProfiles": ["UpdatableComponent"], + "uiClass": "Pod", + "qualifiedName": "internal:PodMiniComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Bathroom Hub" + }, + { + "name": "internal:LightingLedPodModeState", + "type": 2, + "value": 1.0 + }, + { + "name": "core:CountryCodeState", + "type": 3, + "value": "FR" + }, + { + "name": "core:LocalIPv4AddressState", + "type": 3, + "value": "192.168.1.11" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "Pod", + "type": 1, + "oid": "d20d0ef8-c912-453b-a8cb-d5e2b4cf58fd", + "uiClass": "Pod" + }, + { + "creationTime": 1621256516000, + "lastUpdateTime": 1621256516000, + "label": "Terrace Ceiling Light", + "deviceURL": "io://1234-5678-1698/11944017", + "shortcut": false, + "controllableName": "io:LightMicroModuleSomfyIOComponent", + "metadata": "{\"id\":\"50b1e33b-ca2b-4131-8e6c-ed369524326b\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "commandName": "onWithInternalTimer", + "nparams": 0 + }, + { + "commandName": "onWithTimer", + "nparams": 1 + }, + { + "commandName": "setInternalTimer", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setOnOff", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "setPictoValue", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["off", "on"], + "qualifiedName": "core:OnOffState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TimerState" + }, + { + "type": "DataState", + "qualifiedName": "io:PairedMicroModuleWithLowBatteryState" + }, + { + "type": "DiscreteState", + "values": ["onOffLight"], + "qualifiedName": "io:PictoState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "TimedOnOffLight", + "uiProfiles": [ + "StatefulSwitchableLight", + "StatefulSwitchable", + "Switchable" + ], + "uiClass": "Light", + "qualifiedName": "io:LightMicroModuleSomfyIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Terrace Ceiling Light" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:OnOffState", + "type": 3, + "value": "off" + }, + { + "name": "io:PictoState", + "type": 3, + "value": "onOffLight" + }, + { + "name": "core:TimerState", + "type": 1, + "value": 0 + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5141941B06" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "TimedOnOffLight", + "type": 1, + "oid": "b8b8c4fa-c332-460d-bb18-fca2ae640880", + "uiClass": "Light" + }, + { + "creationTime": 1628156909000, + "lastUpdateTime": 1628156909000, + "label": "Nursery Shutter", + "deviceURL": "io://1234-5678-1698/141613", + "shortcut": false, + "controllableName": "io:RollerShutterWithLowSpeedManagementIOComponent", + "metadata": "{\"id\":\"1c1f0ee1-b1c1-4636-9801-73f6027b7efe\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosureAndLinearSpeed", + "nparams": 2 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPositionAndLinearSpeed", + "nparams": 2 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutterWithLowSpeedManagement", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterWithLowSpeedManagementIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Nursery Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 0 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 85 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 0 + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5120725B13" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "PositionableRollerShutterWithLowSpeedManagement", + "type": 1, + "oid": "b90483b9-efd2-40e1-b195-766ceefdc06e", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1628156593000, + "lastUpdateTime": 1628156593000, + "label": "Garden Radiator", + "deviceURL": "io://1234-5678-1698/15702199#1", + "shortcut": false, + "controllableName": "io:HeatingValveIOComponent", + "metadata": "{\"id\":\"9ecae616-6ff8-4944-9887-a8dc5934c263\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setTimeProgramById", + "nparams": 2 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "exitDerogation", + "nparams": 0 + }, + { + "commandName": "setAllModeTemperatures", + "nparams": 4 + }, + { + "commandName": "setDerogation", + "nparams": 2 + }, + { + "commandName": "setValveSettings", + "nparams": 1 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:ActiveTimeProgramState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:BatteryLevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ComfortRoomTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:DerogatedTargetTemperatureState" + }, + { + "type": "DataState", + "qualifiedName": "core:DerogationEndDateTimeState" + }, + { + "type": "DataState", + "qualifiedName": "core:DerogationStartDateTimeState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:EcoTargetTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:FrostProtectionRoomTemperatureState" + }, + { + "type": "DataState", + "qualifiedName": "core:MaxSetpointState" + }, + { + "type": "DataState", + "qualifiedName": "core:MinSetpointState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedValveState" + }, + { + "type": "DiscreteState", + "values": ["active", "inactive"], + "qualifiedName": "core:OpenWindowDetectionActivationState" + }, + { + "type": "DiscreteState", + "values": [ + "antifreeze", + "auto", + "away", + "eco", + "frostprotection", + "manual", + "max", + "normal", + "off", + "on", + "prog", + "program", + "boost" + ], + "qualifiedName": "core:OperatingModeState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetRoomTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TemperatureOffsetConfigurationState" + }, + { + "type": "DataState", + "qualifiedName": "core:TimeProgram1State" + }, + { + "type": "DataState", + "qualifiedName": "core:TimeProgram2State" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:AwayModeTargetTemperatureState" + }, + { + "type": "DiscreteState", + "values": ["disabled", "enabled"], + "qualifiedName": "io:ByPassActivationState" + }, + { + "type": "DiscreteState", + "values": [ + "awayMode", + "comfort", + "eco", + "frostprotection", + "geofencingMode", + "manual", + "suddenDropMode" + ], + "qualifiedName": "io:CurrentHeatingModeState" + }, + { + "type": "DiscreteState", + "values": [ + "awayMode", + "comfort", + "eco", + "frostprotection", + "geofencingMode", + "manual", + "suddenDropMode" + ], + "qualifiedName": "io:DerogationHeatingModeState" + }, + { + "type": "DiscreteState", + "values": ["date", "furtherNotice", "nextMode"], + "qualifiedName": "io:DerogationTypeState" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:GeofencingModeTargetTemperatureState" + }, + { + "type": "DiscreteState", + "values": ["disabled", "enabled"], + "qualifiedName": "io:LockKeyActivationState" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:ManualModeTargetTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:OpenWindowDetectedTargetTemperatureState" + }, + { + "type": "DiscreteState", + "values": [ + "adjustment", + "finished", + "full_closed", + "full_open", + "pairing", + "reset" + ], + "qualifiedName": "io:ValveInstallationModeState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "ValveHeatingTemperatureInterface", + "uiProfiles": ["ThermostatTargetReader"], + "uiClass": "HeatingSystem", + "uiClassifiers": ["emitter"], + "qualifiedName": "io:HeatingValveIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Garden Radiator" + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:OpenClosedValveState", + "type": 3, + "value": "closed" + }, + { + "name": "core:OperatingModeState", + "type": 3, + "value": "manual" + }, + { + "name": "io:CurrentHeatingModeState", + "type": 3, + "value": "comfort" + }, + { + "name": "core:TargetRoomTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "core:TargetTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "io:DerogationTypeState", + "type": 3, + "value": "further_notice" + }, + { + "name": "io:DerogationHeatingModeState", + "type": 3, + "value": "comfort" + }, + { + "name": "core:DerogatedTargetTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "io:ManualModeTargetTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "core:DerogationStartDateTimeState", + "type": 5, + "value": 1642418415000 + }, + { + "name": "core:DerogationEndDateTimeState", + "type": 5, + "value": 1642418415000 + }, + { + "name": "io:ValveInstallationModeState", + "type": 3, + "value": "finished" + }, + { + "name": "core:BatteryLevelState", + "type": 2, + "value": 59.0 + }, + { + "name": "core:OpenWindowDetectionActivationState", + "type": 3, + "value": "active" + }, + { + "name": "io:LockKeyActivationState", + "type": 3, + "value": "disable" + }, + { + "name": "io:ByPassActivationState", + "type": 3, + "value": "disable" + }, + { + "name": "core:ActiveTimeProgramState", + "type": 3, + "value": "none" + }, + { + "name": "core:MaxSetpointState", + "type": 2, + "value": 26.0 + }, + { + "name": "core:MinSetpointState", + "type": 2, + "value": 5.0 + }, + { + "name": "core:TemperatureOffsetConfigurationState", + "type": 2, + "value": 0.0 + }, + { + "name": "core:ComfortRoomTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "io:AwayModeTargetTemperatureState", + "type": 2, + "value": 17.0 + }, + { + "name": "core:EcoTargetTemperatureState", + "type": 2, + "value": 19.0 + }, + { + "name": "io:GeofencingModeTargetTemperatureState", + "type": 2, + "value": 20.0 + }, + { + "name": "core:FrostProtectionRoomTemperatureState", + "type": 2, + "value": 8.0 + }, + { + "name": "io:OpenWindowDetectedTargetTemperatureState", + "type": 2, + "value": 8.0 + }, + { + "name": "core:TimeProgram1State", + "type": 11, + "value": { + "sunday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + } + } + }, + { + "name": "core:TimeProgram2State", + "type": 11, + "value": { + "sunday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + } + } + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "ValveHeatingTemperatureInterface", + "type": 1, + "oid": "2bd74a70-7e42-4bed-a903-822be8f96de9", + "uiClass": "HeatingSystem" + }, + { + "creationTime": 1628156593000, + "lastUpdateTime": 1628156593000, + "label": "Bathroom Temperature Sensor", + "deviceURL": "io://1234-5678-1698/15702199#2", + "shortcut": false, + "controllableName": "io:TemperatureIOSystemSensor", + "metadata": "{\"id\":\"fd8e1d6d-dcd4-4c4d-a3cf-5d5a2bb608a0\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TemperatureState" + } + ], + "dataProperties": [], + "widgetName": "TemperatureSensor", + "uiProfiles": ["Temperature"], + "uiClass": "TemperatureSensor", + "qualifiedName": "io:TemperatureIOSystemSensor", + "type": "SENSOR" + }, + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:TemperatureState", + "type": 2, + "value": 24.4 + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:MinSensedValue", + "type": 2, + "value": -273.15 + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5145198A12" + }, + { + "name": "core:MeasuredValueType", + "type": 3, + "value": "core:TemperatureInCelcius" + }, + { + "name": "core:MaxSensedValue", + "type": 1, + "value": 99 + }, + { + "name": "core:PowerSourceType", + "type": 3, + "value": "battery" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "TemperatureSensor", + "type": 2, + "oid": "50531da2-da92-4f3d-bf96-f624935369ea", + "uiClass": "TemperatureSensor" + }, + { + "creationTime": 1621256516000, + "lastUpdateTime": 1621256516000, + "label": "Study Ceiling Light", + "deviceURL": "io://1234-5678-1698/2867634", + "shortcut": false, + "controllableName": "io:LightMicroModuleSomfyIOComponent", + "metadata": "{\"id\":\"badd4da8-8b30-4cfa-bb1b-0e9f8de8d9ea\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "commandName": "onWithInternalTimer", + "nparams": 0 + }, + { + "commandName": "onWithTimer", + "nparams": 1 + }, + { + "commandName": "setInternalTimer", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setOnOff", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "setPictoValue", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["off", "on"], + "qualifiedName": "core:OnOffState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TimerState" + }, + { + "type": "DataState", + "qualifiedName": "io:PairedMicroModuleWithLowBatteryState" + }, + { + "type": "DiscreteState", + "values": ["onOffLight"], + "qualifiedName": "io:PictoState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "TimedOnOffLight", + "uiProfiles": [ + "StatefulSwitchableLight", + "StatefulSwitchable", + "Switchable" + ], + "uiClass": "Light", + "qualifiedName": "io:LightMicroModuleSomfyIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Study Ceiling Light" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:OnOffState", + "type": 3, + "value": "off" + }, + { + "name": "io:PictoState", + "type": 3, + "value": "onOffLight" + }, + { + "name": "core:TimerState", + "type": 1, + "value": 0 + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5141941B06" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "TimedOnOffLight", + "type": 1, + "oid": "bb998fde-006d-4fee-ab44-80baec579c70", + "uiClass": "Light" + }, + { + "creationTime": 1621256336000, + "lastUpdateTime": 1621256336000, + "label": "Living Room Protocol Gateway", + "deviceURL": "io://1234-5678-1698/3887120", + "shortcut": false, + "controllableName": "io:StackComponent", + "definition": { + "commands": [ + { + "commandName": "advancedSomfyDiscover", + "nparams": 1 + }, + { + "commandName": "discover1WayController", + "nparams": 2 + }, + { + "commandName": "discoverActuators", + "nparams": 1 + }, + { + "commandName": "discoverSensors", + "nparams": 1 + }, + { + "commandName": "discoverSomfyUnsetActuators", + "nparams": 0 + }, + { + "commandName": "joinNetwork", + "nparams": 0 + }, + { + "commandName": "resetNetworkSecurity", + "nparams": 0 + }, + { + "commandName": "shareNetwork", + "nparams": 0 + } + ], + "states": [], + "dataProperties": [], + "widgetName": "IOStack", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "io:StackComponent", + "type": "PROTOCOL_GATEWAY" + }, + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "IOStack", + "type": 5, + "oid": "8b492c94-4b8c-4262-bf55-c1570ee3fbe0", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1628156814000, + "lastUpdateTime": 1628156814000, + "label": "Hallway Shutter", + "deviceURL": "io://1234-5678-1698/4080031", + "shortcut": false, + "controllableName": "io:RollerShutterWithLowSpeedManagementIOComponent", + "metadata": "{\"id\":\"7f31ab54-f5d1-4458-b57f-1b9d5f35fa4b\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosureAndLinearSpeed", + "nparams": 2 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPositionAndLinearSpeed", + "nparams": 2 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutterWithLowSpeedManagement", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterWithLowSpeedManagementIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Hallway Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 0 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 85 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 0 + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5128571B00" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "PositionableRollerShutterWithLowSpeedManagement", + "type": 1, + "oid": "e892f47c-df85-4fa4-aadf-41d7908f1048", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1621256516000, + "lastUpdateTime": 1621256516000, + "label": "Garage Ceiling Light", + "deviceURL": "io://1234-5678-1698/82173", + "shortcut": false, + "controllableName": "io:LightMicroModuleSomfyIOComponent", + "metadata": "{\"id\":\"1a92e0de-56e7-42f8-8b57-5d48dd175758\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "commandName": "onWithInternalTimer", + "nparams": 0 + }, + { + "commandName": "onWithTimer", + "nparams": 1 + }, + { + "commandName": "setInternalTimer", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setOnOff", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "setPictoValue", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["off", "on"], + "qualifiedName": "core:OnOffState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TimerState" + }, + { + "type": "DataState", + "qualifiedName": "io:PairedMicroModuleWithLowBatteryState" + }, + { + "type": "DiscreteState", + "values": ["onOffLight"], + "qualifiedName": "io:PictoState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "TimedOnOffLight", + "uiProfiles": [ + "StatefulSwitchableLight", + "StatefulSwitchable", + "Switchable" + ], + "uiClass": "Light", + "qualifiedName": "io:LightMicroModuleSomfyIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Garage Ceiling Light" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:OnOffState", + "type": 3, + "value": "off" + }, + { + "name": "io:PictoState", + "type": 3, + "value": "onOffLight" + }, + { + "name": "core:TimerState", + "type": 1, + "value": 0 + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5141941B06" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "TimedOnOffLight", + "type": 1, + "oid": "86f95fbf-3a11-44b9-a111-5166fedd17d4", + "uiClass": "Light" + }, + { + "creationTime": 1621256411000, + "lastUpdateTime": 1621256411000, + "label": "Living Room Smoke Detector", + "deviceURL": "io://1234-5678-1698/8907539", + "shortcut": false, + "controllableName": "io:SomfySmokeIOSystemSensor", + "metadata": "{\"id\":\"86fb14f2-7b46-4653-ba97-7e580261d9b3\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "checkEventTrigger", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + }, + { + "eventBased": true, + "type": "DiscreteState", + "values": ["detected", "notDetected"], + "qualifiedName": "core:SmokeState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": ["low", "normal"], + "qualifiedName": "io:MaintenanceRadioPartBatteryState" + }, + { + "type": "DiscreteState", + "values": ["absence", "low", "normal"], + "qualifiedName": "io:MaintenanceSensorPartBatteryState" + }, + { + "type": "DiscreteState", + "values": ["clean", "dirty"], + "qualifiedName": "io:SensorRoomState" + } + ], + "dataProperties": [], + "widgetName": "SmokeSensor", + "uiProfiles": ["SmokeDetector"], + "uiClass": "SmokeSensor", + "qualifiedName": "io:SomfySmokeIOSystemSensor", + "type": "SENSOR" + }, + "states": [ + { + "name": "core:SmokeState", + "type": 3, + "value": "notDetected" + }, + { + "name": "io:MaintenanceRadioPartBatteryState", + "type": 3, + "value": "normal" + }, + { + "name": "io:MaintenanceSensorPartBatteryState", + "type": 3, + "value": "normal" + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5120379A14" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:PowerSourceType", + "type": 3, + "value": "battery" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "SmokeSensor", + "type": 2, + "oid": "6da2cb05-d6e4-4e79-ad6e-96b660b7b8b3", + "uiClass": "SmokeSensor" + }, + { + "creationTime": 1628155896000, + "lastUpdateTime": 1628155896000, + "label": "Study Radiator", + "deviceURL": "io://1234-5678-1698/9187218#1", + "shortcut": false, + "controllableName": "io:HeatingValveIOComponent", + "metadata": "{\"id\":\"f215693c-26a6-4e98-aa41-afa85d7596a7\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setTimeProgramById", + "nparams": 2 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "exitDerogation", + "nparams": 0 + }, + { + "commandName": "setAllModeTemperatures", + "nparams": 4 + }, + { + "commandName": "setDerogation", + "nparams": 2 + }, + { + "commandName": "setValveSettings", + "nparams": 1 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:ActiveTimeProgramState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:BatteryLevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ComfortRoomTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:DerogatedTargetTemperatureState" + }, + { + "type": "DataState", + "qualifiedName": "core:DerogationEndDateTimeState" + }, + { + "type": "DataState", + "qualifiedName": "core:DerogationStartDateTimeState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:EcoTargetTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:FrostProtectionRoomTemperatureState" + }, + { + "type": "DataState", + "qualifiedName": "core:MaxSetpointState" + }, + { + "type": "DataState", + "qualifiedName": "core:MinSetpointState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedValveState" + }, + { + "type": "DiscreteState", + "values": ["active", "inactive"], + "qualifiedName": "core:OpenWindowDetectionActivationState" + }, + { + "type": "DiscreteState", + "values": [ + "antifreeze", + "auto", + "away", + "eco", + "frostprotection", + "manual", + "max", + "normal", + "off", + "on", + "prog", + "program", + "boost" + ], + "qualifiedName": "core:OperatingModeState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetRoomTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TemperatureOffsetConfigurationState" + }, + { + "type": "DataState", + "qualifiedName": "core:TimeProgram1State" + }, + { + "type": "DataState", + "qualifiedName": "core:TimeProgram2State" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:AwayModeTargetTemperatureState" + }, + { + "type": "DiscreteState", + "values": ["disabled", "enabled"], + "qualifiedName": "io:ByPassActivationState" + }, + { + "type": "DiscreteState", + "values": [ + "awayMode", + "comfort", + "eco", + "frostprotection", + "geofencingMode", + "manual", + "suddenDropMode" + ], + "qualifiedName": "io:CurrentHeatingModeState" + }, + { + "type": "DiscreteState", + "values": [ + "awayMode", + "comfort", + "eco", + "frostprotection", + "geofencingMode", + "manual", + "suddenDropMode" + ], + "qualifiedName": "io:DerogationHeatingModeState" + }, + { + "type": "DiscreteState", + "values": ["date", "furtherNotice", "nextMode"], + "qualifiedName": "io:DerogationTypeState" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:GeofencingModeTargetTemperatureState" + }, + { + "type": "DiscreteState", + "values": ["disabled", "enabled"], + "qualifiedName": "io:LockKeyActivationState" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:ManualModeTargetTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:OpenWindowDetectedTargetTemperatureState" + }, + { + "type": "DiscreteState", + "values": [ + "adjustment", + "finished", + "full_closed", + "full_open", + "pairing", + "reset" + ], + "qualifiedName": "io:ValveInstallationModeState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "ValveHeatingTemperatureInterface", + "uiProfiles": ["ThermostatTargetReader"], + "uiClass": "HeatingSystem", + "uiClassifiers": ["emitter"], + "qualifiedName": "io:HeatingValveIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Study Radiator" + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:OpenClosedValveState", + "type": 3, + "value": "open" + }, + { + "name": "core:OperatingModeState", + "type": 3, + "value": "manual" + }, + { + "name": "io:CurrentHeatingModeState", + "type": 3, + "value": "comfort" + }, + { + "name": "core:TargetRoomTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "core:TargetTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "io:DerogationTypeState", + "type": 3, + "value": "further_notice" + }, + { + "name": "io:DerogationHeatingModeState", + "type": 3, + "value": "comfort" + }, + { + "name": "core:DerogatedTargetTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "io:ManualModeTargetTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "core:DerogationStartDateTimeState", + "type": 5, + "value": 1639636395000 + }, + { + "name": "core:DerogationEndDateTimeState", + "type": 5, + "value": 1639636395000 + }, + { + "name": "io:ValveInstallationModeState", + "type": 3, + "value": "finished" + }, + { + "name": "core:BatteryLevelState", + "type": 2, + "value": 66.0 + }, + { + "name": "core:OpenWindowDetectionActivationState", + "type": 3, + "value": "active" + }, + { + "name": "io:LockKeyActivationState", + "type": 3, + "value": "disable" + }, + { + "name": "io:ByPassActivationState", + "type": 3, + "value": "disable" + }, + { + "name": "core:ActiveTimeProgramState", + "type": 3, + "value": "none" + }, + { + "name": "core:MaxSetpointState", + "type": 2, + "value": 26.0 + }, + { + "name": "core:MinSetpointState", + "type": 2, + "value": 5.0 + }, + { + "name": "core:TemperatureOffsetConfigurationState", + "type": 2, + "value": 0.0 + }, + { + "name": "core:ComfortRoomTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "io:AwayModeTargetTemperatureState", + "type": 2, + "value": 17.0 + }, + { + "name": "core:EcoTargetTemperatureState", + "type": 2, + "value": 19.0 + }, + { + "name": "io:GeofencingModeTargetTemperatureState", + "type": 2, + "value": 20.0 + }, + { + "name": "core:FrostProtectionRoomTemperatureState", + "type": 2, + "value": 8.0 + }, + { + "name": "io:OpenWindowDetectedTargetTemperatureState", + "type": 2, + "value": 8.0 + }, + { + "name": "core:TimeProgram1State", + "type": 11, + "value": { + "sunday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + } + } + }, + { + "name": "core:TimeProgram2State", + "type": 11, + "value": { + "sunday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + } + } + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "ValveHeatingTemperatureInterface", + "type": 1, + "oid": "480166d4-b962-4da3-be7b-617aa2d6a5cd", + "uiClass": "HeatingSystem" + }, + { + "creationTime": 1628155896000, + "lastUpdateTime": 1628155896000, + "label": "Nursery Temp Probe", + "deviceURL": "io://1234-5678-1698/9187218#2", + "shortcut": false, + "controllableName": "io:TemperatureIOSystemSensor", + "metadata": "{\"id\":\"6dfbaf6c-9597-4bd7-9505-214c9163a533\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TemperatureState" + } + ], + "dataProperties": [], + "widgetName": "TemperatureSensor", + "uiProfiles": ["Temperature"], + "uiClass": "TemperatureSensor", + "qualifiedName": "io:TemperatureIOSystemSensor", + "type": "SENSOR" + }, + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:TemperatureState", + "type": 2, + "value": 20.6 + } + ], + "attributes": [ + { + "name": "core:MaxSensedValue", + "type": 1, + "value": 99 + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:MinSensedValue", + "type": 2, + "value": -273.15 + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5145198A12" + }, + { + "name": "core:MeasuredValueType", + "type": 3, + "value": "core:TemperatureInCelcius" + }, + { + "name": "core:PowerSourceType", + "type": 3, + "value": "battery" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "TemperatureSensor", + "type": 2, + "oid": "e35cbf43-b26a-4cba-b02e-72c52f0f64c7", + "uiClass": "TemperatureSensor" + }, + { + "creationTime": 1628156011000, + "lastUpdateTime": 1628156011000, + "label": "Living Room Radiator", + "deviceURL": "io://1234-5678-1698/9253412#1", + "shortcut": false, + "controllableName": "io:HeatingValveIOComponent", + "metadata": "{\"id\":\"be3e62a1-21ae-4d66-a230-77856473ffc2\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setTimeProgramById", + "nparams": 2 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "exitDerogation", + "nparams": 0 + }, + { + "commandName": "setAllModeTemperatures", + "nparams": 4 + }, + { + "commandName": "setDerogation", + "nparams": 2 + }, + { + "commandName": "setValveSettings", + "nparams": 1 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:ActiveTimeProgramState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:BatteryLevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ComfortRoomTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:DerogatedTargetTemperatureState" + }, + { + "type": "DataState", + "qualifiedName": "core:DerogationEndDateTimeState" + }, + { + "type": "DataState", + "qualifiedName": "core:DerogationStartDateTimeState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:EcoTargetTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:FrostProtectionRoomTemperatureState" + }, + { + "type": "DataState", + "qualifiedName": "core:MaxSetpointState" + }, + { + "type": "DataState", + "qualifiedName": "core:MinSetpointState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedValveState" + }, + { + "type": "DiscreteState", + "values": ["active", "inactive"], + "qualifiedName": "core:OpenWindowDetectionActivationState" + }, + { + "type": "DiscreteState", + "values": [ + "antifreeze", + "auto", + "away", + "eco", + "frostprotection", + "manual", + "max", + "normal", + "off", + "on", + "prog", + "program", + "boost" + ], + "qualifiedName": "core:OperatingModeState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetRoomTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TemperatureOffsetConfigurationState" + }, + { + "type": "DataState", + "qualifiedName": "core:TimeProgram1State" + }, + { + "type": "DataState", + "qualifiedName": "core:TimeProgram2State" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:AwayModeTargetTemperatureState" + }, + { + "type": "DiscreteState", + "values": ["disabled", "enabled"], + "qualifiedName": "io:ByPassActivationState" + }, + { + "type": "DiscreteState", + "values": [ + "awayMode", + "comfort", + "eco", + "frostprotection", + "geofencingMode", + "manual", + "suddenDropMode" + ], + "qualifiedName": "io:CurrentHeatingModeState" + }, + { + "type": "DiscreteState", + "values": [ + "awayMode", + "comfort", + "eco", + "frostprotection", + "geofencingMode", + "manual", + "suddenDropMode" + ], + "qualifiedName": "io:DerogationHeatingModeState" + }, + { + "type": "DiscreteState", + "values": ["date", "furtherNotice", "nextMode"], + "qualifiedName": "io:DerogationTypeState" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:GeofencingModeTargetTemperatureState" + }, + { + "type": "DiscreteState", + "values": ["disabled", "enabled"], + "qualifiedName": "io:LockKeyActivationState" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:ManualModeTargetTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "io:OpenWindowDetectedTargetTemperatureState" + }, + { + "type": "DiscreteState", + "values": [ + "adjustment", + "finished", + "full_closed", + "full_open", + "pairing", + "reset" + ], + "qualifiedName": "io:ValveInstallationModeState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "ValveHeatingTemperatureInterface", + "uiProfiles": ["ThermostatTargetReader"], + "uiClass": "HeatingSystem", + "uiClassifiers": ["emitter"], + "qualifiedName": "io:HeatingValveIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Living Room Radiator" + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:OpenClosedValveState", + "type": 3, + "value": "closed" + }, + { + "name": "core:OperatingModeState", + "type": 3, + "value": "manual" + }, + { + "name": "io:CurrentHeatingModeState", + "type": 3, + "value": "comfort" + }, + { + "name": "core:TargetRoomTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "core:TargetTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "io:DerogationTypeState", + "type": 3, + "value": "further_notice" + }, + { + "name": "io:DerogationHeatingModeState", + "type": 3, + "value": "comfort" + }, + { + "name": "core:DerogatedTargetTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "io:ManualModeTargetTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "core:DerogationStartDateTimeState", + "type": 5, + "value": 1642418410000 + }, + { + "name": "core:DerogationEndDateTimeState", + "type": 5, + "value": 1642418410000 + }, + { + "name": "io:ValveInstallationModeState", + "type": 3, + "value": "finished" + }, + { + "name": "core:BatteryLevelState", + "type": 2, + "value": 66.0 + }, + { + "name": "core:OpenWindowDetectionActivationState", + "type": 3, + "value": "active" + }, + { + "name": "io:LockKeyActivationState", + "type": 3, + "value": "disable" + }, + { + "name": "io:ByPassActivationState", + "type": 3, + "value": "disable" + }, + { + "name": "core:ActiveTimeProgramState", + "type": 3, + "value": "none" + }, + { + "name": "core:MaxSetpointState", + "type": 2, + "value": 26.0 + }, + { + "name": "core:MinSetpointState", + "type": 2, + "value": 5.0 + }, + { + "name": "core:TemperatureOffsetConfigurationState", + "type": 2, + "value": 0.0 + }, + { + "name": "core:ComfortRoomTemperatureState", + "type": 2, + "value": 21.0 + }, + { + "name": "io:AwayModeTargetTemperatureState", + "type": 2, + "value": 17.0 + }, + { + "name": "core:EcoTargetTemperatureState", + "type": 2, + "value": 19.0 + }, + { + "name": "io:GeofencingModeTargetTemperatureState", + "type": 2, + "value": 20.0 + }, + { + "name": "core:FrostProtectionRoomTemperatureState", + "type": 2, + "value": 8.0 + }, + { + "name": "io:OpenWindowDetectedTargetTemperatureState", + "type": 2, + "value": 8.0 + }, + { + "name": "core:TimeProgram1State", + "type": 11, + "value": { + "sunday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + } + } + }, + { + "name": "core:TimeProgram2State", + "type": 11, + "value": { + "sunday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "mode": "eco", + "from": { + "hour": 0, + "minute": 0 + }, + "to": { + "hour": 6, + "minute": 0 + } + }, + { + "mode": "comfort", + "from": { + "hour": 6, + "minute": 0 + }, + "to": { + "hour": 21, + "minute": 0 + } + }, + { + "mode": "eco", + "from": { + "hour": 21, + "minute": 0 + }, + "to": { + "hour": 24, + "minute": 0 + } + } + ] + } + } + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "ValveHeatingTemperatureInterface", + "type": 1, + "oid": "2d559f8f-1072-4723-afaf-c1f46bfedc47", + "uiClass": "HeatingSystem" + }, + { + "creationTime": 1628156011000, + "lastUpdateTime": 1628156011000, + "label": "Study Temp Probe", + "deviceURL": "io://1234-5678-1698/9253412#2", + "shortcut": false, + "controllableName": "io:TemperatureIOSystemSensor", + "metadata": "{\"id\":\"fca1cc7f-1912-480b-a2ac-39932f9f1b0a\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TemperatureState" + } + ], + "dataProperties": [], + "widgetName": "TemperatureSensor", + "uiProfiles": ["Temperature"], + "uiClass": "TemperatureSensor", + "qualifiedName": "io:TemperatureIOSystemSensor", + "type": "SENSOR" + }, + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:TemperatureState", + "type": 2, + "value": 21.5 + } + ], + "attributes": [ + { + "name": "core:MaxSensedValue", + "type": 1, + "value": 99 + }, + { + "name": "core:MinSensedValue", + "type": 2, + "value": -273.15 + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5145198A12" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:MeasuredValueType", + "type": 3, + "value": "core:TemperatureInCelcius" + }, + { + "name": "core:PowerSourceType", + "type": 3, + "value": "battery" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "TemperatureSensor", + "type": 2, + "oid": "109d1002-f71d-4610-a83c-c3cefad59e8d", + "uiClass": "TemperatureSensor" + }, + { + "creationTime": 1628156988000, + "lastUpdateTime": 1628156988000, + "label": "Office Shutter", + "deviceURL": "io://1234-5678-1698/9740264", + "shortcut": false, + "controllableName": "io:RollerShutterWithLowSpeedManagementIOComponent", + "metadata": "{\"id\":\"dff415ec-58c5-4178-b986-c76370d0c20a\"}", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosureAndLinearSpeed", + "nparams": 2 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPositionAndLinearSpeed", + "nparams": 2 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutterWithLowSpeedManagement", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterWithLowSpeedManagementIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Office Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 0 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 85 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 0 + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5128570B00" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "PositionableRollerShutterWithLowSpeedManagement", + "type": 1, + "oid": "03975074-d1ae-4f31-81f1-4bc61753c5f0", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1621256312000, + "lastUpdateTime": 1621256312000, + "label": "Terrace Radiator", + "deviceURL": "ovp://1234-5678-1698/374762#1", + "shortcut": false, + "controllableName": "ovp:SomfyHeatingTemperatureInterfaceOVPComponent", + "metadata": "{\"id\":\"dd9a7a49-8c39-4f78-9ede-5a4949972acc\"}", + "definition": { + "commands": [ + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "refreshActiveMode", + "nparams": 0 + }, + { + "commandName": "refreshBatteryLevel", + "nparams": 0 + }, + { + "commandName": "refreshComfortTemperature", + "nparams": 0 + }, + { + "commandName": "refreshEcoTemperature", + "nparams": 0 + }, + { + "commandName": "refreshOnOffState", + "nparams": 0 + }, + { + "commandName": "refreshSecuredPositionTemperature", + "nparams": 0 + }, + { + "commandName": "refreshSetPointMode", + "nparams": 0 + }, + { + "commandName": "refreshTargetTemperature", + "nparams": 0 + }, + { + "commandName": "refreshTemperature", + "nparams": 0 + }, + { + "commandName": "setComfortTemperature", + "nparams": 1 + }, + { + "commandName": "setEcoTemperature", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setOnOff", + "nparams": 1 + }, + { + "commandName": "setOperatingMode", + "nparams": 1 + }, + { + "commandName": "setSecuredPositionTemperature", + "nparams": 1 + }, + { + "commandName": "setActiveMode", + "nparams": 1 + }, + { + "commandName": "setManuAndSetPointModes", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["full", "low", "normal", "verylow"], + "qualifiedName": "core:BatteryState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ComfortRoomTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:EcoRoomTemperatureState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["off", "on"], + "qualifiedName": "core:OnOffState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionTemperatureState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetTemperatureState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:VersionState" + }, + { + "type": "DiscreteState", + "values": ["auto", "manu"], + "qualifiedName": "ovp:HeatingTemperatureInterfaceActiveModeState" + }, + { + "type": "DiscreteState", + "values": ["both", "cooling", "heating"], + "qualifiedName": "ovp:HeatingTemperatureInterfaceOperatingModeState" + }, + { + "type": "DiscreteState", + "values": ["comfort", "eco", "free", "secured"], + "qualifiedName": "ovp:HeatingTemperatureInterfaceSetPointModeState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "SomfyHeatingTemperatureInterface", + "uiProfiles": [ + "OperatingModeHeating", + "ThermostatTargetReader", + "OnOffStatus" + ], + "uiClass": "HeatingSystem", + "uiClassifiers": ["generator"], + "qualifiedName": "ovp:SomfyHeatingTemperatureInterfaceOVPComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Terrace Radiator" + }, + { + "name": "core:VersionState", + "type": 3, + "value": "v01.01????" + }, + { + "name": "core:OnOffState", + "type": 3, + "value": "on" + }, + { + "name": "ovp:HeatingTemperatureInterfaceSetPointModeState", + "type": 3, + "value": "comfort" + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "ovp:HeatingTemperatureInterfaceActiveModeState", + "type": 3, + "value": "manu" + }, + { + "name": "ovp:HeatingTemperatureInterfaceOperatingModeState", + "type": 3, + "value": "heating" + }, + { + "name": "core:TargetTemperatureState", + "type": 2, + "value": 23.0 + }, + { + "name": "core:SecuredPositionTemperatureState", + "type": 2, + "value": 7.0 + }, + { + "name": "core:EcoRoomTemperatureState", + "type": 2, + "value": 17.0 + }, + { + "name": "core:ComfortRoomTemperatureState", + "type": 2, + "value": 23.0 + }, + { + "name": "core:BatteryState", + "type": 3, + "value": "low" + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "SomfyHeatingTemperatureInterface", + "type": 1, + "oid": "95cedf77-a1a3-4f95-a80a-b587f15bec68", + "uiClass": "HeatingSystem" + }, + { + "creationTime": 1621256312000, + "lastUpdateTime": 1621256312000, + "label": "Garage Temp Probe", + "deviceURL": "ovp://1234-5678-1698/374762#2", + "shortcut": false, + "controllableName": "ovp:HeatingTemperatureInterfaceTemperatureSensor", + "metadata": "{\"id\":\"c231064b-f298-4091-8e19-b3d4bf80adae\"}", + "definition": { + "commands": [ + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TemperatureState" + } + ], + "dataProperties": [], + "widgetName": "TemperatureSensor", + "uiProfiles": ["Temperature"], + "uiClass": "TemperatureSensor", + "uiClassifiers": ["sensor"], + "qualifiedName": "ovp:HeatingTemperatureInterfaceTemperatureSensor", + "type": "SENSOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Garage Temp Probe" + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:TemperatureState", + "type": 2, + "value": 23.3 + } + ], + "attributes": [ + { + "name": "core:MeasuredValueType", + "type": 3, + "value": "core:TemperatureInCelcius" + }, + { + "name": "core:MaxSensedValue", + "type": 2, + "value": 40.0 + }, + { + "name": "core:MinSensedValue", + "type": 2, + "value": 0.0 + } + ], + "available": true, + "enabled": true, + "placeOID": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "widget": "TemperatureSensor", + "type": 2, + "oid": "c3f46ee2-69f2-4343-8f98-755319e45ca6", + "uiClass": "TemperatureSensor" + } + ], + "zones": [], + "resellerDelegationType": "NEVER", + "oid": "d3b1caaf-9e16-47a6-969e-4b5a2c4ef980", + "rootPlace": { + "creationTime": 1582277965000, + "lastUpdateTime": 1582277965000, + "label": "Maple Residence", + "type": 0, + "oid": "0d6a3908-f08d-446a-bd88-5a9f4849c526", + "subPlaces": [] + }, + "features": [] +} diff --git a/tests/components/overkiz/fixtures/setup/cloud_somfy_connexoon_rts_asia.json b/tests/components/overkiz/fixtures/setup/cloud_somfy_connexoon_rts_asia.json new file mode 100644 index 000000000000..d2fad670bd2b --- /dev/null +++ b/tests/components/overkiz/fixtures/setup/cloud_somfy_connexoon_rts_asia.json @@ -0,0 +1,345 @@ +{ + "creationTime": 1613674982000, + "lastUpdateTime": 1613674982000, + "id": "SETUP-1234-1234-6362", + "location": { + "creationTime": 1613674982000, + "lastUpdateTime": 1632527573000, + "city": "*", + "country": "*", + "postalCode": "*/*", + "addressLine1": "*", + "addressLine2": "", + "timezone": "Asia/Bangkok", + "longitude": "*", + "latitude": "*", + "twilightMode": 2, + "twilightAngle": "CIVIL", + "twilightCity": "paris", + "summerSolsticeDuskMinutes": 1290, + "winterSolsticeDuskMinutes": 990, + "twilightOffsetEnabled": false, + "dawnOffset": 0, + "duskOffset": 0, + "countryCode": "TH" + }, + "gateways": [ + { + "gatewayId": "1234-1234-6362", + "type": 53, + "subType": 1, + "placeOID": "6133b4a0-f514-4553-b635-d1b7beb7e7b2", + "alive": true, + "timeReliable": true, + "connectivity": { + "status": "OK", + "protocolVersion": "2021.2.4" + }, + "upToDate": true, + "updateStatus": "UP_TO_DATE", + "syncInProgress": false, + "functions": "INTERNET_AUTHORIZATION,SCENARIO_DOWNLOAD,SCENARIO_AUTO_LAUNCHING,SCENARIO_TELECO_LAUNCHING,INTERNET_UPLOAD,INTERNET_UPDATE,TRIGGERS_SENSORS", + "mode": "ACTIVE" + } + ], + "devices": [ + { + "creationTime": 1613675393000, + "lastUpdateTime": 1613675393000, + "label": "*", + "deviceURL": "internal://1234-1234-6362/pod/0", + "shortcut": false, + "controllableName": "internal:PodMiniComponent", + "definition": { + "commands": [ + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "update", + "nparams": 0 + }, + { + "commandName": "setCountryCode", + "nparams": 1 + }, + { + "commandName": "activateCalendar", + "nparams": 0 + }, + { + "commandName": "deactivateCalendar", + "nparams": 0 + }, + { + "commandName": "refreshPodMode", + "nparams": 0 + }, + { + "commandName": "refreshUpdateStatus", + "nparams": 0 + }, + { + "commandName": "setCalendar", + "nparams": 1 + }, + { + "commandName": "setLightingLedPodMode", + "nparams": 1 + }, + { + "commandName": "setPodLedOff", + "nparams": 0 + }, + { + "commandName": "setPodLedOn", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["offline", "online"], + "qualifiedName": "core:ConnectivityState" + }, + { + "type": "DataState", + "qualifiedName": "core:CountryCodeState" + }, + { + "type": "DataState", + "qualifiedName": "core:LocalIPv4AddressState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": [ + "doublePress", + "longPress", + "simplePress", + "triplePress", + "veryLongPress" + ], + "qualifiedName": "internal:LastActionConfigButtonState" + }, + { + "type": "ContinuousState", + "qualifiedName": "internal:LightingLedPodModeState" + } + ], + "dataProperties": [], + "widgetName": "Pod", + "uiProfiles": ["UpdatableComponent"], + "uiClass": "Pod", + "qualifiedName": "internal:PodMiniComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "*" + }, + { + "name": "internal:LightingLedPodModeState", + "type": 2, + "value": 1.0 + }, + { + "name": "core:CountryCodeState", + "type": 3, + "value": "TH" + }, + { + "name": "core:LocalIPv4AddressState", + "type": 3, + "value": "N/A" + } + ], + "available": true, + "enabled": true, + "placeOID": "6133b4a0-f514-4553-b635-d1b7beb7e7b2", + "widget": "Pod", + "type": 1, + "oid": "2dfeb3c8-a71d-4552-9e9b-875baf906a6c", + "uiClass": "Pod" + }, + { + "creationTime": 1613676516000, + "lastUpdateTime": 1613676516000, + "label": "Patio Shutter", + "deviceURL": "rts://1234-1234-6362/16730022", + "shortcut": false, + "controllableName": "rts:RollerShutterRTSComponent", + "definition": { + "commands": [ + { + "commandName": "close", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 1 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 1 + }, + { + "commandName": "open", + "nparams": 1 + }, + { + "commandName": "rest", + "nparams": 1 + }, + { + "commandName": "stop", + "nparams": 1 + }, + { + "commandName": "test", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 1 + }, + { + "commandName": "openConfiguration", + "nparams": 1 + } + ], + "states": [], + "dataProperties": [ + { + "value": "0", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "UpDownRollerShutter", + "uiProfiles": ["OpenCloseShutter", "OpenClose"], + "uiClass": "RollerShutter", + "qualifiedName": "rts:RollerShutterRTSComponent", + "type": "ACTUATOR" + }, + "attributes": [ + { + "name": "rts:diy", + "type": 6, + "value": false + } + ], + "available": true, + "enabled": true, + "placeOID": "6133b4a0-f514-4553-b635-d1b7beb7e7b2", + "widget": "UpDownRollerShutter", + "type": 1, + "oid": "d4da34c9-5cbf-4278-b8ec-ae66428b9522", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1613676640000, + "lastUpdateTime": 1613676640000, + "label": "Kitchen Shutter", + "deviceURL": "rts://1234-1234-6362/16749917", + "shortcut": false, + "controllableName": "rts:RollerShutterRTSComponent", + "definition": { + "commands": [ + { + "commandName": "close", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 1 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 1 + }, + { + "commandName": "open", + "nparams": 1 + }, + { + "commandName": "rest", + "nparams": 1 + }, + { + "commandName": "stop", + "nparams": 1 + }, + { + "commandName": "test", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 1 + }, + { + "commandName": "openConfiguration", + "nparams": 1 + } + ], + "states": [], + "dataProperties": [ + { + "value": "0", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "UpDownRollerShutter", + "uiProfiles": ["OpenCloseShutter", "OpenClose"], + "uiClass": "RollerShutter", + "qualifiedName": "rts:RollerShutterRTSComponent", + "type": "ACTUATOR" + }, + "attributes": [ + { + "name": "rts:diy", + "type": 6, + "value": false + } + ], + "available": true, + "enabled": true, + "placeOID": "6133b4a0-f514-4553-b635-d1b7beb7e7b2", + "widget": "UpDownRollerShutter", + "type": 1, + "oid": "ef870fe7-daf3-4f33-b91e-62b2a809ef4e", + "uiClass": "RollerShutter" + } + ], + "zones": [], + "resellerDelegationType": "NEVER", + "oid": "fee37cf6-1d39-49fc-8d67-af71dfe20c4d", + "rootPlace": { + "creationTime": 1613674982000, + "lastUpdateTime": 1613674982000, + "label": "Palm Court", + "type": 0, + "oid": "6133b4a0-f514-4553-b635-d1b7beb7e7b2", + "subPlaces": [] + }, + "features": [ + { + "name": "connexoon-rts-window", + "source": "GATEWAY_TYPE" + } + ] +} diff --git a/tests/components/overkiz/fixtures/setup/cloud_somfy_tahoma_switch_europe.json b/tests/components/overkiz/fixtures/setup/cloud_somfy_tahoma_switch_europe.json new file mode 100644 index 000000000000..35c2d7adee89 --- /dev/null +++ b/tests/components/overkiz/fixtures/setup/cloud_somfy_tahoma_switch_europe.json @@ -0,0 +1,891 @@ +{ + "creationTime": 1665238624000, + "lastUpdateTime": 1665238624000, + "id": "SETUP-1234-5678-6867", + "location": { + "creationTime": 1665238624000, + "lastUpdateTime": 1667054735000, + "city": "**", + "country": "**", + "postalCode": "**", + "addressLine1": "**", + "addressLine2": "*", + "timezone": "Europe/Amsterdam", + "longitude": "**", + "latitude": "**", + "twilightMode": 2, + "twilightAngle": "SOLAR", + "twilightCity": "amsterdam", + "summerSolsticeDuskMinutes": 1290, + "winterSolsticeDuskMinutes": 990, + "twilightOffsetEnabled": false, + "dawnOffset": 0, + "duskOffset": 0, + "countryCode": "NL" + }, + "gateways": [ + { + "gatewayId": "1234-5678-6867", + "type": 98, + "subType": 1, + "placeOID": "41d63e43-bfa8-4e24-8c16-4faae0448cab", + "autoUpdateEnabled": true, + "alive": true, + "timeReliable": true, + "connectivity": { + "status": "OK", + "protocolVersion": "2023.4.4" + }, + "upToDate": true, + "updateStatus": "UP_TO_DATE", + "syncInProgress": false, + "mode": "ACTIVE", + "functions": "INTERNET_AUTHORIZATION,SCENARIO_DOWNLOAD,SCENARIO_AUTO_LAUNCHING,SCENARIO_TELECO_LAUNCHING,INTERNET_UPLOAD,INTERNET_UPDATE,TRIGGERS_SENSORS" + } + ], + "devices": [ + { + "creationTime": 1665238630000, + "lastUpdateTime": 1665238630000, + "label": "Study Protocol Gateway", + "deviceURL": "homekit://1234-5678-6867/stack", + "shortcut": false, + "controllableName": "homekit:StackComponent", + "definition": { + "commands": [ + { + "commandName": "deleteControllers", + "nparams": 0 + } + ], + "states": [], + "dataProperties": [], + "widgetName": "HomekitStack", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "homekit:StackComponent", + "type": "PROTOCOL_GATEWAY" + }, + "attributes": [ + { + "name": "homekit:SetupPayload", + "type": 3, + "value": "X-HM://0024YABC1234" + }, + { + "name": "homekit:SetupCode", + "type": 3, + "value": "012-34-567" + } + ], + "available": true, + "enabled": true, + "placeOID": "41d63e43-bfa8-4e24-8c16-4faae0448cab", + "type": 5, + "widget": "HomekitStack", + "oid": "ab964849-56ca-4e9c-a58c-33ce5e341b68", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1665238630000, + "lastUpdateTime": 1665238630000, + "label": "Nursery Hub", + "deviceURL": "internal://1234-5678-6867/pod/0", + "shortcut": false, + "controllableName": "internal:PodV3Component", + "definition": { + "commands": [ + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "update", + "nparams": 0 + }, + { + "commandName": "setCountryCode", + "nparams": 1 + }, + { + "commandName": "activateCalendar", + "nparams": 0 + }, + { + "commandName": "deactivateCalendar", + "nparams": 0 + }, + { + "commandName": "refreshPodMode", + "nparams": 0 + }, + { + "commandName": "refreshUpdateStatus", + "nparams": 0 + }, + { + "commandName": "setCalendar", + "nparams": 1 + }, + { + "commandName": "setLightingLedPodMode", + "nparams": 1 + }, + { + "commandName": "setPodLedOff", + "nparams": 0 + }, + { + "commandName": "setPodLedOn", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["offline", "online"], + "qualifiedName": "core:ConnectivityState" + }, + { + "type": "DataState", + "qualifiedName": "core:CountryCodeState" + }, + { + "eventBased": true, + "type": "DataState", + "qualifiedName": "core:LocalAccessProofState" + }, + { + "type": "DataState", + "qualifiedName": "core:LocalIPv4AddressState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "eventBased": true, + "type": "DiscreteState", + "values": ["pressed", "stop"], + "qualifiedName": "internal:Button1State" + }, + { + "eventBased": true, + "type": "DiscreteState", + "values": ["pressed", "stop"], + "qualifiedName": "internal:Button2State" + }, + { + "eventBased": true, + "type": "DiscreteState", + "values": ["pressed", "stop"], + "qualifiedName": "internal:Button3State" + }, + { + "type": "ContinuousState", + "qualifiedName": "internal:LightingLedPodModeState" + } + ], + "dataProperties": [], + "widgetName": "Pod", + "uiProfiles": ["UpdatableComponent"], + "uiClass": "Pod", + "qualifiedName": "internal:PodV3Component", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "internal:LightingLedPodModeState", + "type": 2, + "value": 1 + }, + { + "name": "core:CountryCodeState", + "type": 3, + "value": "NL" + }, + { + "name": "internal:Button1State", + "type": 3, + "value": "pressed" + }, + { + "name": "internal:Button3State", + "type": 3, + "value": "stop" + }, + { + "name": "core:LocalAccessProofState", + "type": 3, + "value": "localAccessProof" + }, + { + "name": "core:LocalIPv4AddressState", + "type": 3, + "value": "192.168.1.42" + }, + { + "name": "core:NameState", + "type": 3, + "value": "Nursery Hub" + } + ], + "available": true, + "enabled": true, + "placeOID": "41d63e43-bfa8-4e24-8c16-4faae0448cab", + "type": 1, + "widget": "Pod", + "oid": "c79a8bf6-59d6-434e-8cfd-97193541fa17", + "uiClass": "Pod" + }, + { + "creationTime": 1665238630000, + "lastUpdateTime": 1665238630000, + "label": "Terrace Wifi", + "deviceURL": "internal://1234-5678-6867/wifi/0", + "shortcut": false, + "controllableName": "internal:WifiComponent", + "definition": { + "commands": [ + { + "commandName": "clearCredentials", + "nparams": 0 + }, + { + "commandName": "setTargetInfraConfig", + "nparams": 2 + }, + { + "commandName": "setWifiMode", + "nparams": 1 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "internal:CurrentInfraConfigState" + }, + { + "type": "ContinuousState", + "qualifiedName": "internal:SignalStrengthState" + }, + { + "type": "DataState", + "qualifiedName": "internal:WifiModeState" + } + ], + "dataProperties": [], + "widgetName": "Wifi", + "uiProfiles": ["Specific"], + "uiClass": "Wifi", + "qualifiedName": "internal:WifiComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "internal:WifiModeState", + "type": 3, + "value": "infrastructure" + }, + { + "name": "internal:CurrentInfraConfigState", + "type": 3, + "value": "AM" + }, + { + "name": "internal:SignalStrengthState", + "type": 1, + "value": 69 + } + ], + "available": true, + "enabled": true, + "placeOID": "41d63e43-bfa8-4e24-8c16-4faae0448cab", + "type": 1, + "widget": "Wifi", + "oid": "4272c61b-5493-453c-8d87-a58e45ef60f8", + "uiClass": "Wifi" + }, + { + "creationTime": 1665238924000, + "lastUpdateTime": 1665238924000, + "label": "Bathroom Bridge", + "deviceURL": "io://1234-5678-6867/4167385", + "shortcut": false, + "controllableName": "io:StackComponent", + "definition": { + "commands": [ + { + "commandName": "advancedSomfyDiscover", + "nparams": 1 + }, + { + "commandName": "discover1WayController", + "nparams": 2 + }, + { + "commandName": "discoverActuators", + "nparams": 1 + }, + { + "commandName": "discoverSensors", + "nparams": 1 + }, + { + "commandName": "discoverSomfyUnsetActuators", + "nparams": 0 + }, + { + "commandName": "joinNetwork", + "nparams": 0 + }, + { + "commandName": "resetNetworkSecurity", + "nparams": 0 + }, + { + "commandName": "shareNetwork", + "nparams": 0 + } + ], + "states": [], + "dataProperties": [], + "widgetName": "IOStack", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "io:StackComponent", + "type": "PROTOCOL_GATEWAY" + }, + "available": true, + "enabled": true, + "placeOID": "41d63e43-bfa8-4e24-8c16-4faae0448cab", + "type": 5, + "widget": "IOStack", + "oid": "bb301e56-0957-417f-ba37-26efc11659aa", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1665238637000, + "lastUpdateTime": 1665238637000, + "label": "Garage Protocol Gateway", + "deviceURL": "ogp://1234-5678-6867/00000BE8", + "shortcut": false, + "controllableName": "ogp:Bridge", + "definition": { + "commands": [ + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "sendPrivate", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:AvailabilityState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DataState", + "qualifiedName": "core:Private10State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private1State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private2State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private3State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private4State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private5State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private6State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private7State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private8State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private9State" + }, + { + "type": "DataState", + "qualifiedName": "core:RemovableState" + } + ], + "dataProperties": [], + "widgetName": "DynamicBridge", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "ogp:Bridge", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Garage Protocol Gateway" + } + ], + "attributes": [ + { + "name": "core:Technology", + "type": 3, + "value": "KNX" + }, + { + "name": "core:ManufacturerReference", + "type": 3, + "value": "OGP KNX Bridge" + }, + { + "name": "ogp:Features", + "type": 10, + "value": [ + { + "name": "private" + }, + { + "name": "identification" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Overkiz" + } + ], + "available": true, + "enabled": true, + "placeOID": "41d63e43-bfa8-4e24-8c16-4faae0448cab", + "type": 1, + "widget": "DynamicBridge", + "oid": "e88717c3-02a9-49b6-a5a5-5adca558afe9", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1665238799000, + "lastUpdateTime": 1665238799000, + "label": "Dining Room Protocol Gateway", + "deviceURL": "ogp://1234-5678-6867/0003FEF3", + "shortcut": false, + "controllableName": "ogp:Bridge", + "definition": { + "commands": [ + { + "commandName": "discover", + "nparams": 0 + }, + { + "commandName": "reset", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:AvailabilityState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DataState", + "qualifiedName": "core:RemovableState" + } + ], + "dataProperties": [], + "widgetName": "DynamicBridge", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "ogp:Bridge", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Dining Room Protocol Gateway" + } + ], + "attributes": [ + { + "name": "core:ManufacturerReference", + "type": 3, + "value": "OGP Sonos Bridge" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Overkiz" + }, + { + "name": "ogp:Features", + "type": 10, + "value": [ + { + "name": "identification", + "commandLess": true + }, + { + "name": "discovery" + }, + { + "name": "reset" + } + ] + }, + { + "name": "core:Technology", + "type": 3, + "value": "Sonos" + } + ], + "available": true, + "enabled": true, + "placeOID": "41d63e43-bfa8-4e24-8c16-4faae0448cab", + "type": 1, + "widget": "DynamicBridge", + "oid": "4031915f-df40-4a70-a97f-64031182a507", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1665238637000, + "lastUpdateTime": 1665238637000, + "label": "Living Room Bridge", + "deviceURL": "ogp://1234-5678-6867/039575E9", + "shortcut": false, + "controllableName": "ogp:Bridge", + "definition": { + "commands": [ + { + "commandName": "discover", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:AvailabilityState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DataState", + "qualifiedName": "core:RemovableState" + } + ], + "dataProperties": [], + "widgetName": "DynamicBridge", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "ogp:Bridge", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Living Room Bridge" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Overkiz" + }, + { + "name": "ogp:Features", + "type": 10, + "value": [ + { + "name": "discovery" + }, + { + "name": "identification" + } + ] + }, + { + "name": "core:ManufacturerReference", + "type": 3, + "value": "OGP Siegenia Bridge" + }, + { + "name": "core:Technology", + "type": 3, + "value": "Siegenia" + } + ], + "available": true, + "enabled": true, + "placeOID": "41d63e43-bfa8-4e24-8c16-4faae0448cab", + "type": 1, + "widget": "DynamicBridge", + "oid": "5cdf0023-2d7e-4e8e-bfb0-74ebb6ebe0eb", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1665238637000, + "lastUpdateTime": 1665238637000, + "label": "Patio Protocol Gateway", + "deviceURL": "ogp://1234-5678-6867/09E45393", + "shortcut": false, + "controllableName": "ogp:Bridge", + "definition": { + "commands": [ + { + "commandName": "discover", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:AvailabilityState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DataState", + "qualifiedName": "core:RemovableState" + } + ], + "dataProperties": [], + "widgetName": "DynamicBridge", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "ogp:Bridge", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Patio Protocol Gateway" + } + ], + "attributes": [ + { + "name": "core:ManufacturerReference", + "type": 3, + "value": "OGP Intesis Bridge" + }, + { + "name": "ogp:Features", + "type": 10, + "value": [ + { + "name": "discovery" + }, + { + "name": "identification" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Overkiz" + }, + { + "name": "core:Technology", + "type": 3, + "value": "Intesis" + } + ], + "available": true, + "enabled": true, + "placeOID": "41d63e43-bfa8-4e24-8c16-4faae0448cab", + "type": 1, + "widget": "DynamicBridge", + "oid": "b1f5dc24-058e-4cb2-a052-7b2d5a7de7a5", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1667840384000, + "lastUpdateTime": 1667840384000, + "label": "Living Room Shutter", + "deviceURL": "rts://1234-5678-6867/16756006", + "shortcut": false, + "controllableName": "rts:RollerShutterRTSComponent", + "definition": { + "commands": [ + { + "commandName": "close", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 1 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 1 + }, + { + "commandName": "open", + "nparams": 1 + }, + { + "commandName": "rest", + "nparams": 1 + }, + { + "commandName": "stop", + "nparams": 1 + }, + { + "commandName": "test", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 1 + }, + { + "commandName": "openConfiguration", + "nparams": 1 + } + ], + "states": [], + "dataProperties": [ + { + "value": "0", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "UpDownRollerShutter", + "uiProfiles": ["OpenCloseShutter", "OpenClose"], + "uiClass": "RollerShutter", + "qualifiedName": "rts:RollerShutterRTSComponent", + "type": "ACTUATOR" + }, + "attributes": [ + { + "name": "rts:diy", + "type": 6, + "value": true + } + ], + "available": true, + "enabled": true, + "placeOID": "9e3d6899-50bb-4869-9c5e-46c2b57f7c9e", + "type": 1, + "widget": "UpDownRollerShutter", + "oid": "1a10d6f6-9bc3-40f3-a33c-e383fd41d3e8", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1665238630000, + "lastUpdateTime": 1665238630000, + "label": "Attic Side Bridge", + "deviceURL": "zigbee://1234-5678-6867/65535", + "shortcut": false, + "controllableName": "zigbee:TransceiverV3_0Component", + "definition": { + "commands": [], + "states": [], + "dataProperties": [], + "widgetName": "ZigbeeStack", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "zigbee:TransceiverV3_0Component", + "type": "PROTOCOL_GATEWAY" + }, + "available": true, + "enabled": true, + "placeOID": "41d63e43-bfa8-4e24-8c16-4faae0448cab", + "type": 5, + "widget": "ZigbeeStack", + "oid": "1629c223-d115-4aad-808a-373f428d9c27", + "uiClass": "ProtocolGateway" + } + ], + "zones": [], + "resellerDelegationType": "NEVER", + "disconnectionConfiguration": { + "notificationTitle": "[User] : Your Somfy box is disconnected", + "notificationText": "Your Somfy box is disconnected", + "targetPushSubscriptions": ["8849df9a-b61a-498f-ab81-67a767adba31"], + "notificationType": "PUSH" + }, + "oid": "15eaf55a-8af9-483b-ae4a-ffd4254fd762", + "rootPlace": { + "creationTime": 1665238624000, + "lastUpdateTime": 1665238630000, + "label": "My House", + "type": 200, + "oid": "41d63e43-bfa8-4e24-8c16-4faae0448cab", + "subPlaces": [ + { + "creationTime": 1667840432000, + "lastUpdateTime": 1667840432000, + "label": "Living Room", + "type": 108, + "metadata": "{\"color\":\"#08C27F\"}", + "oid": "9e3d6899-50bb-4869-9c5e-46c2b57f7c9e", + "subPlaces": [] + } + ] + }, + "features": [] +} diff --git a/tests/components/overkiz/fixtures/setup/cloud_somfy_tahoma_switch_sc_europe.json b/tests/components/overkiz/fixtures/setup/cloud_somfy_tahoma_switch_sc_europe.json new file mode 100644 index 000000000000..6f4b23e646ce --- /dev/null +++ b/tests/components/overkiz/fixtures/setup/cloud_somfy_tahoma_switch_sc_europe.json @@ -0,0 +1,3543 @@ +{ + "creationTime": 1740136137000, + "lastUpdateTime": 1740136137000, + "id": "SETUP-1234-5678-5010", + "location": { + "creationTime": 1740136137000, + "lastUpdateTime": 1740136284000, + "city": "** **", + "country": "**", + "postalCode": "** **", + "addressLine1": "** **", + "addressLine2": "*", + "timezone": "Europe/Berlin", + "longitude": "**", + "latitude": "**", + "twilightMode": 2, + "twilightAngle": "CIVIL", + "twilightCity": "berlin", + "summerSolsticeDuskMinutes": 1290, + "winterSolsticeDuskMinutes": 990, + "twilightOffsetEnabled": false, + "dawnOffset": 0, + "duskOffset": 0, + "countryCode": "DE" + }, + "gateways": [ + { + "gatewayId": "1234-5678-5010", + "type": 128, + "subType": 2, + "placeOID": "8dc074ea-a179-4df4-8d7f-0e19edf33fae", + "autoUpdateEnabled": false, + "alive": true, + "timeReliable": true, + "connectivity": { + "status": "OK", + "protocolVersion": "2024.6.5" + }, + "upToDate": true, + "updateStatus": "UP_TO_DATE", + "syncInProgress": false, + "mode": "ACTIVE", + "functions": "INTERNET_AUTHORIZATION,SCENARIO_DOWNLOAD,SCENARIO_AUTO_LAUNCHING,SCENARIO_TELECO_LAUNCHING,INTERNET_UPLOAD,INTERNET_UPDATE,TRIGGERS_SENSORS" + } + ], + "devices": [ + { + "creationTime": 1740136137000, + "lastUpdateTime": 1740136137000, + "label": "** *(**)*", + "deviceURL": "homekit://1234-5678-5010/stack", + "shortcut": false, + "controllableName": "homekit:StackComponent", + "definition": { + "commands": [ + { + "commandName": "deleteControllers", + "nparams": 0 + } + ], + "states": [], + "dataProperties": [], + "widgetName": "HomekitStack", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "homekit:StackComponent", + "type": "PROTOCOL_GATEWAY" + }, + "attributes": [ + { + "name": "homekit:SetupCode", + "type": 3, + "value": "**" + }, + { + "name": "homekit:SetupPayload", + "type": 3, + "value": "**:*/*/**" + } + ], + "available": true, + "enabled": true, + "placeOID": "8dc074ea-a179-4df4-8d7f-0e19edf33fae", + "type": 5, + "widget": "HomekitStack", + "oid": "1c665d28-7b96-438f-a09c-dada8765aa27", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1740136137000, + "lastUpdateTime": 1740136137000, + "label": "**", + "deviceURL": "internal://1234-5678-5010/pod/0", + "shortcut": false, + "controllableName": "internal:PodV3Component", + "definition": { + "commands": [ + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "update", + "nparams": 0 + }, + { + "commandName": "setCountryCode", + "nparams": 1 + }, + { + "commandName": "activateCalendar", + "nparams": 0 + }, + { + "commandName": "deactivateCalendar", + "nparams": 0 + }, + { + "commandName": "refreshPodMode", + "nparams": 0 + }, + { + "commandName": "refreshUpdateStatus", + "nparams": 0 + }, + { + "commandName": "setCalendar", + "nparams": 1 + }, + { + "commandName": "setLightingLedPodMode", + "nparams": 1 + }, + { + "commandName": "setPodLedOff", + "nparams": 0 + }, + { + "commandName": "setPodLedOn", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["offline", "online"], + "qualifiedName": "core:ConnectivityState" + }, + { + "type": "DataState", + "qualifiedName": "core:CountryCodeState" + }, + { + "eventBased": true, + "type": "DataState", + "qualifiedName": "core:LocalAccessProofState" + }, + { + "type": "DataState", + "qualifiedName": "core:LocalIPv4AddressState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "eventBased": true, + "type": "DiscreteState", + "values": ["pressed", "stop"], + "qualifiedName": "internal:Button1State" + }, + { + "eventBased": true, + "type": "DiscreteState", + "values": ["pressed", "stop"], + "qualifiedName": "internal:Button2State" + }, + { + "eventBased": true, + "type": "DiscreteState", + "values": ["pressed", "stop"], + "qualifiedName": "internal:Button3State" + }, + { + "type": "ContinuousState", + "qualifiedName": "internal:LightingLedPodModeState" + } + ], + "dataProperties": [], + "widgetName": "Pod", + "uiProfiles": ["UpdatableComponent"], + "uiClass": "Pod", + "qualifiedName": "internal:PodV3Component", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "internal:LightingLedPodModeState", + "type": 2, + "value": 0.0 + }, + { + "name": "core:CountryCodeState", + "type": 3, + "value": "DE" + }, + { + "name": "core:LocalAccessProofState", + "type": 3, + "value": "localAccessProof" + }, + { + "name": "core:LocalIPv4AddressState", + "type": 3, + "value": "192.168.0.137" + }, + { + "name": "core:NameState", + "type": 3, + "value": "**" + } + ], + "available": true, + "enabled": true, + "placeOID": "8dc074ea-a179-4df4-8d7f-0e19edf33fae", + "type": 1, + "widget": "Pod", + "oid": "f8437f38-2719-43ac-9542-bdb3c08e4e18", + "uiClass": "Pod" + }, + { + "creationTime": 1740136137000, + "lastUpdateTime": 1740136137000, + "label": "** *(**/**)*", + "deviceURL": "internal://1234-5678-5010/wifi/0", + "shortcut": false, + "controllableName": "internal:WifiComponent", + "definition": { + "commands": [ + { + "commandName": "clearCredentials", + "nparams": 0 + }, + { + "commandName": "setTargetInfraConfig", + "nparams": 2 + }, + { + "commandName": "setWifiMode", + "nparams": 1 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "internal:CurrentInfraConfigState" + }, + { + "type": "ContinuousState", + "qualifiedName": "internal:SignalStrengthState" + }, + { + "type": "DataState", + "qualifiedName": "internal:WifiModeState" + } + ], + "dataProperties": [], + "widgetName": "Wifi", + "uiProfiles": ["Specific"], + "uiClass": "Wifi", + "qualifiedName": "internal:WifiComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "internal:WifiModeState", + "type": 3, + "value": "infrastructure" + }, + { + "name": "internal:CurrentInfraConfigState", + "type": 3, + "value": "Cubenet" + }, + { + "name": "internal:SignalStrengthState", + "type": 1, + "value": 38 + } + ], + "available": true, + "enabled": true, + "placeOID": "8dc074ea-a179-4df4-8d7f-0e19edf33fae", + "type": 1, + "widget": "Wifi", + "oid": "397acfce-901f-477f-b309-f7731d9df8d1", + "uiClass": "Wifi" + }, + { + "creationTime": 1742250100000, + "lastUpdateTime": 1742250100000, + "label": "Veranda Roller Shutter", + "deviceURL": "io://1234-5678-5010/12931361", + "shortcut": false, + "controllableName": "io:DualRollerShutterIOComponent", + "definition": { + "commands": [ + { + "commandName": "addLockLevel", + "nparams": 2 + }, + { + "commandName": "advancedRefresh", + "nparams": 2 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getClosure", + "nparams": 0 + }, + { + "commandName": "getLowerClosure", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "getUpperClosure", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "lowerClose", + "nparams": 0 + }, + { + "commandName": "lowerDown", + "nparams": 0 + }, + { + "commandName": "lowerOpen", + "nparams": 0 + }, + { + "commandName": "lowerUp", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "removeLockLevel", + "nparams": 1 + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setLowerClosure", + "nparams": 1 + }, + { + "commandName": "setLowerPosition", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "setUpperClosure", + "nparams": 1 + }, + { + "commandName": "setUpperPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "upperClose", + "nparams": 0 + }, + { + "commandName": "upperDown", + "nparams": 0 + }, + { + "commandName": "upperOpen", + "nparams": 0 + }, + { + "commandName": "upperUp", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "setUpperAndLowerClosure", + "nparams": 2 + }, + { + "commandName": "setUpperAndLowerPosition", + "nparams": 2 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "eventBased": true, + "type": "DataState", + "qualifiedName": "core:CommandLockLevelsState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:LowerClosureState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:LowerOpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:UpperClosureState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:UpperOpenClosedState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableDualRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:DualRollerShutterIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Veranda Roller Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:CommandLockLevelsState", + "type": 3, + "value": "[]", + "lastUpdateTime": 1742250104000 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 88.0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 50 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:UpperClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:UpperOpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:LowerClosureState", + "type": 1, + "value": 0 + }, + { + "name": "core:LowerOpenClosedState", + "type": 3, + "value": "open" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "VELUX" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "0000000000000000014e" + } + ], + "available": true, + "enabled": true, + "placeOID": "7dd0a42a-6006-4c69-b93c-5faaac76eef5", + "type": 1, + "widget": "PositionableDualRollerShutter", + "oid": "22b0746f-8059-4f15-be2a-6972044b0e81", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1742246957000, + "lastUpdateTime": 1742246957000, + "label": "Study Screen", + "deviceURL": "io://1234-5678-5010/13149769", + "shortcut": false, + "controllableName": "io:VerticalInteriorBlindVeluxIOComponent", + "definition": { + "commands": [ + { + "commandName": "addLockLevel", + "nparams": 2 + }, + { + "commandName": "advancedRefresh", + "nparams": 2 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "removeLockLevel", + "nparams": 1 + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "eventBased": true, + "type": "DataState", + "qualifiedName": "core:CommandLockLevelsState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableTiltedScreen", + "uiProfiles": [ + "StatefulCloseableBlind", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "Screen", + "qualifiedName": "io:VerticalInteriorBlindVeluxIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Study Screen" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:CommandLockLevelsState", + "type": 3, + "value": "[]", + "lastUpdateTime": 1742246973000 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 54.0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 0 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "0000000000000000fb19" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "VELUX" + } + ], + "available": true, + "enabled": true, + "placeOID": "8ba89c86-a590-4a3c-b352-4b95e906e9c9", + "type": 1, + "widget": "PositionableTiltedScreen", + "oid": "5078ef40-8733-4c2c-9da0-92c4f4977b9a", + "uiClass": "Screen" + }, + { + "creationTime": 1742246964000, + "lastUpdateTime": 1742246964000, + "label": "Loft Window", + "deviceURL": "io://1234-5678-5010/13522671", + "shortcut": false, + "controllableName": "io:WindowOpenerVeluxIOComponent", + "definition": { + "commands": [ + { + "commandName": "addLockLevel", + "nparams": 2 + }, + { + "commandName": "advancedRefresh", + "nparams": 2 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "goToAlias", + "nparams": 1 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "removeLockLevel", + "nparams": 1 + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "commandName": "saveAlias", + "nparams": 1 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "eventBased": true, + "type": "DataState", + "qualifiedName": "core:CommandLockLevelsState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ReachedAliasesState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableTiltedWindow", + "uiProfiles": [ + "StatefulCloseableWindow", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "Window", + "qualifiedName": "io:WindowOpenerVeluxIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Loft Window" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:CommandLockLevelsState", + "type": 3, + "value": "[]", + "lastUpdateTime": 1742246973000 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 84.0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:ReachedAliasesState", + "type": 10, + "value": [] + } + ], + "attributes": [ + { + "name": "core:SupportedAliases", + "type": 10, + "value": [ + { + "features": ["openClosePosition"], + "id": "55299", + "type": "ventilation" + } + ] + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "0000000000000000f502" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "VELUX" + }, + { + "name": "io:Features", + "type": 10, + "value": [ + { + "name": "alias" + }, + { + "name": "openClosePosition" + } + ] + } + ], + "available": true, + "enabled": true, + "placeOID": "a9641b20-ec31-4797-819c-77cad5091bb4", + "type": 1, + "widget": "PositionableTiltedWindow", + "oid": "985afc12-9c7d-4c30-b3ae-687522d8e67e", + "uiClass": "Window" + }, + { + "creationTime": 1742246967000, + "lastUpdateTime": 1742246967000, + "label": "Playroom Screen", + "deviceURL": "io://1234-5678-5010/13915941", + "shortcut": false, + "controllableName": "io:VerticalInteriorBlindVeluxIOComponent", + "definition": { + "commands": [ + { + "commandName": "addLockLevel", + "nparams": 2 + }, + { + "commandName": "advancedRefresh", + "nparams": 2 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "removeLockLevel", + "nparams": 1 + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "eventBased": true, + "type": "DataState", + "qualifiedName": "core:CommandLockLevelsState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableTiltedScreen", + "uiProfiles": [ + "StatefulCloseableBlind", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "Screen", + "qualifiedName": "io:VerticalInteriorBlindVeluxIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Playroom Screen" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:CommandLockLevelsState", + "type": 3, + "value": "[]", + "lastUpdateTime": 1742246973000 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 62.0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 0 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "VELUX" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "0000000000000000fb14" + } + ], + "available": true, + "enabled": true, + "placeOID": "45fc389e-7423-4dcd-a9d6-d50a8d5dee9b", + "type": 1, + "widget": "PositionableTiltedScreen", + "oid": "175fdaca-3d76-4e37-ba73-a54dfc979010", + "uiClass": "Screen" + }, + { + "creationTime": 1742250100000, + "lastUpdateTime": 1742250100000, + "label": "Basement Roller Shutter", + "deviceURL": "io://1234-5678-5010/2150846", + "shortcut": false, + "controllableName": "io:DualRollerShutterIOComponent", + "definition": { + "commands": [ + { + "commandName": "addLockLevel", + "nparams": 2 + }, + { + "commandName": "advancedRefresh", + "nparams": 2 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getClosure", + "nparams": 0 + }, + { + "commandName": "getLowerClosure", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "getUpperClosure", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "lowerClose", + "nparams": 0 + }, + { + "commandName": "lowerDown", + "nparams": 0 + }, + { + "commandName": "lowerOpen", + "nparams": 0 + }, + { + "commandName": "lowerUp", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "removeLockLevel", + "nparams": 1 + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setLowerClosure", + "nparams": 1 + }, + { + "commandName": "setLowerPosition", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "setUpperClosure", + "nparams": 1 + }, + { + "commandName": "setUpperPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "upperClose", + "nparams": 0 + }, + { + "commandName": "upperDown", + "nparams": 0 + }, + { + "commandName": "upperOpen", + "nparams": 0 + }, + { + "commandName": "upperUp", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "setUpperAndLowerClosure", + "nparams": 2 + }, + { + "commandName": "setUpperAndLowerPosition", + "nparams": 2 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "eventBased": true, + "type": "DataState", + "qualifiedName": "core:CommandLockLevelsState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:LowerClosureState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:LowerOpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:UpperClosureState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:UpperOpenClosedState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableDualRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:DualRollerShutterIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Basement Roller Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:CommandLockLevelsState", + "type": 3, + "value": "[]", + "lastUpdateTime": 1742250104000 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 90.0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 10 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:UpperClosureState", + "type": 1, + "value": 20 + }, + { + "name": "core:UpperOpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:LowerClosureState", + "type": 1, + "value": 0 + }, + { + "name": "core:LowerOpenClosedState", + "type": 3, + "value": "open" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "VELUX" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "0000000000000000014e" + } + ], + "available": true, + "enabled": true, + "placeOID": "7dd0a42a-6006-4c69-b93c-5faaac76eef5", + "type": 1, + "widget": "PositionableDualRollerShutter", + "oid": "a1802cb8-04bb-4e56-8c7f-0d4fb1f18635", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1742246963000, + "lastUpdateTime": 1742246963000, + "label": "Pantry Screen", + "deviceURL": "io://1234-5678-5010/2890799", + "shortcut": false, + "controllableName": "io:VerticalInteriorBlindVeluxIOComponent", + "definition": { + "commands": [ + { + "commandName": "addLockLevel", + "nparams": 2 + }, + { + "commandName": "advancedRefresh", + "nparams": 2 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "removeLockLevel", + "nparams": 1 + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "eventBased": true, + "type": "DataState", + "qualifiedName": "core:CommandLockLevelsState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableTiltedScreen", + "uiProfiles": [ + "StatefulCloseableBlind", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "Screen", + "qualifiedName": "io:VerticalInteriorBlindVeluxIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Pantry Screen" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:CommandLockLevelsState", + "type": 3, + "value": "[]", + "lastUpdateTime": 1742246973000 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "low" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 38.0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 0 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "VELUX" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "0000000000000000fb14" + } + ], + "available": true, + "enabled": true, + "placeOID": "45fc389e-7423-4dcd-a9d6-d50a8d5dee9b", + "type": 1, + "widget": "PositionableTiltedScreen", + "oid": "b35fba2b-81b0-4aee-9e46-59528b8e50f7", + "uiClass": "Screen" + }, + { + "creationTime": 1742246963000, + "lastUpdateTime": 1742246963000, + "label": "Studio Window", + "deviceURL": "io://1234-5678-5010/3912866", + "shortcut": false, + "controllableName": "io:WindowOpenerVeluxIOComponent", + "definition": { + "commands": [ + { + "commandName": "addLockLevel", + "nparams": 2 + }, + { + "commandName": "advancedRefresh", + "nparams": 2 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "goToAlias", + "nparams": 1 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "removeLockLevel", + "nparams": 1 + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "commandName": "saveAlias", + "nparams": 1 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "eventBased": true, + "type": "DataState", + "qualifiedName": "core:CommandLockLevelsState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ReachedAliasesState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableTiltedWindow", + "uiProfiles": [ + "StatefulCloseableWindow", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "Window", + "qualifiedName": "io:WindowOpenerVeluxIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Studio Window" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:CommandLockLevelsState", + "type": 3, + "value": "[]", + "lastUpdateTime": 1742246973000 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 70.0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:ReachedAliasesState", + "type": 10, + "value": [] + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "0000000000000000f502" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "VELUX" + }, + { + "name": "core:SupportedAliases", + "type": 10, + "value": [ + { + "features": ["openClosePosition"], + "id": "55299", + "type": "ventilation" + } + ] + }, + { + "name": "io:Features", + "type": 10, + "value": [ + { + "name": "alias" + }, + { + "name": "openClosePosition" + } + ] + } + ], + "available": true, + "enabled": true, + "placeOID": "a9641b20-ec31-4797-819c-77cad5091bb4", + "type": 1, + "widget": "PositionableTiltedWindow", + "oid": "c36d72e0-0e1d-479e-bbb6-4eac7e386142", + "uiClass": "Window" + }, + { + "creationTime": 1742246960000, + "lastUpdateTime": 1742246960000, + "label": "Workshop Screen", + "deviceURL": "io://1234-5678-5010/4905039", + "shortcut": false, + "controllableName": "io:VerticalInteriorBlindVeluxIOComponent", + "definition": { + "commands": [ + { + "commandName": "addLockLevel", + "nparams": 2 + }, + { + "commandName": "advancedRefresh", + "nparams": 2 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "removeLockLevel", + "nparams": 1 + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "eventBased": true, + "type": "DataState", + "qualifiedName": "core:CommandLockLevelsState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableTiltedScreen", + "uiProfiles": [ + "StatefulCloseableBlind", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "Screen", + "qualifiedName": "io:VerticalInteriorBlindVeluxIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Workshop Screen" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:CommandLockLevelsState", + "type": 3, + "value": "[]", + "lastUpdateTime": 1742246973000 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 64.0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 0 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "0000000000000000fb14" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "VELUX" + } + ], + "available": true, + "enabled": true, + "placeOID": "45fc389e-7423-4dcd-a9d6-d50a8d5dee9b", + "type": 1, + "widget": "PositionableTiltedScreen", + "oid": "97df0ee7-d90e-44fa-b626-b566dc17b9e6", + "uiClass": "Screen" + }, + { + "creationTime": 1742246955000, + "lastUpdateTime": 1742246955000, + "label": "Laundry Screen", + "deviceURL": "io://1234-5678-5010/5719467", + "shortcut": false, + "controllableName": "io:VerticalInteriorBlindVeluxIOComponent", + "definition": { + "commands": [ + { + "commandName": "addLockLevel", + "nparams": 2 + }, + { + "commandName": "advancedRefresh", + "nparams": 2 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "removeLockLevel", + "nparams": 1 + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "eventBased": true, + "type": "DataState", + "qualifiedName": "core:CommandLockLevelsState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableTiltedScreen", + "uiProfiles": [ + "StatefulCloseableBlind", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "Screen", + "qualifiedName": "io:VerticalInteriorBlindVeluxIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Laundry Screen" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:CommandLockLevelsState", + "type": 3, + "value": "[]", + "lastUpdateTime": 1742246973000 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 42.0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 50 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "VELUX" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "0000000000000000fb14" + } + ], + "available": true, + "enabled": true, + "placeOID": "45fc389e-7423-4dcd-a9d6-d50a8d5dee9b", + "type": 1, + "widget": "PositionableTiltedScreen", + "oid": "ed36d702-31d6-417e-9dd2-8efcb6667526", + "uiClass": "Screen" + }, + { + "creationTime": 1740139813000, + "lastUpdateTime": 1740139813000, + "label": "** *(**)*", + "deviceURL": "io://1234-5678-5010/8508653", + "shortcut": false, + "controllableName": "io:StackComponent", + "definition": { + "commands": [ + { + "commandName": "advancedSomfyDiscover", + "nparams": 1 + }, + { + "commandName": "discover1WayController", + "nparams": 2 + }, + { + "commandName": "discoverActuators", + "nparams": 1 + }, + { + "commandName": "discoverSensors", + "nparams": 1 + }, + { + "commandName": "discoverSomfyUnsetActuators", + "nparams": 0 + }, + { + "commandName": "joinNetwork", + "nparams": 0 + }, + { + "commandName": "resetNetworkSecurity", + "nparams": 0 + }, + { + "commandName": "shareNetwork", + "nparams": 0 + } + ], + "states": [], + "dataProperties": [], + "widgetName": "IOStack", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "io:StackComponent", + "type": "PROTOCOL_GATEWAY" + }, + "available": true, + "enabled": true, + "placeOID": "8dc074ea-a179-4df4-8d7f-0e19edf33fae", + "type": 5, + "widget": "IOStack", + "oid": "f5e307bb-9102-4962-8fb0-afc501d1c14f", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1740136141000, + "lastUpdateTime": 1740136141000, + "label": "** ** **", + "deviceURL": "ogp://1234-5678-5010/00000BE8", + "shortcut": false, + "controllableName": "ogp:Bridge", + "definition": { + "commands": [ + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "reset", + "nparams": 0 + }, + { + "commandName": "sendPrivate", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:AvailabilityState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DataState", + "qualifiedName": "core:Private10State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private1State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private2State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private3State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private4State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private5State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private6State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private7State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private8State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private9State" + }, + { + "type": "DataState", + "qualifiedName": "core:RemovableState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + } + ], + "dataProperties": [], + "widgetName": "DynamicBridge", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "ogp:Bridge", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "** ** **" + } + ], + "attributes": [ + { + "name": "core:Technology", + "type": 3, + "value": "KNX" + }, + { + "name": "core:ManufacturerReference", + "type": 3, + "value": "OGP KNX Bridge" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Overkiz" + }, + { + "name": "ogp:Features", + "type": 10, + "value": [ + { + "name": "private" + }, + { + "name": "reset" + }, + { + "name": "identification" + } + ] + } + ], + "available": true, + "enabled": true, + "placeOID": "8dc074ea-a179-4df4-8d7f-0e19edf33fae", + "type": 1, + "widget": "DynamicBridge", + "oid": "d4dd9507-3d10-4737-8867-0b2830d86ad3", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1740136141000, + "lastUpdateTime": 1740136141000, + "label": "** ** **", + "deviceURL": "ogp://1234-5678-5010/0003FEF3", + "shortcut": false, + "controllableName": "ogp:Bridge", + "definition": { + "commands": [ + { + "commandName": "discover", + "nparams": 0 + }, + { + "commandName": "reset", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:AvailabilityState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DataState", + "qualifiedName": "core:RemovableState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + } + ], + "dataProperties": [], + "widgetName": "DynamicBridge", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "ogp:Bridge", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "** ** **" + } + ], + "attributes": [ + { + "name": "ogp:Features", + "type": 10, + "value": [ + { + "name": "identification", + "commandLess": true + }, + { + "name": "discovery" + }, + { + "name": "reset" + } + ] + }, + { + "name": "core:ManufacturerReference", + "type": 3, + "value": "OGP Sonos Bridge" + }, + { + "name": "core:Technology", + "type": 3, + "value": "Sonos" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Overkiz" + } + ], + "available": true, + "enabled": true, + "placeOID": "8dc074ea-a179-4df4-8d7f-0e19edf33fae", + "type": 1, + "widget": "DynamicBridge", + "oid": "db39d06b-c20f-4a62-bba1-c080fc5b622d", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1740136141000, + "lastUpdateTime": 1740136141000, + "label": "** ** **", + "deviceURL": "ogp://1234-5678-5010/039575E9", + "shortcut": false, + "controllableName": "ogp:Bridge", + "definition": { + "commands": [ + { + "commandName": "discover", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:AvailabilityState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DataState", + "qualifiedName": "core:RemovableState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + } + ], + "dataProperties": [], + "widgetName": "DynamicBridge", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "ogp:Bridge", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "** ** **" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Overkiz" + }, + { + "name": "core:ManufacturerReference", + "type": 3, + "value": "OGP Siegenia Bridge" + }, + { + "name": "ogp:Features", + "type": 10, + "value": [ + { + "name": "discovery" + }, + { + "name": "identification" + } + ] + }, + { + "name": "core:Technology", + "type": 3, + "value": "Siegenia" + } + ], + "available": true, + "enabled": true, + "placeOID": "8dc074ea-a179-4df4-8d7f-0e19edf33fae", + "type": 1, + "widget": "DynamicBridge", + "oid": "d8aa1fbe-f0bd-4b7a-b849-ec2fd3e34be4", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1740136140000, + "lastUpdateTime": 1740136140000, + "label": "** ** **", + "deviceURL": "ogp://1234-5678-5010/09E45393", + "shortcut": false, + "controllableName": "ogp:Bridge", + "definition": { + "commands": [ + { + "commandName": "discover", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:AvailabilityState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DataState", + "qualifiedName": "core:RemovableState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + } + ], + "dataProperties": [], + "widgetName": "DynamicBridge", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "ogp:Bridge", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "** ** **" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Overkiz" + }, + { + "name": "core:ManufacturerReference", + "type": 3, + "value": "OGP Intesis Bridge" + }, + { + "name": "ogp:Features", + "type": 10, + "value": [ + { + "name": "discovery" + }, + { + "name": "identification" + } + ] + }, + { + "name": "core:Technology", + "type": 3, + "value": "Intesis" + } + ], + "available": true, + "enabled": true, + "placeOID": "8dc074ea-a179-4df4-8d7f-0e19edf33fae", + "type": 1, + "widget": "DynamicBridge", + "oid": "119032a7-6972-4d4d-ae47-fb007a542ab3", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1740136137000, + "lastUpdateTime": 1740136137000, + "label": "** *(**)*", + "deviceURL": "zigbee://1234-5678-5010/65535", + "shortcut": false, + "controllableName": "zigbee:TransceiverV3_0Component", + "definition": { + "commands": [], + "states": [], + "dataProperties": [], + "widgetName": "ZigbeeStack", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "zigbee:TransceiverV3_0Component", + "type": "PROTOCOL_GATEWAY" + }, + "available": true, + "enabled": true, + "placeOID": "8dc074ea-a179-4df4-8d7f-0e19edf33fae", + "type": 5, + "widget": "ZigbeeStack", + "oid": "08fa5c0f-95ba-410a-8a66-4cb55c0d508c", + "uiClass": "ProtocolGateway" + } + ], + "zones": [], + "resellerDelegationType": "NEVER", + "disconnectionConfiguration": { + "notificationTitle": "[$[setupLabel]] : Alarm", + "notificationText": "Ihre Somfy Smart-Home-Box hat keine Internetverbindung", + "targetPushSubscriptions": ["e52168ff-5284-4f6e-8811-4e2775f71164"], + "notificationType": "PUSH" + }, + "oid": "a738165b-71f0-49a6-9b1d-a1ed4d2616fb", + "rootPlace": { + "creationTime": 1740136137000, + "lastUpdateTime": 1740136137000, + "label": "My House", + "type": 0, + "oid": "8dc074ea-a179-4df4-8d7f-0e19edf33fae", + "subPlaces": [ + { + "creationTime": 1742249897000, + "lastUpdateTime": 1742249897000, + "label": "Loft", + "type": 34, + "metadata": "{\"color\":\"#FAB800\"}", + "oid": "a9641b20-ec31-4797-819c-77cad5091bb4", + "subPlaces": [] + }, + { + "creationTime": 1742250122000, + "lastUpdateTime": 1742250122000, + "label": "Veranda", + "type": 5, + "metadata": "{\"color\":\"#E3006A\"}", + "oid": "7dd0a42a-6006-4c69-b93c-5faaac76eef5", + "subPlaces": [] + }, + { + "creationTime": 1742247020000, + "lastUpdateTime": 1742247020000, + "label": "Playroom", + "type": 8, + "metadata": "{\"color\":\"#12AABB\"}", + "oid": "45fc389e-7423-4dcd-a9d6-d50a8d5dee9b", + "subPlaces": [] + }, + { + "creationTime": 1742247106000, + "lastUpdateTime": 1742247106000, + "label": "Study", + "type": 34, + "metadata": "{\"color\":\"#FAB800\"}", + "oid": "8ba89c86-a590-4a3c-b352-4b95e906e9c9", + "subPlaces": [] + } + ] + }, + "features": [] +} diff --git a/tests/components/overkiz/fixtures/setup/cloud_somfy_tahoma_v2_europe.json b/tests/components/overkiz/fixtures/setup/cloud_somfy_tahoma_v2_europe.json new file mode 100644 index 000000000000..b046e834e87d --- /dev/null +++ b/tests/components/overkiz/fixtures/setup/cloud_somfy_tahoma_v2_europe.json @@ -0,0 +1,6985 @@ +{ + "creationTime": 1501224054000, + "lastUpdateTime": 1501224054000, + "id": "SETUP-1234-1234-6233", + "location": { + "creationTime": 1501224054000, + "lastUpdateTime": 1536691223000, + "city": "* * *", + "country": "*", + "postalCode": "*", + "addressLine1": "*, * * *", + "addressLine2": "", + "timezone": "Europe/Paris", + "longitude": "*", + "latitude": "*", + "twilightMode": 2, + "twilightAngle": "CIVIL", + "twilightCity": "paris", + "summerSolsticeDuskMinutes": 1290, + "winterSolsticeDuskMinutes": 990, + "twilightOffsetEnabled": true, + "dawnOffset": 0, + "duskOffset": -70, + "countryCode": "FR" + }, + "gateways": [ + { + "gatewayId": "1234-1234-6233", + "type": 29, + "subType": 13, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "alive": true, + "timeReliable": true, + "connectivity": { + "status": "OK", + "protocolVersion": "2021.2.4" + }, + "upToDate": true, + "updateStatus": "UP_TO_DATE", + "syncInProgress": false, + "functions": "INTERNET_AUTHORIZATION,SCENARIO_DOWNLOAD,SCENARIO_AUTO_LAUNCHING,SCENARIO_TELECO_LAUNCHING,INTERNET_UPLOAD,INTERNET_UPDATE,TRIGGERS_SENSORS", + "mode": "ACTIVE" + } + ], + "devices": [ + { + "creationTime": 1527329167000, + "lastUpdateTime": 1527329167000, + "label": "* *", + "deviceURL": "camera://1234-1234-6233/00408cbef1e6", + "shortcut": false, + "controllableName": "camera:GenericCameraComponent", + "definition": { + "commands": [ + { + "commandName": "takePicture", + "nparams": 0 + }, + { + "commandName": "takePictureSequence", + "nparams": 2 + } + ], + "states": [], + "dataProperties": [], + "widgetName": "GenericCamera", + "uiProfiles": ["PictureCamera"], + "uiClass": "Camera", + "qualifiedName": "camera:GenericCameraComponent", + "type": "ACTUATOR" + }, + "available": false, + "enabled": false, + "placeOID": "bcbb34ef-2241-43a1-9c5b-523aa0563ec3", + "widget": "GenericCamera", + "type": 1, + "oid": "62747028-82a6-4770-a556-4858f879d1bd", + "uiClass": "Camera" + }, + { + "creationTime": 1606823644000, + "lastUpdateTime": 1606823644000, + "label": "* (*)", + "deviceURL": "homekit://1234-1234-6233/stack", + "shortcut": false, + "controllableName": "homekit:StackComponent", + "definition": { + "commands": [ + { + "commandName": "deleteControllers", + "nparams": 0 + } + ], + "states": [], + "dataProperties": [], + "widgetName": "HomekitStack", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "homekit:StackComponent", + "type": "PROTOCOL_GATEWAY" + }, + "attributes": [ + { + "name": "homekit:SetupPayload", + "type": 3, + "value": "*://*" + }, + { + "name": "homekit:SetupCode", + "type": 3, + "value": "*" + } + ], + "available": true, + "enabled": true, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "widget": "HomekitStack", + "type": 5, + "oid": "7cd791e0-19e3-43b1-9c02-44b457ca0ff7", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1501224146000, + "lastUpdateTime": 1501224146000, + "label": "*", + "deviceURL": "internal://1234-1234-6233/alarm/0", + "shortcut": false, + "controllableName": "internal:TSKAlarmComponent", + "definition": { + "commands": [ + { + "commandName": "alarmOff", + "nparams": 0 + }, + { + "commandName": "alarmOn", + "nparams": 0 + }, + { + "commandName": "arm", + "nparams": 0 + }, + { + "commandName": "disarm", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "refreshAlarmDelay", + "nparams": 0 + }, + { + "commandName": "refreshCurrentAlarmMode", + "nparams": 0 + }, + { + "commandName": "refreshIntrusionDetected", + "nparams": 0 + }, + { + "commandName": "setAlarmDelay", + "nparams": 1 + }, + { + "commandName": "alarmPartial1", + "nparams": 0 + }, + { + "commandName": "alarmPartial2", + "nparams": 0 + }, + { + "commandName": "setIntrusionDetected", + "nparams": 1 + }, + { + "commandName": "setTargetAlarmMode", + "nparams": 1 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "ContinuousState", + "qualifiedName": "internal:AlarmDelayState" + }, + { + "type": "DiscreteState", + "values": ["off", "partial1", "partial2", "total"], + "qualifiedName": "internal:CurrentAlarmModeState" + }, + { + "type": "DiscreteState", + "values": ["detected", "notDetected", "pending", "sos"], + "qualifiedName": "internal:IntrusionDetectedState" + }, + { + "type": "DiscreteState", + "values": ["off", "partial1", "partial2", "sos", "total"], + "qualifiedName": "internal:TargetAlarmModeState" + } + ], + "dataProperties": [], + "widgetName": "TSKAlarmController", + "uiProfiles": ["Alarm", "Switchable"], + "uiClass": "Alarm", + "qualifiedName": "internal:TSKAlarmComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "* *" + }, + { + "name": "internal:CurrentAlarmModeState", + "type": 3, + "value": "off" + }, + { + "name": "internal:AlarmDelayState", + "type": 1, + "value": 30 + }, + { + "name": "internal:TargetAlarmModeState", + "type": 3, + "value": "off" + }, + { + "name": "internal:IntrusionDetectedState", + "type": 3, + "value": "notDetected" + } + ], + "available": true, + "enabled": true, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "widget": "TSKAlarmController", + "type": 1, + "oid": "7378d395-a3df-4ee5-bd3d-ab958dc649dd", + "uiClass": "Alarm" + }, + { + "creationTime": 1501224054000, + "lastUpdateTime": 1501224054000, + "label": "* *", + "deviceURL": "internal://1234-1234-6233/pod/0", + "shortcut": false, + "controllableName": "internal:PodV2Component", + "metadata": "{\"tahoma\":{\"touchButtonFlag\":true}}", + "definition": { + "commands": [ + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "update", + "nparams": 0 + }, + { + "commandName": "setCountryCode", + "nparams": 1 + }, + { + "commandName": "activateCalendar", + "nparams": 0 + }, + { + "commandName": "deactivateCalendar", + "nparams": 0 + }, + { + "commandName": "refreshBatteryStatus", + "nparams": 0 + }, + { + "commandName": "refreshPodMode", + "nparams": 0 + }, + { + "commandName": "refreshUpdateStatus", + "nparams": 0 + }, + { + "commandName": "setCalendar", + "nparams": 1 + }, + { + "commandName": "setLightingLedPodMode", + "nparams": 1 + }, + { + "commandName": "setPodLedOff", + "nparams": 0 + }, + { + "commandName": "setPodLedOn", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["offline", "online"], + "qualifiedName": "core:ConnectivityState" + }, + { + "type": "DataState", + "qualifiedName": "core:CountryCodeState" + }, + { + "type": "DiscreteState", + "values": ["pressed", "stop"], + "qualifiedName": "core:CyclicButtonState" + }, + { + "type": "DataState", + "qualifiedName": "core:LocalIPv4AddressState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "ContinuousState", + "qualifiedName": "internal:BatteryStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "internal:LightingLedPodModeState" + } + ], + "dataProperties": [], + "widgetName": "Pod", + "uiProfiles": ["UpdatableComponent"], + "uiClass": "Pod", + "qualifiedName": "internal:PodV2Component", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "*" + }, + { + "name": "internal:BatteryStatusState", + "type": 3, + "value": "no" + }, + { + "name": "core:CyclicButtonState", + "type": 3, + "value": "pressed" + }, + { + "name": "internal:LightingLedPodModeState", + "type": 2, + "value": 0.0 + }, + { + "name": "core:CountryCodeState", + "type": 3, + "value": "FR" + }, + { + "name": "core:LocalIPv4AddressState", + "type": 3, + "value": "192.168.50.4" + } + ], + "available": true, + "enabled": true, + "placeOID": "48200981-d96f-4a75-bcf0-a3c6f0b692dc", + "widget": "Pod", + "type": 1, + "oid": "e6f12045-b956-4e32-874d-8096860a9df4", + "uiClass": "Pod" + }, + { + "creationTime": 1521964729000, + "lastUpdateTime": 1521964729000, + "label": "Main Garage Door", + "deviceURL": "io://1234-1234-6233/1166863", + "shortcut": false, + "controllableName": "io:GarageOpenerIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open", "unknown"], + "qualifiedName": "core:OpenClosedUnknownState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableGarageDoor", + "uiProfiles": [ + "StatefulCloseableGarageOpener", + "StatefulCloseable", + "Closeable", + "OpenClose" + ], + "uiClass": "GarageDoor", + "qualifiedName": "io:GarageOpenerIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Main Garage Door" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 80.0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedUnknownState", + "type": 3, + "value": "closed" + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5047247X47?" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + } + ], + "available": true, + "enabled": true, + "placeOID": "bcbb34ef-2241-43a1-9c5b-523aa0563ec3", + "widget": "PositionableGarageDoor", + "type": 1, + "oid": "0df95043-359c-4b3d-9147-f49b2b35053c", + "uiClass": "GarageDoor" + }, + { + "creationTime": 1552163547000, + "lastUpdateTime": 1552163547000, + "label": "Garden House Shutter", + "deviceURL": "io://1234-1234-6233/12184029", + "shortcut": false, + "controllableName": "io:RollerShutterGenericIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterGenericIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Garden House Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 98.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 86 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode" + ] + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5100394X23?" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + } + ], + "available": true, + "enabled": true, + "placeOID": "f4f6bdb1-3228-4da2-8312-7a19f4ef3b55", + "widget": "PositionableRollerShutter", + "type": 1, + "oid": "e62870b2-0c90-41d7-a188-7972ea373299", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1547156714000, + "lastUpdateTime": 1547156714000, + "label": "Bedroom Blinds", + "deviceURL": "io://1234-1234-6233/13064380", + "shortcut": false, + "controllableName": "io:RollerShutterGenericIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterGenericIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Bedroom Blinds" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 68.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 86 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode" + ] + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5100394X23?" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + } + ], + "available": true, + "enabled": true, + "placeOID": "972455eb-4f91-4095-bf42-55c234bb6238", + "widget": "PositionableRollerShutter", + "type": 1, + "oid": "f2fc138e-ad20-4a92-b834-957e047737c6", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1537640682000, + "lastUpdateTime": 1537640682000, + "label": "Kitchen Shutter", + "deviceURL": "io://1234-1234-6233/13136078", + "shortcut": false, + "controllableName": "io:RollerShutterGenericIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterGenericIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Kitchen Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 66.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 0 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 87 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 0 + } + ], + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode" + ] + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5100394X22?" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + } + ], + "available": true, + "enabled": true, + "placeOID": "9b4aeb55-07b3-4088-920e-c08405000ce6", + "widget": "PositionableRollerShutter", + "type": 1, + "oid": "c5559877-c35d-4486-9edb-d44dd2d27ba4", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1535908328000, + "lastUpdateTime": 1535908328000, + "label": "Office Shutter", + "deviceURL": "io://1234-1234-6233/13911608", + "shortcut": false, + "controllableName": "io:RollerShutterGenericIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterGenericIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Office Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 70.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 72 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode" + ] + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5100394X22?" + } + ], + "available": true, + "enabled": true, + "placeOID": "9b4aeb55-07b3-4088-920e-c08405000ce6", + "widget": "PositionableRollerShutter", + "type": 1, + "oid": "858aaac0-0fad-474a-9d95-1cc2a0938b6b", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1501224336000, + "lastUpdateTime": 1501224336000, + "label": "* * *&*", + "deviceURL": "io://1234-1234-6233/16168460", + "shortcut": false, + "controllableName": "io:OnOffIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "commandName": "onWithTimer", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setOnOff", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["off", "on"], + "qualifiedName": "core:OnOffState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "StatefulOnOff", + "uiProfiles": [ + "StatefulSwitchablePlug", + "StatefulSwitchable", + "Switchable" + ], + "uiClass": "OnOff", + "qualifiedName": "io:OnOffIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "* * *&*" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 64.0 + }, + { + "name": "core:OnOffState", + "type": 3, + "value": "off" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "VELUX" + } + ], + "available": true, + "enabled": true, + "placeOID": "eb7f2ac0-953c-4a35-a511-afad8865e3e1", + "widget": "StatefulOnOff", + "type": 1, + "oid": "625d7c09-d464-4e47-8e3f-f44c7ead62bd", + "uiClass": "OnOff" + }, + { + "creationTime": 1600767469000, + "lastUpdateTime": 1600767469000, + "label": "* (*)", + "deviceURL": "io://1234-1234-6233/1684749", + "shortcut": false, + "controllableName": "io:StackComponent", + "definition": { + "commands": [ + { + "commandName": "advancedSomfyDiscover", + "nparams": 1 + }, + { + "commandName": "discover1WayController", + "nparams": 2 + }, + { + "commandName": "discoverActuators", + "nparams": 1 + }, + { + "commandName": "discoverSensors", + "nparams": 1 + }, + { + "commandName": "discoverSomfyUnsetActuators", + "nparams": 0 + }, + { + "commandName": "joinNetwork", + "nparams": 0 + }, + { + "commandName": "resetNetworkSecurity", + "nparams": 0 + }, + { + "commandName": "shareNetwork", + "nparams": 0 + } + ], + "states": [], + "dataProperties": [], + "widgetName": "IOStack", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "io:StackComponent", + "type": "PROTOCOL_GATEWAY" + }, + "available": true, + "enabled": true, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "widget": "IOStack", + "type": 5, + "oid": "436039b9-906b-4c2f-8543-9e7eb3d451b5", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1538225691000, + "lastUpdateTime": 1538225691000, + "label": "Patio Shutter", + "deviceURL": "io://1234-1234-6233/180461", + "shortcut": false, + "controllableName": "io:RollerShutterGenericIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterGenericIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Patio Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 60.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 81 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode" + ] + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5100394X22?" + } + ], + "available": true, + "enabled": true, + "placeOID": "9b4aeb55-07b3-4088-920e-c08405000ce6", + "widget": "PositionableRollerShutter", + "type": 1, + "oid": "6c21d1f9-1f20-4548-9376-a63ba323fa25", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1624791003000, + "lastUpdateTime": 1624791003000, + "label": "*", + "deviceURL": "io://1234-1234-6233/2155276", + "shortcut": false, + "controllableName": "io:AlarmIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "alarmOff", + "nparams": 0 + }, + { + "commandName": "alarmOn", + "nparams": 0 + }, + { + "commandName": "alarmZoneOn", + "nparams": 1 + }, + { + "commandName": "arm", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "disarm", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "refreshState", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:ActiveZonesState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "StatefulAlarmController", + "uiProfiles": ["Alarm"], + "uiClass": "Alarm", + "qualifiedName": "io:AlarmIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "*" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:ActiveZonesState", + "type": 3, + "value": "" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5068650X07?" + } + ], + "available": true, + "enabled": true, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "widget": "StatefulAlarmController", + "type": 1, + "oid": "f62d1cc0-8c2f-45bb-b500-8d785f68537b", + "uiClass": "Alarm" + }, + { + "creationTime": 1538767702000, + "lastUpdateTime": 1538767702000, + "label": "Dining Room Shutter", + "deviceURL": "io://1234-1234-6233/2487349", + "shortcut": false, + "controllableName": "io:RollerShutterGenericIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterGenericIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Dining Room Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 68.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 69 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode" + ] + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5100394X22?" + } + ], + "available": true, + "enabled": true, + "placeOID": "23eeca0a-9dbc-4e93-ae3d-c8ffe7e3464b", + "widget": "PositionableRollerShutter", + "type": 1, + "oid": "321566a2-9217-4b2d-a4f3-4b6bbf09e197", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1521829867000, + "lastUpdateTime": 1521829867000, + "label": "Side Garage Door", + "deviceURL": "io://1234-1234-6233/3880877", + "shortcut": false, + "controllableName": "io:GarageOpenerIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open", "unknown"], + "qualifiedName": "core:OpenClosedUnknownState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableGarageDoor", + "uiProfiles": [ + "StatefulCloseableGarageOpener", + "StatefulCloseable", + "Closeable", + "OpenClose" + ], + "uiClass": "GarageDoor", + "qualifiedName": "io:GarageOpenerIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Side Garage Door" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedUnknownState", + "type": 3, + "value": "closed" + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5047247X47?" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + } + ], + "available": true, + "enabled": true, + "placeOID": "bcbb34ef-2241-43a1-9c5b-523aa0563ec3", + "widget": "PositionableGarageDoor", + "type": 1, + "oid": "b69253cd-12a7-4a9e-b593-f794fa907d4a", + "uiClass": "GarageDoor" + }, + { + "creationTime": 1544643386000, + "lastUpdateTime": 1544643386000, + "label": "* * *", + "deviceURL": "io://1234-1234-6233/6852535", + "shortcut": false, + "controllableName": "io:OnOffIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "commandName": "onWithTimer", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setOnOff", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["off", "on"], + "qualifiedName": "core:OnOffState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "StatefulOnOff", + "uiProfiles": [ + "StatefulSwitchablePlug", + "StatefulSwitchable", + "Switchable" + ], + "uiClass": "OnOff", + "qualifiedName": "io:OnOffIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "* * *" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 82.0 + }, + { + "name": "core:OnOffState", + "type": 3, + "value": "off" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "VELUX" + } + ], + "available": true, + "enabled": true, + "placeOID": "a4482540-0184-42d5-828f-6a5585371025", + "widget": "StatefulOnOff", + "type": 1, + "oid": "ba8c9ad6-d68d-45fb-b488-bb0f4807206d", + "uiClass": "OnOff" + }, + { + "creationTime": 1549752813000, + "lastUpdateTime": 1549752813000, + "label": "Studio Shutter", + "deviceURL": "io://1234-1234-6233/7019474", + "shortcut": false, + "controllableName": "io:RollerShutterGenericIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterGenericIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Studio Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 68.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 86 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode" + ] + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5100394X23?" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + } + ], + "available": true, + "enabled": true, + "placeOID": "52459599-50ab-4a8e-ac20-72a40209b922", + "widget": "PositionableRollerShutter", + "type": 1, + "oid": "8978f321-1d10-4a8c-8f37-5a2e79bfb84e", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1536436626000, + "lastUpdateTime": 1536436626000, + "label": "Guest Room Shutter", + "deviceURL": "io://1234-1234-6233/8170693", + "shortcut": false, + "controllableName": "io:RollerShutterGenericIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterGenericIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Guest Room Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 48.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 84 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode" + ] + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5100394X22?" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + } + ], + "available": true, + "enabled": true, + "placeOID": "23eeca0a-9dbc-4e93-ae3d-c8ffe7e3464b", + "widget": "PositionableRollerShutter", + "type": 1, + "oid": "e364ff88-2e2e-40f2-bea6-691c75b8cf2a", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1561232093000, + "lastUpdateTime": 1561232093000, + "label": "Living Room Shutter", + "deviceURL": "io://1234-1234-6233/8939545", + "shortcut": false, + "controllableName": "io:RollerShutterGenericIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterGenericIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Living Room Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 68.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 86 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode" + ] + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5100394X23?" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + } + ], + "available": true, + "enabled": true, + "placeOID": "4c6de3bc-4f72-486c-853c-12ac36833a11", + "widget": "PositionableRollerShutter", + "type": 1, + "oid": "e3404c9f-7118-462f-87cc-f81213540b90", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1576263695000, + "lastUpdateTime": 1576263695000, + "label": "* *", + "deviceURL": "io://1234-1234-6233/9474368", + "shortcut": false, + "controllableName": "io:OnOffIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "commandName": "onWithTimer", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setOnOff", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["off", "on"], + "qualifiedName": "core:OnOffState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "StatefulOnOff", + "uiProfiles": [ + "StatefulSwitchablePlug", + "StatefulSwitchable", + "Switchable" + ], + "uiClass": "OnOff", + "qualifiedName": "io:OnOffIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "* *" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 100.0 + }, + { + "name": "core:OnOffState", + "type": 3, + "value": "off" + } + ], + "attributes": [ + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5136974A05?" + } + ], + "available": true, + "enabled": true, + "placeOID": "972455eb-4f91-4095-bf42-55c234bb6238", + "widget": "StatefulOnOff", + "type": 1, + "oid": "06bcb2a3-11d7-41e9-892c-0ae95675d29e", + "uiClass": "OnOff" + }, + { + "creationTime": 1558642434000, + "lastUpdateTime": 1558642434000, + "label": "Kids Room Shutter", + "deviceURL": "io://1234-1234-6233/9749383", + "shortcut": false, + "controllableName": "io:RollerShutterGenericIOComponent", + "definition": { + "commands": [ + { + "commandName": "advancedRefresh", + "nparams": 1 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "commandName": "delayedStopIdentify", + "nparams": 1 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "setClosure", + "nparams": 1 + }, + { + "commandName": "setDeployment", + "nparams": 1 + }, + { + "commandName": "setMemorized1Position", + "nparams": 1 + }, + { + "commandName": "setName", + "nparams": 1 + }, + { + "commandName": "setPosition", + "nparams": 1 + }, + { + "commandName": "setSecuredPosition", + "nparams": 1 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "wink", + "nparams": 1 + }, + { + "commandName": "runManufacturerSettingsCommand", + "nparams": 2 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "pairOneWayController", + "nparams": 2 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "setConfigState", + "nparams": 1 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairOneWayController", + "nparams": 2 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:AdditionalStatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:ClosureState" + }, + { + "type": "DiscreteState", + "values": ["good", "low", "normal", "verylow"], + "qualifiedName": "core:DiscreteRSSILevelState" + }, + { + "type": "DataState", + "qualifiedName": "core:ManufacturerSettingsState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:Memorized1PositionState" + }, + { + "type": "DiscreteState", + "values": ["false", "true"], + "qualifiedName": "core:MovingState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + }, + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:OpenClosedState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:PriorityLockTimerState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:RSSILevelState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:SecuredPositionState" + }, + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:StatusState" + }, + { + "type": "ContinuousState", + "qualifiedName": "core:TargetClosureState" + }, + { + "type": "DiscreteState", + "values": [ + "comfortLevel1", + "comfortLevel2", + "comfortLevel3", + "comfortLevel4", + "environmentProtection", + "humanProtection", + "userLevel1", + "userLevel2" + ], + "qualifiedName": "io:PriorityLockLevelState" + }, + { + "type": "DiscreteState", + "values": [ + "LSC", + "SAAC", + "SFC", + "UPS", + "externalGateway", + "localUser", + "myself", + "rain", + "security", + "temperature", + "timer", + "user", + "wind" + ], + "qualifiedName": "io:PriorityLockOriginatorState" + } + ], + "dataProperties": [ + { + "value": "500", + "qualifiedName": "core:identifyInterval" + } + ], + "widgetName": "PositionableRollerShutter", + "uiProfiles": [ + "StatefulCloseableShutter", + "StatefulCloseable", + "Closeable", + "StatefulOpenClose", + "OpenClose" + ], + "uiClass": "RollerShutter", + "qualifiedName": "io:RollerShutterGenericIOComponent", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "Kids Room Shutter" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 2, + "value": 54.0 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 86 + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode" + ] + }, + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5100394X23?" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + } + ], + "available": true, + "enabled": true, + "placeOID": "1f1d57f8-1471-4737-9498-4c8e312db332", + "widget": "PositionableRollerShutter", + "type": 1, + "oid": "18d9055a-5cd1-4efe-9000-1edbd2095330", + "uiClass": "RollerShutter" + }, + { + "creationTime": 1593517355000, + "lastUpdateTime": 1593517355000, + "label": "* (*)", + "deviceURL": "ogp://1234-1234-6233/00000BE8", + "shortcut": false, + "controllableName": "ogp:Bridge", + "definition": { + "commands": [ + { + "commandName": "sendPrivate", + "nparams": 1 + } + ], + "states": [ + { + "type": "DataState", + "qualifiedName": "core:Private10State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private1State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private2State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private3State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private4State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private5State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private6State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private7State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private8State" + }, + { + "type": "DataState", + "qualifiedName": "core:Private9State" + } + ], + "dataProperties": [], + "widgetName": "DynamicBridge", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "ogp:Bridge", + "type": "ACTUATOR" + }, + "attributes": [ + { + "name": "ogp:Features", + "type": 10, + "value": [ + { + "name": "private" + } + ] + } + ], + "available": true, + "enabled": true, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "widget": "DynamicBridge", + "type": 1, + "oid": "21e41630-58b9-4bd3-bd6a-497f0103afd4", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1593517357000, + "lastUpdateTime": 1593517357000, + "label": "* * *", + "deviceURL": "ogp://1234-1234-6233/039575E9", + "shortcut": false, + "controllableName": "ogp:Bridge", + "definition": { + "commands": [ + { + "commandName": "discover", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:AvailabilityState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + } + ], + "dataProperties": [], + "widgetName": "DynamicBridge", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "ogp:Bridge", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "* * *" + } + ], + "attributes": [ + { + "name": "core:ManufacturerReference", + "type": 3, + "value": "OGP Siegenia Bridge" + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Overkiz" + }, + { + "name": "core:Technology", + "type": 3, + "value": "Siegenia" + }, + { + "name": "ogp:Features", + "type": 10, + "value": [ + { + "name": "discovery" + }, + { + "name": "identification" + } + ] + } + ], + "available": true, + "enabled": true, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "widget": "DynamicBridge", + "type": 1, + "oid": "30302f1b-8afb-448b-8d5f-03541a6a5167", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1593517356000, + "lastUpdateTime": 1593517356000, + "label": "* * *", + "deviceURL": "ogp://1234-1234-6233/09E45393", + "shortcut": false, + "controllableName": "ogp:Bridge", + "definition": { + "commands": [ + { + "commandName": "discover", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "setName", + "nparams": 1 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["available", "unavailable"], + "qualifiedName": "core:AvailabilityState" + }, + { + "type": "DataState", + "qualifiedName": "core:NameState" + } + ], + "dataProperties": [], + "widgetName": "DynamicBridge", + "uiProfiles": ["Specific"], + "uiClass": "ProtocolGateway", + "qualifiedName": "ogp:Bridge", + "type": "ACTUATOR" + }, + "states": [ + { + "name": "core:NameState", + "type": 3, + "value": "* * *" + } + ], + "attributes": [ + { + "name": "core:Technology", + "type": 3, + "value": "Intesis" + }, + { + "name": "ogp:Features", + "type": 10, + "value": [ + { + "name": "discovery" + }, + { + "name": "identification" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Overkiz" + }, + { + "name": "core:ManufacturerReference", + "type": 3, + "value": "OGP Intesis Bridge" + } + ], + "available": true, + "enabled": true, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "widget": "DynamicBridge", + "type": 1, + "oid": "2059c114-b7a0-4b55-8124-c040477d9e52", + "uiClass": "ProtocolGateway" + }, + { + "creationTime": 1501225111000, + "lastUpdateTime": 1501225111000, + "label": "*é*é* *", + "deviceURL": "rtds://1234-1234-6233/124768", + "shortcut": false, + "controllableName": "rtds:RTDSRemoteControllerComponent", + "definition": { + "commands": [], + "states": [ + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerBatteryState" + }, + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerBipState" + }, + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerOrderTypeState" + }, + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerOriginatorState" + }, + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerSensingState" + }, + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerSirenState" + } + ], + "dataProperties": [], + "widgetName": "AlarmRemoteController", + "uiProfiles": ["Specific"], + "uiClass": "RemoteController", + "qualifiedName": "rtds:RTDSRemoteControllerComponent", + "type": "REMOTE_CONTROLLER" + }, + "states": [ + { + "name": "rtds:ControllerOriginatorState", + "type": 1, + "value": 2 + }, + { + "name": "rtds:ControllerSensingState", + "type": 3, + "value": "KO" + }, + { + "name": "rtds:ControllerBatteryState", + "type": 3, + "value": "OK" + }, + { + "name": "rtds:ControllerOrderTypeState", + "type": 3, + "value": "off" + } + ], + "available": true, + "enabled": true, + "placeOID": "48200981-d96f-4a75-bcf0-a3c6f0b692dc", + "widget": "AlarmRemoteController", + "type": 4, + "oid": "41e932ea-c52b-48d2-98f2-aebc6f72c51b", + "uiClass": "RemoteController" + }, + { + "creationTime": 1501225074000, + "lastUpdateTime": 1501225074000, + "label": "*é*é* *", + "deviceURL": "rtds://1234-1234-6233/169771", + "shortcut": false, + "controllableName": "rtds:RTDSRemoteControllerComponent", + "definition": { + "commands": [], + "states": [ + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerBatteryState" + }, + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerBipState" + }, + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerOrderTypeState" + }, + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerOriginatorState" + }, + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerSensingState" + }, + { + "type": "ContinuousState", + "qualifiedName": "rtds:ControllerSirenState" + } + ], + "dataProperties": [], + "widgetName": "AlarmRemoteController", + "uiProfiles": ["Specific"], + "uiClass": "RemoteController", + "qualifiedName": "rtds:RTDSRemoteControllerComponent", + "type": "REMOTE_CONTROLLER" + }, + "states": [ + { + "name": "rtds:ControllerOriginatorState", + "type": 1, + "value": 2 + }, + { + "name": "rtds:ControllerSensingState", + "type": 3, + "value": "KO" + }, + { + "name": "rtds:ControllerBatteryState", + "type": 3, + "value": "OK" + }, + { + "name": "rtds:ControllerOrderTypeState", + "type": 3, + "value": "off" + } + ], + "available": true, + "enabled": true, + "placeOID": "48200981-d96f-4a75-bcf0-a3c6f0b692dc", + "widget": "AlarmRemoteController", + "type": 4, + "oid": "7a465c7b-aff4-462d-b03c-40a8918df12a", + "uiClass": "RemoteController" + }, + { + "creationTime": 1501224458000, + "lastUpdateTime": 1501224458000, + "label": "*", + "deviceURL": "rtds://1234-1234-6233/232949", + "shortcut": false, + "controllableName": "rtds:RTDSMotionSensor", + "definition": { + "commands": [], + "states": [ + { + "eventBased": true, + "type": "DiscreteState", + "values": ["noPersonInside", "personInside"], + "qualifiedName": "core:OccupancyState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + } + ], + "dataProperties": [], + "widgetName": "MotionSensor", + "uiProfiles": ["OccupancyDetector"], + "uiClass": "OccupancySensor", + "qualifiedName": "rtds:RTDSMotionSensor", + "type": "SENSOR" + }, + "states": [ + { + "name": "core:OccupancyState", + "type": 3, + "value": "noPersonInside" + } + ], + "attributes": [ + { + "name": "core:PowerSourceType", + "type": 3, + "value": "battery" + } + ], + "available": true, + "enabled": true, + "placeOID": "bcbb34ef-2241-43a1-9c5b-523aa0563ec3", + "widget": "MotionSensor", + "type": 2, + "oid": "20171297-8c25-4107-ba0b-d750288e04d1", + "uiClass": "OccupancySensor" + }, + { + "creationTime": 1501224970000, + "lastUpdateTime": 1501224970000, + "label": "É*", + "deviceURL": "rtds://1234-1234-6233/246258", + "shortcut": false, + "controllableName": "rtds:RTDSMotionSensor", + "definition": { + "commands": [], + "states": [ + { + "eventBased": true, + "type": "DiscreteState", + "values": ["noPersonInside", "personInside"], + "qualifiedName": "core:OccupancyState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + } + ], + "dataProperties": [], + "widgetName": "MotionSensor", + "uiProfiles": ["OccupancyDetector"], + "uiClass": "OccupancySensor", + "qualifiedName": "rtds:RTDSMotionSensor", + "type": "SENSOR" + }, + "states": [ + { + "name": "core:OccupancyState", + "type": 3, + "value": "noPersonInside" + } + ], + "attributes": [ + { + "name": "core:PowerSourceType", + "type": 3, + "value": "battery" + } + ], + "available": true, + "enabled": true, + "placeOID": "50b9c516-c47a-4e19-bb09-771869349f3f", + "widget": "MotionSensor", + "type": 2, + "oid": "bf1443a2-86ec-4b00-b2fd-173c3abea21a", + "uiClass": "OccupancySensor" + }, + { + "creationTime": 1501224664000, + "lastUpdateTime": 1501224664000, + "label": "*", + "deviceURL": "rtds://1234-1234-6233/288316", + "shortcut": false, + "controllableName": "rtds:RTDSMotionSensor", + "definition": { + "commands": [], + "states": [ + { + "eventBased": true, + "type": "DiscreteState", + "values": ["noPersonInside", "personInside"], + "qualifiedName": "core:OccupancyState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + } + ], + "dataProperties": [], + "widgetName": "MotionSensor", + "uiProfiles": ["OccupancyDetector"], + "uiClass": "OccupancySensor", + "qualifiedName": "rtds:RTDSMotionSensor", + "type": "SENSOR" + }, + "states": [ + { + "name": "core:OccupancyState", + "type": 3, + "value": "noPersonInside" + } + ], + "attributes": [ + { + "name": "core:PowerSourceType", + "type": 3, + "value": "battery" + } + ], + "available": true, + "enabled": true, + "placeOID": "9b4aeb55-07b3-4088-920e-c08405000ce6", + "widget": "MotionSensor", + "type": 2, + "oid": "82db9927-fc29-483d-8727-0d8d75d44071", + "uiClass": "OccupancySensor" + }, + { + "creationTime": 1501224830000, + "lastUpdateTime": 1501224830000, + "label": "*é*", + "deviceURL": "rtds://1234-1234-6233/394765", + "shortcut": false, + "controllableName": "rtds:RTDSContactSensor", + "definition": { + "commands": [], + "states": [ + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:ContactState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + } + ], + "dataProperties": [], + "widgetName": "ContactSensor", + "uiProfiles": ["DoorContactSensor", "ContactDetector"], + "uiClass": "ContactSensor", + "qualifiedName": "rtds:RTDSContactSensor", + "type": "SENSOR" + }, + "states": [ + { + "name": "core:ContactState", + "type": 3, + "value": "closed" + } + ], + "attributes": [ + { + "name": "core:PowerSourceType", + "type": 3, + "value": "battery" + } + ], + "available": true, + "enabled": true, + "placeOID": "48200981-d96f-4a75-bcf0-a3c6f0b692dc", + "widget": "ContactSensor", + "type": 2, + "oid": "9cdaf8c7-2cd1-4260-9ff3-3908b023853c", + "uiClass": "ContactSensor" + }, + { + "creationTime": 1501224801000, + "lastUpdateTime": 1501224801000, + "label": "*", + "deviceURL": "rtds://1234-1234-6233/394781", + "shortcut": false, + "controllableName": "rtds:RTDSContactSensor", + "definition": { + "commands": [], + "states": [ + { + "type": "DiscreteState", + "values": ["closed", "open"], + "qualifiedName": "core:ContactState" + }, + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + } + ], + "dataProperties": [], + "widgetName": "ContactSensor", + "uiProfiles": ["DoorContactSensor", "ContactDetector"], + "uiClass": "ContactSensor", + "qualifiedName": "rtds:RTDSContactSensor", + "type": "SENSOR" + }, + "states": [ + { + "name": "core:ContactState", + "type": 3, + "value": "closed" + } + ], + "attributes": [ + { + "name": "core:PowerSourceType", + "type": 3, + "value": "battery" + } + ], + "available": true, + "enabled": true, + "placeOID": "48200981-d96f-4a75-bcf0-a3c6f0b692dc", + "widget": "ContactSensor", + "type": 2, + "oid": "eec4dc5d-a957-4489-9c68-5ca22f07c9f8", + "uiClass": "ContactSensor" + }, + { + "creationTime": 1501225017000, + "lastUpdateTime": 1501225017000, + "label": "*é* *", + "deviceURL": "rtds://1234-1234-6233/711548", + "shortcut": false, + "controllableName": "rtds:RTDSSmokeSensor", + "definition": { + "commands": [], + "states": [ + { + "type": "DiscreteState", + "values": ["dead", "lowBattery", "maintenanceRequired", "noDefect"], + "qualifiedName": "core:SensorDefectState" + }, + { + "eventBased": true, + "type": "DiscreteState", + "values": ["detected", "notDetected"], + "qualifiedName": "core:SmokeState" + } + ], + "dataProperties": [], + "widgetName": "SmokeSensor", + "uiProfiles": ["SmokeDetector"], + "uiClass": "SmokeSensor", + "qualifiedName": "rtds:RTDSSmokeSensor", + "type": "SENSOR" + }, + "states": [ + { + "name": "core:SmokeState", + "type": 3, + "value": "notDetected" + } + ], + "attributes": [ + { + "name": "core:PowerSourceType", + "type": 3, + "value": "battery" + } + ], + "available": true, + "enabled": true, + "placeOID": "50b9c516-c47a-4e19-bb09-771869349f3f", + "widget": "SmokeSensor", + "type": 2, + "oid": "b47b71d9-8dfb-4096-bce2-e1401663b0ae", + "uiClass": "SmokeSensor" + }, + { + "creationTime": 1546191792000, + "lastUpdateTime": 1546191792000, + "label": "*", + "deviceURL": "upnpcontrol://1234-1234-6233/uuid:RINCON_7828CA300AD801400", + "shortcut": false, + "controllableName": "upnpcontrol:SonosPlayOneComponent", + "definition": { + "commands": [ + { + "commandName": "getMute", + "nparams": 0 + }, + { + "commandName": "getVolume", + "nparams": 0 + }, + { + "commandName": "mute", + "nparams": 0 + }, + { + "commandName": "next", + "nparams": 0 + }, + { + "commandName": "pause", + "nparams": 0 + }, + { + "commandName": "play", + "nparams": 0 + }, + { + "commandName": "previous", + "nparams": 0 + }, + { + "commandName": "rewind", + "nparams": 0 + }, + { + "commandName": "setVolume", + "nparams": 1 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "unmute", + "nparams": 0 + }, + { + "commandName": "getAllPlayingInfo", + "nparams": 0 + }, + { + "commandName": "getCurrentTransportActions", + "nparams": 0 + }, + { + "commandName": "getGroupMute", + "nparams": 0 + }, + { + "commandName": "getGroupVolume", + "nparams": 0 + }, + { + "commandName": "getMediaInfo", + "nparams": 0 + }, + { + "commandName": "getPositionInfo", + "nparams": 0 + }, + { + "commandName": "getSonosFavorites", + "nparams": 0 + }, + { + "commandName": "getSonosPlaylist", + "nparams": 0 + }, + { + "commandName": "getTransportInfo", + "nparams": 0 + }, + { + "commandName": "muteGroup", + "nparams": 0 + }, + { + "commandName": "playURI", + "nparams": 2 + }, + { + "commandName": "setGroupVolume", + "nparams": 1 + }, + { + "commandName": "unmuteGroup", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["forward", "pause", "playing", "rewind", "stop"], + "qualifiedName": "core:PlayState" + } + ], + "dataProperties": [], + "widgetName": "MediaRenderer", + "uiProfiles": ["StoppableMusicPlayer", "MusicPlayer", "VolumeControl"], + "uiClass": "MusicPlayer", + "qualifiedName": "upnpcontrol:SonosPlayOneComponent", + "type": "ACTUATOR" + }, + "attributes": [ + { + "name": "core:PortNumber", + "type": 3, + "value": "1400" + }, + { + "name": "core:IPAddress", + "type": 3, + "value": "192.168.0.25" + }, + { + "name": "core:ModelName", + "type": 3, + "value": "Sonos Play:1" + }, + { + "name": "core:GroupId", + "type": 3, + "value": "RINCON_7828CA300AD801400:orphan" + }, + { + "name": "upnpcontrol:SonosZoneName", + "type": 3, + "value": "Salon" + }, + { + "name": "upnpcontrol:Coordinator", + "type": 3, + "value": "true" + } + ], + "available": true, + "enabled": true, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "widget": "MediaRenderer", + "type": 1, + "oid": "dc212556-1fbb-402f-b239-97a46c0dbf65", + "uiClass": "MusicPlayer" + }, + { + "creationTime": 1526325424000, + "lastUpdateTime": 1526325424000, + "label": "* *:*", + "deviceURL": "upnpcontrol://1234-1234-6233/uuid:RINCON_7828CA3011E801400", + "shortcut": false, + "controllableName": "upnpcontrol:SonosPlayOneComponent", + "definition": { + "commands": [ + { + "commandName": "getMute", + "nparams": 0 + }, + { + "commandName": "getVolume", + "nparams": 0 + }, + { + "commandName": "mute", + "nparams": 0 + }, + { + "commandName": "next", + "nparams": 0 + }, + { + "commandName": "pause", + "nparams": 0 + }, + { + "commandName": "play", + "nparams": 0 + }, + { + "commandName": "previous", + "nparams": 0 + }, + { + "commandName": "rewind", + "nparams": 0 + }, + { + "commandName": "setVolume", + "nparams": 1 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "unmute", + "nparams": 0 + }, + { + "commandName": "getAllPlayingInfo", + "nparams": 0 + }, + { + "commandName": "getCurrentTransportActions", + "nparams": 0 + }, + { + "commandName": "getGroupMute", + "nparams": 0 + }, + { + "commandName": "getGroupVolume", + "nparams": 0 + }, + { + "commandName": "getMediaInfo", + "nparams": 0 + }, + { + "commandName": "getPositionInfo", + "nparams": 0 + }, + { + "commandName": "getSonosFavorites", + "nparams": 0 + }, + { + "commandName": "getSonosPlaylist", + "nparams": 0 + }, + { + "commandName": "getTransportInfo", + "nparams": 0 + }, + { + "commandName": "muteGroup", + "nparams": 0 + }, + { + "commandName": "playURI", + "nparams": 2 + }, + { + "commandName": "setGroupVolume", + "nparams": 1 + }, + { + "commandName": "unmuteGroup", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["forward", "pause", "playing", "rewind", "stop"], + "qualifiedName": "core:PlayState" + } + ], + "dataProperties": [], + "widgetName": "MediaRenderer", + "uiProfiles": ["StoppableMusicPlayer", "MusicPlayer", "VolumeControl"], + "uiClass": "MusicPlayer", + "qualifiedName": "upnpcontrol:SonosPlayOneComponent", + "type": "ACTUATOR" + }, + "attributes": [ + { + "name": "core:GroupId", + "type": 3, + "value": "RINCON_7828CA300AD801400:2999483800" + }, + { + "name": "upnpcontrol:SonosZoneName", + "type": 3, + "value": "Salle TV" + }, + { + "name": "core:IPAddress", + "type": 3, + "value": "192.168.0.36" + }, + { + "name": "core:PortNumber", + "type": 3, + "value": "1400" + }, + { + "name": "core:ModelName", + "type": 3, + "value": "Sonos PLAY:1" + }, + { + "name": "upnpcontrol:Coordinator", + "type": 3, + "value": "false" + } + ], + "available": true, + "enabled": true, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "widget": "MediaRenderer", + "type": 1, + "oid": "0e2f558c-82ed-485f-a41d-f4fba69a2846", + "uiClass": "MusicPlayer" + }, + { + "creationTime": 1546191792000, + "lastUpdateTime": 1546191792000, + "label": "*", + "deviceURL": "upnpcontrol://1234-1234-6233/uuid:RINCON_7828CACED56E01400", + "shortcut": false, + "controllableName": "upnpcontrol:SonosOneComponent", + "definition": { + "commands": [ + { + "commandName": "getMute", + "nparams": 0 + }, + { + "commandName": "getVolume", + "nparams": 0 + }, + { + "commandName": "mute", + "nparams": 0 + }, + { + "commandName": "next", + "nparams": 0 + }, + { + "commandName": "pause", + "nparams": 0 + }, + { + "commandName": "play", + "nparams": 0 + }, + { + "commandName": "previous", + "nparams": 0 + }, + { + "commandName": "rewind", + "nparams": 0 + }, + { + "commandName": "setVolume", + "nparams": 1 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "unmute", + "nparams": 0 + }, + { + "commandName": "getAllPlayingInfo", + "nparams": 0 + }, + { + "commandName": "getCurrentTransportActions", + "nparams": 0 + }, + { + "commandName": "getGroupMute", + "nparams": 0 + }, + { + "commandName": "getGroupVolume", + "nparams": 0 + }, + { + "commandName": "getMediaInfo", + "nparams": 0 + }, + { + "commandName": "getPositionInfo", + "nparams": 0 + }, + { + "commandName": "getSonosFavorites", + "nparams": 0 + }, + { + "commandName": "getSonosPlaylist", + "nparams": 0 + }, + { + "commandName": "getTransportInfo", + "nparams": 0 + }, + { + "commandName": "muteGroup", + "nparams": 0 + }, + { + "commandName": "playURI", + "nparams": 2 + }, + { + "commandName": "setGroupVolume", + "nparams": 1 + }, + { + "commandName": "unmuteGroup", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["forward", "pause", "playing", "rewind", "stop"], + "qualifiedName": "core:PlayState" + } + ], + "dataProperties": [], + "widgetName": "MediaRenderer", + "uiProfiles": ["StoppableMusicPlayer", "MusicPlayer", "VolumeControl"], + "uiClass": "MusicPlayer", + "qualifiedName": "upnpcontrol:SonosOneComponent", + "type": "ACTUATOR" + }, + "attributes": [ + { + "name": "core:IPAddress", + "type": 3, + "value": "192.168.50.24" + }, + { + "name": "core:ModelName", + "type": 3, + "value": "Sonos One" + }, + { + "name": "core:PortNumber", + "type": 3, + "value": "1400" + }, + { + "name": "upnpcontrol:Coordinator", + "type": 3, + "value": "true" + }, + { + "name": "core:GroupId", + "type": 3, + "value": "RINCON_7828CACED56E01400:3485796774" + }, + { + "name": "upnpcontrol:SonosZoneName", + "type": 3, + "value": "Cuisine" + } + ], + "available": true, + "enabled": true, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "widget": "MediaRenderer", + "type": 1, + "oid": "3b9121a4-3b20-4ac7-94ec-cd561ba58a40", + "uiClass": "MusicPlayer" + }, + { + "creationTime": 1526325424000, + "lastUpdateTime": 1526325424000, + "label": "*", + "deviceURL": "upnpcontrol://1234-1234-6233/uuid:RINCON_949F3E479FC001400", + "shortcut": false, + "controllableName": "upnpcontrol:SonosSubComponent", + "definition": { + "commands": [ + { + "commandName": "getMute", + "nparams": 0 + }, + { + "commandName": "getVolume", + "nparams": 0 + }, + { + "commandName": "mute", + "nparams": 0 + }, + { + "commandName": "next", + "nparams": 0 + }, + { + "commandName": "pause", + "nparams": 0 + }, + { + "commandName": "play", + "nparams": 0 + }, + { + "commandName": "previous", + "nparams": 0 + }, + { + "commandName": "rewind", + "nparams": 0 + }, + { + "commandName": "setVolume", + "nparams": 1 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "unmute", + "nparams": 0 + }, + { + "commandName": "getAllPlayingInfo", + "nparams": 0 + }, + { + "commandName": "getCurrentTransportActions", + "nparams": 0 + }, + { + "commandName": "getGroupMute", + "nparams": 0 + }, + { + "commandName": "getGroupVolume", + "nparams": 0 + }, + { + "commandName": "getMediaInfo", + "nparams": 0 + }, + { + "commandName": "getPositionInfo", + "nparams": 0 + }, + { + "commandName": "getSonosFavorites", + "nparams": 0 + }, + { + "commandName": "getSonosPlaylist", + "nparams": 0 + }, + { + "commandName": "getTransportInfo", + "nparams": 0 + }, + { + "commandName": "muteGroup", + "nparams": 0 + }, + { + "commandName": "playURI", + "nparams": 2 + }, + { + "commandName": "setGroupVolume", + "nparams": 1 + }, + { + "commandName": "unmuteGroup", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["forward", "pause", "playing", "rewind", "stop"], + "qualifiedName": "core:PlayState" + } + ], + "dataProperties": [], + "widgetName": "MediaRenderer", + "uiProfiles": ["StoppableMusicPlayer", "MusicPlayer", "VolumeControl"], + "uiClass": "MusicPlayer", + "qualifiedName": "upnpcontrol:SonosSubComponent", + "type": "ACTUATOR" + }, + "attributes": [ + { + "name": "upnpcontrol:Coordinator", + "type": 3, + "value": "true" + }, + { + "name": "core:GroupId", + "type": 3, + "value": "RINCON_949F3E479FC001400:1160201495" + }, + { + "name": "upnpcontrol:SonosZoneName", + "type": 3, + "value": "Sub" + }, + { + "name": "core:PortNumber", + "type": 3, + "value": "1400" + }, + { + "name": "core:IPAddress", + "type": 3, + "value": "192.168.50.66" + }, + { + "name": "core:ModelName", + "type": 3, + "value": "Sonos SUB" + } + ], + "available": true, + "enabled": true, + "placeOID": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "widget": "MediaRenderer", + "type": 1, + "oid": "635efc3b-b237-49f1-8b26-5adc05436be3", + "uiClass": "MusicPlayer" + }, + { + "creationTime": 1510775207000, + "lastUpdateTime": 1510775207000, + "label": "*", + "deviceURL": "upnpcontrol://1234-1234-6233/uuid:RINCON_B8E9372FDA1201400", + "shortcut": false, + "controllableName": "upnpcontrol:SonosPlayFiveComponent", + "definition": { + "commands": [ + { + "commandName": "getMute", + "nparams": 0 + }, + { + "commandName": "getVolume", + "nparams": 0 + }, + { + "commandName": "mute", + "nparams": 0 + }, + { + "commandName": "next", + "nparams": 0 + }, + { + "commandName": "pause", + "nparams": 0 + }, + { + "commandName": "play", + "nparams": 0 + }, + { + "commandName": "previous", + "nparams": 0 + }, + { + "commandName": "rewind", + "nparams": 0 + }, + { + "commandName": "setVolume", + "nparams": 1 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "unmute", + "nparams": 0 + }, + { + "commandName": "getAllPlayingInfo", + "nparams": 0 + }, + { + "commandName": "getCurrentTransportActions", + "nparams": 0 + }, + { + "commandName": "getGroupMute", + "nparams": 0 + }, + { + "commandName": "getGroupVolume", + "nparams": 0 + }, + { + "commandName": "getMediaInfo", + "nparams": 0 + }, + { + "commandName": "getPositionInfo", + "nparams": 0 + }, + { + "commandName": "getSonosFavorites", + "nparams": 0 + }, + { + "commandName": "getSonosPlaylist", + "nparams": 0 + }, + { + "commandName": "getTransportInfo", + "nparams": 0 + }, + { + "commandName": "muteGroup", + "nparams": 0 + }, + { + "commandName": "playURI", + "nparams": 2 + }, + { + "commandName": "setGroupVolume", + "nparams": 1 + }, + { + "commandName": "unmuteGroup", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["forward", "pause", "playing", "rewind", "stop"], + "qualifiedName": "core:PlayState" + } + ], + "dataProperties": [], + "widgetName": "MediaRenderer", + "uiProfiles": ["StoppableMusicPlayer", "MusicPlayer", "VolumeControl"], + "uiClass": "MusicPlayer", + "qualifiedName": "upnpcontrol:SonosPlayFiveComponent", + "type": "ACTUATOR" + }, + "attributes": [ + { + "name": "upnpcontrol:SonosZoneName", + "type": 3, + "value": "Palier" + }, + { + "name": "core:GroupId", + "type": 3, + "value": "RINCON_B8E9372FDA1201400:3208036123" + }, + { + "name": "core:IPAddress", + "type": 3, + "value": "192.168.50.26" + }, + { + "name": "core:PortNumber", + "type": 3, + "value": "1400" + }, + { + "name": "upnpcontrol:Coordinator", + "type": 3, + "value": "true" + } + ], + "available": true, + "enabled": true, + "placeOID": "50b9c516-c47a-4e19-bb09-771869349f3f", + "widget": "MediaRenderer", + "type": 1, + "oid": "253bfb04-9b54-4c6d-adc2-2a3eead72e5c", + "uiClass": "MusicPlayer" + }, + { + "creationTime": 1530352152000, + "lastUpdateTime": 1530352152000, + "label": "*", + "deviceURL": "upnpcontrol://1234-1234-6233/uuid:RINCON_B8E93744C18001400", + "shortcut": false, + "controllableName": "upnpcontrol:SonosPlayBaseComponent", + "definition": { + "commands": [ + { + "commandName": "getMute", + "nparams": 0 + }, + { + "commandName": "getVolume", + "nparams": 0 + }, + { + "commandName": "mute", + "nparams": 0 + }, + { + "commandName": "next", + "nparams": 0 + }, + { + "commandName": "pause", + "nparams": 0 + }, + { + "commandName": "play", + "nparams": 0 + }, + { + "commandName": "previous", + "nparams": 0 + }, + { + "commandName": "rewind", + "nparams": 0 + }, + { + "commandName": "setVolume", + "nparams": 1 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "unmute", + "nparams": 0 + }, + { + "commandName": "getAllPlayingInfo", + "nparams": 0 + }, + { + "commandName": "getCurrentTransportActions", + "nparams": 0 + }, + { + "commandName": "getGroupMute", + "nparams": 0 + }, + { + "commandName": "getGroupVolume", + "nparams": 0 + }, + { + "commandName": "getMediaInfo", + "nparams": 0 + }, + { + "commandName": "getPositionInfo", + "nparams": 0 + }, + { + "commandName": "getSonosFavorites", + "nparams": 0 + }, + { + "commandName": "getSonosPlaylist", + "nparams": 0 + }, + { + "commandName": "getTransportInfo", + "nparams": 0 + }, + { + "commandName": "muteGroup", + "nparams": 0 + }, + { + "commandName": "playURI", + "nparams": 2 + }, + { + "commandName": "setGroupVolume", + "nparams": 1 + }, + { + "commandName": "unmuteGroup", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["forward", "pause", "playing", "rewind", "stop"], + "qualifiedName": "core:PlayState" + } + ], + "dataProperties": [], + "widgetName": "MediaRenderer", + "uiProfiles": ["StoppableMusicPlayer", "MusicPlayer", "VolumeControl"], + "uiClass": "MusicPlayer", + "qualifiedName": "upnpcontrol:SonosPlayBaseComponent", + "type": "ACTUATOR" + }, + "attributes": [ + { + "name": "upnpcontrol:SonosZoneName", + "type": 3, + "value": "Salon" + }, + { + "name": "core:ModelName", + "type": 3, + "value": "Sonos PLAYBASE" + }, + { + "name": "core:IPAddress", + "type": 3, + "value": "192.168.50.20" + }, + { + "name": "core:PortNumber", + "type": 3, + "value": "1400" + }, + { + "name": "core:GroupId", + "type": 3, + "value": "RINCON_B8E93744C18001400:2113488309" + }, + { + "name": "upnpcontrol:Coordinator", + "type": 3, + "value": "true" + } + ], + "available": true, + "enabled": true, + "placeOID": "9b4aeb55-07b3-4088-920e-c08405000ce6", + "widget": "MediaRenderer", + "type": 1, + "oid": "c92014af-3b52-4c55-9117-6e7b18710745", + "uiClass": "MusicPlayer" + }, + { + "creationTime": 1510775207000, + "lastUpdateTime": 1510775207000, + "label": "* * *", + "deviceURL": "upnpcontrol://1234-1234-6233/uuid:RINCON_B8E937BB9E2E01400", + "shortcut": false, + "controllableName": "upnpcontrol:SonosPlayOneComponent", + "definition": { + "commands": [ + { + "commandName": "getMute", + "nparams": 0 + }, + { + "commandName": "getVolume", + "nparams": 0 + }, + { + "commandName": "mute", + "nparams": 0 + }, + { + "commandName": "next", + "nparams": 0 + }, + { + "commandName": "pause", + "nparams": 0 + }, + { + "commandName": "play", + "nparams": 0 + }, + { + "commandName": "previous", + "nparams": 0 + }, + { + "commandName": "rewind", + "nparams": 0 + }, + { + "commandName": "setVolume", + "nparams": 1 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "unmute", + "nparams": 0 + }, + { + "commandName": "getAllPlayingInfo", + "nparams": 0 + }, + { + "commandName": "getCurrentTransportActions", + "nparams": 0 + }, + { + "commandName": "getGroupMute", + "nparams": 0 + }, + { + "commandName": "getGroupVolume", + "nparams": 0 + }, + { + "commandName": "getMediaInfo", + "nparams": 0 + }, + { + "commandName": "getPositionInfo", + "nparams": 0 + }, + { + "commandName": "getSonosFavorites", + "nparams": 0 + }, + { + "commandName": "getSonosPlaylist", + "nparams": 0 + }, + { + "commandName": "getTransportInfo", + "nparams": 0 + }, + { + "commandName": "muteGroup", + "nparams": 0 + }, + { + "commandName": "playURI", + "nparams": 2 + }, + { + "commandName": "setGroupVolume", + "nparams": 1 + }, + { + "commandName": "unmuteGroup", + "nparams": 0 + } + ], + "states": [ + { + "type": "DiscreteState", + "values": ["forward", "pause", "playing", "rewind", "stop"], + "qualifiedName": "core:PlayState" + } + ], + "dataProperties": [], + "widgetName": "MediaRenderer", + "uiProfiles": ["StoppableMusicPlayer", "MusicPlayer", "VolumeControl"], + "uiClass": "MusicPlayer", + "qualifiedName": "upnpcontrol:SonosPlayOneComponent", + "type": "ACTUATOR" + }, + "attributes": [ + { + "name": "core:GroupId", + "type": 3, + "value": "RINCON_B8E937BB9E2E01400:3587820408" + }, + { + "name": "upnpcontrol:Coordinator", + "type": 3, + "value": "true" + }, + { + "name": "core:PortNumber", + "type": 3, + "value": "1400" + }, + { + "name": "core:IPAddress", + "type": 3, + "value": "192.168.50.25" + }, + { + "name": "upnpcontrol:SonosZoneName", + "type": 3, + "value": "Salle De Bain" + } + ], + "available": true, + "enabled": true, + "placeOID": "eb7f2ac0-953c-4a35-a511-afad8865e3e1", + "widget": "MediaRenderer", + "type": 1, + "oid": "ba5edf20-6a18-43a5-844b-3e59ef73ddfd", + "uiClass": "MusicPlayer" + } + ], + "zones": [], + "resellerDelegationType": "NEVER", + "oid": "03dfef70-2faf-45d8-a333-79ce6cab30ea", + "rootPlace": { + "creationTime": 1501224054000, + "lastUpdateTime": 1501226112000, + "label": "Willow House", + "type": 200, + "oid": "91ba6fe7-704e-4ee3-ab7f-1cb7eb2549a4", + "subPlaces": [ + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Front Patio", + "type": 108, + "metadata": "{\"tahoma\":{\"position\":0.75,\"decor\":[]}}", + "oid": "f8321fb7-ba88-4acd-85ab-651cc15b0997", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Entry Hall", + "type": 106, + "metadata": "{\"tahoma\":{\"position\":0.25,\"decor\":[]}}", + "oid": "9f691996-a9bc-410a-b501-d3154de77e38", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Living Room", + "type": 28, + "metadata": "{\"tahoma\":{\"position\":-0.25,\"decor\":[]}}", + "oid": "bcbb34ef-2241-43a1-9c5b-523aa0563ec3", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Upstairs", + "type": 102, + "oid": "50b9c516-c47a-4e19-bb09-771869349f3f", + "subPlaces": [ + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Reading Nook", + "type": 16, + "metadata": "{\"tahoma\":{\"order\":0}}", + "oid": "4c6de3bc-4f72-486c-853c-12ac36833a11", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1572685264000, + "label": "Music Room", + "type": 8, + "metadata": "{\"tahoma\":{\"order\":3}}", + "oid": "eb7f2ac0-953c-4a35-a511-afad8865e3e1", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1572685264000, + "label": "Home Library", + "type": 8, + "metadata": "{\"tahoma\":{\"order\":2}}", + "oid": "a4482540-0184-42d5-828f-6a5585371025", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Kitchen", + "type": 22, + "metadata": "{\"tahoma\":{\"order\":1}}", + "oid": "ce6e30e6-a8d1-4285-83f6-3fb56cc0d8c9", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Dining Room", + "type": 5, + "metadata": "{\"tahoma\":{\"order\":5}}", + "oid": "52459599-50ab-4a8e-ac20-72a40209b922", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Office", + "type": 6, + "metadata": "{\"tahoma\":{\"order\":4}}", + "oid": "f4f6bdb1-3228-4da2-8312-7a19f4ef3b55", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Guest Bedroom", + "type": 12, + "metadata": "{\"tahoma\":{\"order\":6}}", + "oid": "1f1d57f8-1471-4737-9498-4c8e312db332", + "subPlaces": [] + } + ] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Family Wing", + "type": 101, + "oid": "48200981-d96f-4a75-bcf0-a3c6f0b692dc", + "subPlaces": [ + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Main Bedroom", + "type": 2, + "metadata": "{\"tahoma\":{\"order\":2}}", + "oid": "972455eb-4f91-4095-bf42-55c234bb6238", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Garage", + "type": 1, + "metadata": "{\"tahoma\":{\"order\":1}}", + "oid": "23eeca0a-9dbc-4e93-ae3d-c8ffe7e3464b", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Kids Room", + "type": 14, + "metadata": "{\"tahoma\":{\"order\":0}}", + "oid": "9b4aeb55-07b3-4088-920e-c08405000ce6", + "subPlaces": [] + }, + { + "creationTime": 1501226112000, + "lastUpdateTime": 1501226112000, + "label": "Bathroom", + "type": 22, + "metadata": "{\"tahoma\":{\"order\":3}}", + "oid": "e01ee506-b6fb-45d9-98b6-e652508a06e9", + "subPlaces": [] + } + ] + } + ] + }, + "features": [ + { + "name": "tahoma-premium", + "source": "GATEWAY_TYPE" + }, + { + "name": "tahoma-security", + "source": "GATEWAY_TYPE" + } + ] +} diff --git a/tests/components/overkiz/fixtures/setup/local_somfy_connexoon_europe.json b/tests/components/overkiz/fixtures/setup/local_somfy_connexoon_europe.json new file mode 100644 index 000000000000..6778e9626461 --- /dev/null +++ b/tests/components/overkiz/fixtures/setup/local_somfy_connexoon_europe.json @@ -0,0 +1,441 @@ +{ + "gateways": [ + { + "connectivity": { + "status": "OK", + "protocolVersion": "2021.2.4-17" + }, + "gatewayId": "1234-1234-1234" + } + ], + "devices": [ + { + "deviceURL": "internal://1234-1234-1234/pod/0", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:CountryCodeState", + "value": "NL" + }, + { + "type": 1, + "name": "internal:LightingLedPodModeState", + "value": 1 + }, + { + "type": 3, + "name": "core:NameState", + "value": "*" + }, + { + "type": 3, + "name": "core:ConnectivityState", + "value": "online" + }, + { + "type": 3, + "name": "core:LocalIPv4AddressState", + "value": "192.168.150.8" + } + ], + "label": "*", + "subsystemId": 0, + "attributes": [], + "enabled": true, + "controllableName": "internal:PodMiniComponent", + "definition": { + "states": [ + { + "name": "core:ConnectivityState" + }, + { + "name": "core:CountryCodeState" + }, + { + "name": "core:LocalIPv4AddressState" + }, + { + "name": "core:NameState" + }, + { + "name": "internal:LastActionConfigButtonState" + }, + { + "name": "internal:LightingLedPodModeState" + } + ], + "widgetName": "Pod", + "type": "ACTUATOR", + "commands": [ + { + "commandName": "activateCalendar", + "nparams": 0 + }, + { + "commandName": "deactivateCalendar", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshPodMode", + "nparams": 0 + }, + { + "commandName": "refreshUpdateStatus", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setCalendar", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setCountryCode", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setLightingLedPodMode", + "paramsSig": "p1" + }, + { + "commandName": "setPodLedOff", + "nparams": 0 + }, + { + "commandName": "setPodLedOn", + "nparams": 0 + }, + { + "commandName": "update", + "nparams": 0 + } + ], + "uiClass": "Pod" + } + }, + { + "deviceURL": "io://1234-1234-1234/5928357", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 88 + }, + { + "type": 1, + "name": "core:DeploymentState", + "value": 0 + }, + { + "type": 11, + "name": "core:ManufacturerSettingsState", + "value": { + "currentPosition": 0 + } + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "closed" + }, + { + "type": 1, + "name": "core:TargetClosureState", + "value": 0 + }, + { + "type": 6, + "name": "core:MovingState", + "value": false + }, + { + "type": 3, + "name": "core:NameState", + "value": "Terrace Awning" + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 105 + } + ], + "label": "Terrace Awning", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5071665X10\u0003" + } + ], + "enabled": true, + "controllableName": "io:HorizontalAwningIOComponent", + "definition": { + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:DeploymentState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:Memorized1PositionState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:NameState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:TargetClosureState" + } + ], + "widgetName": "PositionableHorizontalAwning", + "type": "ACTUATOR", + "commands": [ + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "commandName": "deploy", + "nparams": 0 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setDeployment", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "undeploy", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + } + ], + "uiClass": "Awning" + } + }, + { + "deviceURL": "io://1234-1234-1234/16516299", + "available": true, + "synced": true, + "type": 5, + "states": [], + "label": "* (*)", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:StackComponent", + "definition": { + "states": [], + "widgetName": "IOStack", + "type": "PROTOCOL_GATEWAY", + "commands": [ + { + "nparams": 1, + "commandName": "advancedSomfyDiscover", + "paramsSig": "p1" + }, + { + "nparams": 0, + "commandName": "discover1WayController", + "paramsSig": "*p1,*p2" + }, + { + "nparams": 1, + "commandName": "discoverActuators", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "discoverSensors", + "paramsSig": "p1" + }, + { + "commandName": "discoverSomfyUnsetActuators", + "nparams": 0 + }, + { + "commandName": "joinNetwork", + "nparams": 0 + }, + { + "commandName": "resetNetworkSecurity", + "nparams": 0 + }, + { + "commandName": "shareNetwork", + "nparams": 0 + } + ], + "uiClass": "ProtocolGateway" + } + } + ] +} diff --git a/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_switch_europe.json b/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_switch_europe.json new file mode 100644 index 000000000000..5415020e5a82 --- /dev/null +++ b/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_switch_europe.json @@ -0,0 +1,6568 @@ +{ + "devices": [ + { + "subsystemId": 0, + "synced": true, + "label": "**", + "states": [ + { + "name": "core:CountryCodeState", + "type": 3, + "value": "AT" + }, + { + "name": "internal:LightingLedPodModeState", + "type": 1, + "value": 1 + }, + { + "name": "core:ConnectivityState", + "type": 3, + "value": "online" + }, + { + "name": "core:NameState", + "type": 3, + "value": "**" + } + ], + "attributes": [], + "controllableName": "internal:PodV3Component", + "deviceURL": "internal://1234-5678-6508/pod/0", + "enabled": true, + "type": 1, + "definition": { + "attributes": [], + "type": "ACTUATOR", + "commands": [ + { + "nparams": 0, + "commandName": "activateCalendar" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setCalendar" + }, + { + "nparams": 0, + "commandName": "refreshUpdateStatus" + }, + { + "nparams": 0, + "commandName": "refreshPodMode" + }, + { + "nparams": 0, + "commandName": "setPodLedOff" + }, + { + "nparams": 0, + "commandName": "setPodLedOn" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setCountryCode" + }, + { + "nparams": 0, + "commandName": "deactivateCalendar" + }, + { + "nparams": 0, + "commandName": "update" + }, + { + "nparams": 0, + "commandName": "getName" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setLightingLedPodMode" + } + ], + "uiClass": "Pod", + "states": [ + { + "name": "internal:LightingLedPodModeState" + }, + { + "name": "core:LocalIPv4AddressState" + }, + { + "name": "internal:Button3State" + }, + { + "name": "internal:Button2State" + }, + { + "name": "internal:Button1State" + }, + { + "name": "core:CountryCodeState" + }, + { + "name": "core:ConnectivityState" + }, + { + "name": "core:NameState" + }, + { + "name": "core:LocalAccessProofState" + } + ], + "widgetName": "Pod" + }, + "available": true + }, + { + "subsystemId": 0, + "synced": true, + "label": "** *(**/**)*", + "states": [ + { + "name": "internal:WifiModeState", + "type": 3, + "value": "infrastructure" + }, + { + "name": "internal:SignalStrengthState", + "type": 1, + "value": 66 + }, + { + "name": "internal:CurrentInfraConfigState", + "type": 3, + "value": "EMX IoT" + } + ], + "attributes": [], + "controllableName": "internal:WifiComponent", + "deviceURL": "internal://1234-5678-6508/wifi/0", + "enabled": true, + "type": 1, + "definition": { + "attributes": [], + "type": "ACTUATOR", + "commands": [ + { + "nparams": 2, + "paramsSig": "p1,p2", + "commandName": "setTargetInfraConfig" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setWifiMode" + }, + { + "nparams": 0, + "commandName": "clearCredentials" + } + ], + "uiClass": "Wifi", + "states": [ + { + "name": "internal:WifiModeState" + }, + { + "name": "internal:CurrentInfraConfigState" + }, + { + "name": "internal:SignalStrengthState" + } + ], + "widgetName": "Wifi" + }, + "available": true + }, + { + "subsystemId": 0, + "synced": true, + "label": "Living Room Blinds", + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "low" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 20 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 55296, + "current_tilt": 16547, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 32 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Living Room Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 108 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/6380765" + }, + { + "subsystemId": 0, + "synced": true, + "label": "Office Blinds", + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "low" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 32 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 55296, + "current_tilt": 16547, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 32 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 108 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Office Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/4877511" + }, + { + "subsystemId": 0, + "synced": true, + "label": "Bedroom Blinds", + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "low" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 20 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 55296, + "current_tilt": 16307, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 32 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Bedroom Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 108 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/16130150" + }, + { + "subsystemId": 0, + "synced": true, + "label": "Kitchen Blinds", + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 58 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 55296, + "current_tilt": 16427, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 32 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Kitchen Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 108 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/3248049" + }, + { + "subsystemId": 0, + "synced": true, + "label": "Dining Room Blinds", + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "low" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 14 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 51153, + "current_tilt": 16067, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 31 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "closed" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Dining Room Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/13662182" + }, + { + "subsystemId": 0, + "synced": true, + "label": "Bathroom Blinds", + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 64 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 55296, + "current_tilt": 16307, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 32 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Bathroom Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 108 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/5456600" + }, + { + "subsystemId": 0, + "synced": true, + "label": "** *(**)*", + "states": [], + "attributes": [], + "available": true, + "controllableName": "io:StackComponent", + "enabled": true, + "type": 5, + "definition": { + "attributes": [], + "type": "PROTOCOL_GATEWAY", + "commands": [ + { + "commandName": "discoverSomfyUnsetActuators", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "advancedSomfyDiscover", + "paramsSig": "p1" + }, + { + "commandName": "resetNetworkSecurity", + "nparams": 0 + }, + { + "commandName": "joinNetwork", + "nparams": 0 + }, + { + "commandName": "shareNetwork", + "nparams": 0 + }, + { + "nparams": 0, + "commandName": "discover1WayController", + "paramsSig": "*p1,*p2" + }, + { + "nparams": 1, + "commandName": "discoverActuators", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "discoverSensors", + "paramsSig": "p1" + } + ], + "uiClass": "ProtocolGateway", + "states": [], + "widgetName": "IOStack" + }, + "deviceURL": "io://1234-5678-6508/14057819" + }, + { + "subsystemId": 0, + "synced": true, + "label": "Guest Room Blinds", + "states": [ + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "good" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 82 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 55296, + "current_tilt": 16187, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 32 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 108 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Guest Room Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/6553884" + }, + { + "subsystemId": 0, + "synced": true, + "label": "Study Blinds", + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "low" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 24 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 55296, + "current_tilt": 14389, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 28 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Study Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 108 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/6375755" + }, + { + "subsystemId": 0, + "synced": true, + "label": "Master Bedroom Blinds", + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 60 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 55296, + "current_tilt": 16187, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 32 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Master Bedroom Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 108 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/12736675" + }, + { + "subsystemId": 0, + "synced": true, + "label": "Nursery Blinds", + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 68 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 55296, + "current_tilt": 15948, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 31 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Nursery Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 108 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/4803435" + }, + { + "deviceURL": "zigbee://1234-5678-6508/65535", + "synced": true, + "label": "** *(**)*", + "states": [], + "attributes": [], + "available": true, + "subsystemId": 0, + "enabled": true, + "type": 5, + "definition": { + "widgetName": "ZigbeeStack", + "uiClass": "ProtocolGateway", + "commands": [], + "type": "PROTOCOL_GATEWAY", + "states": [], + "attributes": [] + }, + "controllableName": "zigbee:TransceiverV3_0Component" + }, + { + "subsystemId": 0, + "synced": true, + "label": "Hallway Blinds", + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 70 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 55296, + "current_tilt": 16307, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 32 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Hallway Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 108 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/10076003" + }, + { + "subsystemId": 0, + "synced": true, + "label": "Garage Blinds", + "states": [ + { + "name": "core:StatusState", + "type": 3, + "value": "available" + }, + { + "name": "core:CommandLockLevelsState", + "type": 11, + "value": [] + }, + { + "name": "core:DiscreteRSSILevelState", + "type": 3, + "value": "normal" + }, + { + "name": "core:RSSILevelState", + "type": 1, + "value": 46 + }, + { + "name": "core:ManufacturerSettingsState", + "type": 11, + "value": { + "x_time": "disable", + "roll_end_limit_state": "Manual_validated", + "kinematics": "EVB_standard", + "current_position": 55296, + "current_tilt": 16067, + "setting_state": "User mode", + "unroll_end_limit_state": "Manual_validated" + } + }, + { + "name": "core:SlateOrientationState", + "type": 1, + "value": 31 + }, + { + "name": "core:ClosureState", + "type": 1, + "value": 108 + }, + { + "name": "core:OpenClosedState", + "type": 3, + "value": "open" + }, + { + "name": "core:TargetClosureState", + "type": 1, + "value": 100 + }, + { + "name": "core:MovingState", + "type": 6, + "value": false + }, + { + "name": "core:NameState", + "type": 3, + "value": "Garage Blinds" + }, + { + "name": "core:Memorized1PositionState", + "type": 1, + "value": 100 + }, + { + "name": "core:Memorized1OrientationState", + "type": 1, + "value": 55 + }, + { + "name": "core:SecuredPositionState", + "type": 1, + "value": 0 + }, + { + "name": "io:KinematicsState", + "type": 3, + "value": "EVB Standard" + }, + { + "name": "core:TiltLowerBoundState", + "type": 1, + "value": -90 + }, + { + "name": "core:TiltUpperBoundState", + "type": 1, + "value": 0 + }, + { + "name": "core:PriorityLockTimerState", + "type": 1, + "value": 0 + }, + { + "name": "io:PriorityLockOriginatorState", + "type": 3, + "value": "unknown" + } + ], + "attributes": [ + { + "name": "core:FirmwareRevision", + "type": 3, + "value": "5147391A13" + }, + { + "name": "core:SupportedManufacturerProcedures", + "type": 10, + "value": [ + { + "procedureName": "dead_man_down", + "params": { + "duration": {} + } + }, + { + "procedureName": "dead_man_impulse_down" + }, + { + "procedureName": "dead_man_impulse_up" + }, + { + "procedureName": "dead_man_stop" + }, + { + "procedureName": "dead_man_up", + "params": { + "duration": {} + } + }, + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "eject_from_setting_mode" + }, + { + "procedureName": "enter_auxiliary_parameter_settings_mode" + }, + { + "procedureName": "enter_settings_mode" + }, + { + "procedureName": "invert_rotation" + }, + { + "procedureName": "remove_broken_local_sensors" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_evb_tilting_travel" + }, + { + "procedureName": "save_flat_slats_position" + }, + { + "procedureName": "save_lower_end_limit" + }, + { + "procedureName": "save_my_position" + }, + { + "procedureName": "save_settings" + }, + { + "procedureName": "save_upper_end_limit" + }, + { + "procedureName": "stop_after_save_limit" + } + ] + }, + { + "name": "core:Manufacturer", + "type": 3, + "value": "Somfy" + }, + { + "name": "core:SupportedManufacturerSettingsCommands", + "type": 10, + "value": [ + "dead_man_down", + "dead_man_impulse_down", + "dead_man_impulse_up", + "dead_man_stop", + "dead_man_up", + "delete_my_position", + "double_power_cut", + "eject_from_setting_mode", + "enter_auxiliary_parameter_settings_mode", + "enter_settings_mode", + "invert_rotation", + "reset_actuator", + "save_evb_tilting_travel", + "save_flat_slats_position", + "save_lower_end_limit", + "save_my_position", + "save_settings", + "save_upper_end_limit", + "set_choregraphy_disable_variator_down_move_min", + "set_choregraphy_disable_variator_up_move_min", + "set_choregraphy_enable_variator_down_move_min", + "set_choregraphy_enable_variator_up_move_min", + "set_evb_tilting_travel_pulse", + "set_kinematics", + "set_obstacle_detection", + "set_x_time", + "stop_after_save_limit" + ] + }, + { + "name": "core:SupportedReadableManufacturerData", + "type": 10, + "value": [ + "Prohibit_changes_of_Unroll_End_Limit", + "automatic_adjustment_allowed", + "battery_level", + "choregraphy_disable_variator_down_move_min", + "choregraphy_disable_variator_up_move_min", + "choregraphy_enable_variator_down_move_min", + "choregraphy_enable_variator_up_move_min", + "current_position", + "current_tilt", + "evb_tilting_travel_pulse", + "kinematics", + "motor_rotation_duration", + "nb_of_double_power_cut", + "nb_of_eld_tcs_in_roll_at_rel", + "nb_of_paired_1w_sensors_out_of_order", + "nb_of_power_shutdown", + "nb_of_rel_reached_in_counting_mode", + "nb_of_stops_caused_by_crown_stop", + "nb_of_stops_caused_by_thermal_protection", + "nb_of_uel_reached_in_counting_mode", + "nb_of_upward_stops_caused_by_mushroom", + "nb_overvoltage_detected", + "obstacle_detection", + "ods_learning_state", + "paired_1w_controllers", + "paired_1w_sensors", + "power_supply_max_rms_value", + "production_date", + "profil_id", + "roll_end_limit_state", + "rotation_direction", + "setting_state", + "status_of_intermediate_position", + "status_of_stop_mode", + "unroll_end_limit_state", + "x_time" + ] + } + ], + "available": true, + "controllableName": "io:DynamicExteriorVenetianBlindIOComponent", + "enabled": true, + "type": 1, + "definition": { + "commands": [ + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "writeManufacturerData", + "paramsSig": "p1" + }, + { + "commandName": "tiltDown", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "readManufacturerData", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "executeManufacturerProcedure", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "tiltUp", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setClosureAndOrientation", + "paramsSig": "p1,p2" + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "resetLockLevels", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "my", + "nparams": 0 + } + ], + "type": "ACTUATOR", + "uiClass": "ExteriorVenetianBlind", + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:NameState" + }, + { + "name": "io:KinematicsState" + }, + { + "name": "core:TiltLowerBoundState" + }, + { + "name": "core:TiltUpperBoundState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "io:PriorityLockLevelState" + }, + { + "name": "core:PriorityLockTimerState" + }, + { + "name": "io:PriorityLockOriginatorState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "DynamicExteriorVenetianBlind" + }, + "deviceURL": "io://1234-5678-6508/11292138" + } + ], + "gateways": [ + { + "gatewayId": "1234-5678-6508", + "connectivity": { + "status": "OK", + "protocolVersion": "2025.6.4-4" + } + } + ] +} diff --git a/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_switch_europe_2.json b/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_switch_europe_2.json new file mode 100644 index 000000000000..5c503a2f86f0 --- /dev/null +++ b/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_switch_europe_2.json @@ -0,0 +1,1736 @@ +{ + "devices": [ + { + "attributes": [ + { + "type": 3, + "name": "core:Manufacturer", + "value": "VELUX" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "0000000000000000F303" + }, + { + "type": 10, + "name": "core:SupportedAliases", + "value": [ + { + "features": ["openClosePosition"], + "type": "ventilation", + "id": "55299" + } + ] + }, + { + "type": 10, + "name": "io:Features", + "value": [ + { + "name": "alias" + }, + { + "name": "openClosePosition" + } + ] + } + ], + "deviceURL": "io://1234-5678-1516/77700", + "definition": { + "attributes": [ + { + "name": "core:Manufacturer" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:SupportedAliases" + }, + { + "name": "io:Features" + } + ], + "uiClass": "Window", + "commands": [ + { + "nparams": 0, + "commandName": "stop" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "advancedRefresh" + }, + { + "nparams": 0, + "commandName": "getName" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setName" + }, + { + "nparams": 0, + "commandName": "identify" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setClosure" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "addLockLevel" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setConfigState" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "unpairOneWayController" + }, + { + "nparams": 0, + "commandName": "unpairAllOneWayControllers" + }, + { + "nparams": 0, + "commandName": "stopIdentify" + }, + { + "nparams": 0, + "commandName": "startIdentify" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "pairOneWayController" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "delayedStopIdentify" + }, + { + "nparams": 0, + "commandName": "close" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "goToAlias" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "setClosureAndLinearSpeed" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "setPositionAndLinearSpeed" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "wink" + }, + { + "nparams": 0, + "commandName": "open" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "saveAlias" + }, + { + "nparams": 0, + "commandName": "resetLockLevels" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "removeLockLevel" + } + ], + "states": [ + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:ReachedAliasesState" + }, + { + "name": "core:BatteryDiscreteLevelState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:NameState" + }, + { + "name": "core:StatusState" + } + ], + "type": "ACTUATOR", + "widgetName": "PositionableTiltedWindow" + }, + "controllableName": "io:WindowOpenerVeluxIOComponent", + "label": "Roof Window", + "enabled": true, + "type": 1, + "subsystemId": 0, + "synced": true, + "available": true, + "states": [ + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 11, + "name": "core:CommandLockLevelsState", + "value": [] + }, + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 76 + }, + { + "type": 1, + "name": "core:ClosureState", + "value": 0 + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "open" + }, + { + "type": 11, + "name": "core:ReachedAliasesState", + "value": [] + }, + { + "type": 3, + "name": "core:NameState", + "value": "Roof Window" + } + ] + }, + { + "attributes": [ + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5125936A06" + }, + { + "type": 10, + "name": "core:SupportedManufacturerProcedures", + "value": [ + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_my_position" + } + ] + }, + { + "type": 10, + "name": "core:SupportedManufacturerSettingsCommands", + "value": [ + "delete_my_position", + "double_power_cut", + "reset_actuator", + "save_my_position", + "set_running_time_down", + "set_running_time_up" + ] + }, + { + "type": 10, + "name": "core:SupportedReadableManufacturerData", + "value": ["current_position", "running_time_down", "running_time_up"] + } + ], + "deviceURL": "io://1234-5678-1516/3656107", + "definition": { + "attributes": [ + { + "name": "core:Manufacturer" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:SupportedManufacturerProcedures" + }, + { + "name": "core:SupportedManufacturerSettingsCommands" + }, + { + "name": "core:SupportedReadableManufacturerData" + } + ], + "uiClass": "RollerShutter", + "commands": [ + { + "nparams": 0, + "commandName": "stop" + }, + { + "nparams": 0, + "commandName": "getName" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setName" + }, + { + "nparams": 0, + "commandName": "identify" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setClosure" + }, + { + "nparams": 0, + "commandName": "close" + }, + { + "nparams": 0, + "commandName": "down" + }, + { + "nparams": 0, + "commandName": "up" + }, + { + "nparams": 0, + "commandName": "open" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "advancedRefresh" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "readManufacturerData" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setDeployment" + }, + { + "nparams": 0, + "commandName": "refreshMemorized1Position" + }, + { + "nparams": 2, + "paramsSig": "p1,p2", + "commandName": "runManufacturerSettingsCommand" + }, + { + "nparams": 0, + "commandName": "keepOneWayControllersAndDeleteNode" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "removeLockLevel" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "addLockLevel" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setConfigState" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "unpairOneWayController" + }, + { + "nparams": 0, + "commandName": "unpairAllOneWayControllers" + }, + { + "nparams": 0, + "commandName": "stopIdentify" + }, + { + "nparams": 0, + "commandName": "startIdentify" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "pairOneWayController" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "delayedStopIdentify" + }, + { + "nparams": 0, + "commandName": "resetLockLevels" + }, + { + "nparams": 0, + "commandName": "sendIOKey" + }, + { + "nparams": 0, + "commandName": "unpairAllOneWayControllersAndDeleteNode" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setSecuredPosition" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setPosition" + }, + { + "nparams": 0, + "commandName": "my" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "executeManufacturerProcedure" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "writeManufacturerData" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "wink" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setMemorized1Position" + } + ], + "states": [ + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + }, + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "core:NameState" + } + ], + "type": "ACTUATOR", + "widgetName": "PositionableRollerShutterUno" + }, + "controllableName": "io:RollerShutterUnoIOComponent", + "label": "Front Door Shutter", + "enabled": true, + "type": 1, + "subsystemId": 0, + "synced": true, + "available": true, + "states": [ + { + "type": 11, + "name": "core:CommandLockLevelsState", + "value": [] + }, + { + "type": 11, + "name": "core:ManufacturerSettingsState", + "value": {} + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 100 + }, + { + "type": 1, + "name": "core:ClosureState", + "value": 124 + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "open" + }, + { + "type": 1, + "name": "core:TargetClosureState", + "value": 0 + }, + { + "type": 6, + "name": "core:MovingState", + "value": false + }, + { + "type": 3, + "name": "core:NameState", + "value": "Front Door Shutter" + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 70 + } + ] + }, + { + "attributes": [], + "deviceURL": "internal://1234-5678-1516/pod/0", + "definition": { + "attributes": [], + "uiClass": "Pod", + "commands": [ + { + "nparams": 0, + "commandName": "getName" + }, + { + "nparams": 0, + "commandName": "setPodLedOff" + }, + { + "nparams": 0, + "commandName": "setPodLedOn" + }, + { + "nparams": 0, + "commandName": "update" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setLightingLedPodMode" + }, + { + "nparams": 0, + "commandName": "deactivateCalendar" + }, + { + "nparams": 0, + "commandName": "activateCalendar" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setCalendar" + }, + { + "nparams": 0, + "commandName": "refreshUpdateStatus" + }, + { + "nparams": 0, + "commandName": "refreshPodMode" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setCountryCode" + } + ], + "states": [ + { + "name": "internal:LightingLedPodModeState" + }, + { + "name": "core:LocalIPv4AddressState" + }, + { + "name": "internal:Button3State" + }, + { + "name": "core:LocalAccessProofState" + }, + { + "name": "internal:Button1State" + }, + { + "name": "core:ConnectivityState" + }, + { + "name": "core:CountryCodeState" + }, + { + "name": "core:NameState" + }, + { + "name": "internal:Button2State" + } + ], + "type": "ACTUATOR", + "widgetName": "Pod" + }, + "controllableName": "internal:PodV3Component", + "label": "**", + "enabled": true, + "type": 1, + "subsystemId": 0, + "synced": true, + "available": true, + "states": [ + { + "type": 3, + "name": "core:NameState", + "value": "**" + }, + { + "type": 3, + "name": "core:ConnectivityState", + "value": "online" + }, + { + "type": 3, + "name": "core:CountryCodeState", + "value": "DE" + }, + { + "type": 1, + "name": "internal:LightingLedPodModeState", + "value": 1 + }, + { + "type": 3, + "name": "core:LocalIPv4AddressState", + "value": "192.168.0.29" + }, + { + "type": 3, + "name": "internal:Button1State", + "value": "pressed" + } + ] + }, + { + "attributes": [ + { + "type": 3, + "name": "zigbee:Role", + "value": "router" + }, + { + "type": 3, + "name": "core:ManufacturerId", + "value": 4489 + }, + { + "type": 10, + "name": "zigbee:InputClusters", + "value": ["identify", "scenes", "onOff"] + }, + { + "type": 3, + "name": "core:MacAddress", + "value": "oegKJL640fA=" + }, + { + "type": 6, + "name": "zigbee:NotificationEnable", + "value": true + } + ], + "available": true, + "definition": { + "attributes": [ + { + "name": "zigbee:Role" + }, + { + "name": "core:ManufacturerId" + }, + { + "name": "zigbee:InputClusters" + }, + { + "name": "core:MacAddress" + }, + { + "name": "zigbee:NotificationEnable" + }, + { + "name": "zigbee:OutputClusters" + } + ], + "uiClass": "OnOff", + "commands": [ + { + "nparams": 2, + "commandName": "bind", + "paramsSig": "p1,p2" + }, + { + "nparams": 0, + "commandName": "off" + }, + { + "nparams": 0, + "commandName": "toggle" + }, + { + "nparams": 1, + "commandName": "addLockLevel", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "removeLockLevel", + "paramsSig": "p1" + }, + { + "nparams": 0, + "commandName": "resetLockLevels" + }, + { + "nparams": 0, + "commandName": "stopIdentify" + }, + { + "nparams": 0, + "commandName": "on" + }, + { + "nparams": 1, + "commandName": "setOnOff", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "nparams": 0, + "commandName": "identify" + }, + { + "nparams": 0, + "commandName": "ping" + }, + { + "nparams": 1, + "commandName": "onWithTimer", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "unbind", + "paramsSig": "p1,p2" + } + ], + "widgetName": "StatefulOnOff", + "type": "ACTUATOR", + "states": [ + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "zigbee:LinkQualityIndicatorState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:ProductModelNameState" + }, + { + "name": "core:ManufacturerNameState" + }, + { + "name": "zigbee:PowerSourceState" + }, + { + "name": "core:FirmwareRevisionState" + }, + { + "name": "zigbee:ZigbeeUpdateState" + }, + { + "name": "zigbee:ZigbeeUpdateDownloadProgressState" + }, + { + "name": "core:OnOffState" + } + ] + }, + "controllableName": "zigbee:OnOffComponent", + "label": "**", + "enabled": true, + "type": 1, + "subsystemId": 0, + "synced": true, + "deviceURL": "zigbee://1234-5678-1516/2501/1", + "states": [ + { + "type": 11, + "name": "core:CommandLockLevelsState", + "value": [] + }, + { + "type": 3, + "name": "zigbee:ZigbeeUpdateState", + "value": "idle" + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:OnOffState", + "value": "on" + }, + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "verylow" + }, + { + "type": 1, + "name": "zigbee:LinkQualityIndicatorState", + "value": 40 + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": -90 + } + ] + }, + { + "attributes": [ + { + "type": 3, + "name": "zigbee:Role", + "value": "coordinator" + }, + { + "type": 1, + "name": "zigbee:RadioChannel", + "value": 20 + }, + { + "type": 3, + "name": "core:MacAddress", + "value": "ngeo/v+BoJQ=" + } + ], + "available": true, + "definition": { + "attributes": [ + { + "name": "zigbee:Role" + }, + { + "name": "core:ManufacturerId" + }, + { + "name": "zigbee:RadioChannel" + }, + { + "name": "core:MacAddress" + } + ], + "uiClass": "ProtocolGateway", + "commands": [ + { + "nparams": 2, + "commandName": "bind", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "openNetwork", + "paramsSig": "p1" + }, + { + "nparams": 0, + "commandName": "bindingNetwork" + }, + { + "nparams": 2, + "commandName": "unbind", + "paramsSig": "p1,p2" + }, + { + "nparams": 0, + "commandName": "refreshNetwork" + }, + { + "nparams": 0, + "commandName": "openNetworkWithCommissioningManagement" + }, + { + "nparams": 0, + "commandName": "openNetworkManagement" + }, + { + "nparams": 0, + "commandName": "closeNetworkManagement" + }, + { + "nparams": 0, + "commandName": "closeNetwork" + } + ], + "widgetName": "ZigbeeStack", + "type": "PROTOCOL_GATEWAY", + "states": [ + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "zigbee:LinkQualityIndicatorState" + }, + { + "name": "core:ProductModelNameState" + }, + { + "name": "core:ManufacturerNameState" + } + ] + }, + "controllableName": "zigbee:StackV3Component", + "label": "** *(**/**)*", + "enabled": true, + "type": 5, + "subsystemId": 0, + "synced": true, + "deviceURL": "zigbee://1234-5678-1516/0/1", + "states": [] + }, + { + "attributes": [], + "available": true, + "definition": { + "attributes": [], + "uiClass": "ProtocolGateway", + "commands": [], + "widgetName": "ZigbeeStack", + "type": "PROTOCOL_GATEWAY", + "states": [] + }, + "controllableName": "zigbee:TransceiverV3_0Component", + "label": "** *(**)*", + "enabled": true, + "type": 5, + "subsystemId": 0, + "synced": true, + "deviceURL": "zigbee://1234-5678-1516/65535", + "states": [] + }, + { + "attributes": [], + "deviceURL": "internal://1234-5678-1516/wifi/0", + "definition": { + "attributes": [], + "uiClass": "Wifi", + "commands": [ + { + "nparams": 0, + "commandName": "clearCredentials" + }, + { + "nparams": 2, + "paramsSig": "p1,p2", + "commandName": "setTargetInfraConfig" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setWifiMode" + } + ], + "states": [ + { + "name": "internal:CurrentInfraConfigState" + }, + { + "name": "internal:WifiModeState" + }, + { + "name": "internal:SignalStrengthState" + } + ], + "type": "ACTUATOR", + "widgetName": "Wifi" + }, + "controllableName": "internal:WifiComponent", + "label": "** *(**/**)*", + "enabled": true, + "type": 1, + "subsystemId": 0, + "synced": true, + "available": true, + "states": [ + { + "type": 1, + "name": "internal:SignalStrengthState", + "value": 62 + }, + { + "type": 3, + "name": "internal:CurrentInfraConfigState", + "value": "wlanjupi" + }, + { + "type": 3, + "name": "internal:WifiModeState", + "value": "infrastructure" + } + ] + }, + { + "attributes": [ + { + "type": 3, + "name": "core:CommissioningCode", + "value": "fe5d572e-fa37-4a6a-821c-bf842ae21692" + }, + { + "type": 3, + "name": "core:MacAddress", + "value": "oegKJL640fA=" + } + ], + "available": true, + "definition": { + "attributes": [ + { + "name": "core:CommissioningCode" + }, + { + "name": "core:MacAddress" + } + ], + "uiClass": "NetworkComponent", + "commands": [ + { + "nparams": 0, + "commandName": "refreshRoutingTable" + }, + { + "nparams": 0, + "commandName": "leaveNetwork" + }, + { + "nparams": 0, + "commandName": "refreshBindingTable" + }, + { + "nparams": 0, + "commandName": "refreshNeighborTable" + } + ], + "widgetName": "ZigbeeNetwork", + "type": "INFRASTRUCTURE_COMPONENT", + "states": [ + { + "name": "zigbee:RoutingTableState" + }, + { + "name": "zigbee:NeighborTableState" + }, + { + "name": "core:StatusState" + }, + { + "name": "zigbee:BindingTableState" + } + ] + }, + "controllableName": "zigbee:ZigbeeNetworkNode", + "label": "**", + "enabled": true, + "type": 6, + "subsystemId": 0, + "synced": true, + "deviceURL": "zigbee://1234-5678-1516/2501/0", + "states": [] + }, + { + "attributes": [ + { + "type": 3, + "name": "zigbee:Role", + "value": "coordinator" + }, + { + "type": 1, + "name": "zigbee:RadioChannel", + "value": 20 + }, + { + "type": 3, + "name": "core:MacAddress", + "value": "ngeo/v+BoJQ=" + } + ], + "available": true, + "definition": { + "attributes": [ + { + "name": "zigbee:Role" + }, + { + "name": "core:ManufacturerId" + }, + { + "name": "zigbee:RadioChannel" + }, + { + "name": "core:MacAddress" + } + ], + "uiClass": "ProtocolGateway", + "commands": [ + { + "nparams": 2, + "commandName": "bind", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "openNetwork", + "paramsSig": "p1" + }, + { + "nparams": 0, + "commandName": "bindingNetwork" + }, + { + "nparams": 2, + "commandName": "unbind", + "paramsSig": "p1,p2" + }, + { + "nparams": 0, + "commandName": "refreshNetwork" + }, + { + "nparams": 0, + "commandName": "openNetworkWithCommissioningManagement" + }, + { + "nparams": 0, + "commandName": "openNetworkManagement" + }, + { + "nparams": 0, + "commandName": "closeNetworkManagement" + }, + { + "nparams": 0, + "commandName": "closeNetwork" + } + ], + "widgetName": "ZigbeeStack", + "type": "PROTOCOL_GATEWAY", + "states": [ + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "zigbee:LinkQualityIndicatorState" + }, + { + "name": "core:ProductModelNameState" + }, + { + "name": "core:ManufacturerNameState" + } + ] + }, + "controllableName": "zigbee:StackV3Component", + "label": "** *(**/**)*", + "enabled": true, + "type": 5, + "subsystemId": 0, + "synced": true, + "deviceURL": "zigbee://1234-5678-1516/0/242", + "states": [] + }, + { + "attributes": [ + { + "type": 3, + "name": "core:MacAddress", + "value": "ngeo/v+BoJQ=" + } + ], + "available": true, + "definition": { + "attributes": [ + { + "name": "core:CommissioningCode" + }, + { + "name": "core:MacAddress" + } + ], + "uiClass": "NetworkComponent", + "commands": [ + { + "nparams": 0, + "commandName": "refreshRoutingTable" + }, + { + "nparams": 0, + "commandName": "leaveNetwork" + }, + { + "nparams": 0, + "commandName": "refreshBindingTable" + }, + { + "nparams": 0, + "commandName": "refreshNeighborTable" + } + ], + "widgetName": "ZigbeeNetwork", + "type": "INFRASTRUCTURE_COMPONENT", + "states": [ + { + "name": "zigbee:RoutingTableState" + }, + { + "name": "zigbee:NeighborTableState" + }, + { + "name": "core:StatusState" + }, + { + "name": "zigbee:BindingTableState" + } + ] + }, + "controllableName": "zigbee:ZigbeeNetworkNode", + "label": "** *(**/**)*", + "enabled": true, + "type": 6, + "subsystemId": 0, + "synced": true, + "deviceURL": "zigbee://1234-5678-1516/0/0", + "states": [] + }, + { + "attributes": [ + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5125936A06" + }, + { + "type": 10, + "name": "core:SupportedManufacturerProcedures", + "value": [ + { + "procedureName": "delete_my_position" + }, + { + "procedureName": "double_power_cut" + }, + { + "procedureName": "reset_actuator" + }, + { + "procedureName": "save_my_position" + } + ] + }, + { + "type": 10, + "name": "core:SupportedManufacturerSettingsCommands", + "value": [ + "delete_my_position", + "double_power_cut", + "reset_actuator", + "save_my_position", + "set_running_time_down", + "set_running_time_up" + ] + }, + { + "type": 10, + "name": "core:SupportedReadableManufacturerData", + "value": ["current_position", "running_time_down", "running_time_up"] + } + ], + "deviceURL": "io://1234-5678-1516/3897767", + "definition": { + "attributes": [ + { + "name": "core:Manufacturer" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:SupportedManufacturerProcedures" + }, + { + "name": "core:SupportedManufacturerSettingsCommands" + }, + { + "name": "core:SupportedReadableManufacturerData" + } + ], + "uiClass": "RollerShutter", + "commands": [ + { + "nparams": 0, + "commandName": "stop" + }, + { + "nparams": 0, + "commandName": "getName" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setName" + }, + { + "nparams": 0, + "commandName": "identify" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setClosure" + }, + { + "nparams": 0, + "commandName": "close" + }, + { + "nparams": 0, + "commandName": "down" + }, + { + "nparams": 0, + "commandName": "up" + }, + { + "nparams": 0, + "commandName": "open" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "advancedRefresh" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "readManufacturerData" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setDeployment" + }, + { + "nparams": 0, + "commandName": "refreshMemorized1Position" + }, + { + "nparams": 2, + "paramsSig": "p1,p2", + "commandName": "runManufacturerSettingsCommand" + }, + { + "nparams": 0, + "commandName": "keepOneWayControllersAndDeleteNode" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "removeLockLevel" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "addLockLevel" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setConfigState" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "unpairOneWayController" + }, + { + "nparams": 0, + "commandName": "unpairAllOneWayControllers" + }, + { + "nparams": 0, + "commandName": "stopIdentify" + }, + { + "nparams": 0, + "commandName": "startIdentify" + }, + { + "nparams": 1, + "paramsSig": "p1,*p2", + "commandName": "pairOneWayController" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "delayedStopIdentify" + }, + { + "nparams": 0, + "commandName": "resetLockLevels" + }, + { + "nparams": 0, + "commandName": "sendIOKey" + }, + { + "nparams": 0, + "commandName": "unpairAllOneWayControllersAndDeleteNode" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setSecuredPosition" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setPosition" + }, + { + "nparams": 0, + "commandName": "my" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "executeManufacturerProcedure" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "writeManufacturerData" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "wink" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "setMemorized1Position" + } + ], + "states": [ + { + "name": "core:ManufacturerDiagnosticsState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:CommandLockLevelsState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:Memorized1PositionState" + }, + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "core:NameState" + } + ], + "type": "ACTUATOR", + "widgetName": "PositionableRollerShutterUno" + }, + "controllableName": "io:RollerShutterUnoIOComponent", + "label": "Back Door Shutter", + "enabled": true, + "type": 1, + "subsystemId": 0, + "synced": true, + "available": true, + "states": [ + { + "type": 11, + "name": "core:ManufacturerSettingsState", + "value": {} + }, + { + "type": 11, + "name": "core:CommandLockLevelsState", + "value": [] + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 100 + }, + { + "type": 1, + "name": "core:ClosureState", + "value": 124 + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "open" + }, + { + "type": 1, + "name": "core:TargetClosureState", + "value": 0 + }, + { + "type": 6, + "name": "core:MovingState", + "value": false + }, + { + "type": 3, + "name": "core:NameState", + "value": "Back Door Shutter" + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 105 + } + ] + }, + { + "attributes": [], + "deviceURL": "io://1234-5678-1516/8006045", + "definition": { + "attributes": [], + "uiClass": "ProtocolGateway", + "commands": [ + { + "nparams": 0, + "commandName": "shareNetwork" + }, + { + "nparams": 0, + "paramsSig": "*p1,*p2", + "commandName": "discover1WayController" + }, + { + "nparams": 0, + "commandName": "resetNetworkSecurity" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "discoverActuators" + }, + { + "nparams": 0, + "commandName": "joinNetwork" + }, + { + "nparams": 0, + "commandName": "discoverSomfyUnsetActuators" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "advancedSomfyDiscover" + }, + { + "nparams": 1, + "paramsSig": "p1", + "commandName": "discoverSensors" + } + ], + "states": [], + "type": "PROTOCOL_GATEWAY", + "widgetName": "IOStack" + }, + "controllableName": "io:StackComponent", + "label": "** *(**)*", + "enabled": true, + "type": 5, + "subsystemId": 0, + "synced": true, + "available": true, + "states": [] + } + ], + "gateways": [ + { + "connectivity": { + "status": "OK", + "protocolVersion": "2025.3.2-7" + }, + "gatewayId": "1234-5678-1516" + } + ] +} diff --git a/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_switch_europe_3.json b/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_switch_europe_3.json new file mode 100644 index 000000000000..8c1d993b01bf --- /dev/null +++ b/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_switch_europe_3.json @@ -0,0 +1,10877 @@ +{ + "gateways": [ + { + "connectivity": { + "status": "OK", + "protocolVersion": "2023.1.4-12" + }, + "gatewayId": "1234-5678--9373" + } + ], + "devices": [ + { + "deviceURL": "zigbee://1234-5678--9373/0/0", + "available": true, + "synced": true, + "type": 6, + "states": [ + { + "type": 3, + "name": "core:StatusState", + "value": "available" + } + ], + "label": "Guest Room Network Module", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:MacAddress", + "value": "PqZA/v+B9ow=" + } + ], + "enabled": true, + "controllableName": "zigbee:ZigbeeNetworkNode", + "definition": { + "states": [ + { + "name": "zigbee:RoutingTableState", + "rawStateId": "32818" + }, + { + "name": "zigbee:NeighborTableState", + "rawStateId": "32817" + }, + { + "name": "core:StatusState", + "rawStateId": "Available" + }, + { + "name": "zigbee:BindingTableState", + "rawStateId": "32819" + } + ], + "widgetName": "ZigbeeNetwork", + "attributes": [ + { + "name": "core:MacAddress" + }, + { + "name": "core:CommissioningCode" + } + ], + "uiClass": "NetworkComponent", + "commands": [ + { + "commandName": "refreshNeighborTable", + "nparams": 0 + }, + { + "commandName": "refreshRoutingTable", + "nparams": 0 + }, + { + "commandName": "refreshBindingTable", + "nparams": 0 + }, + { + "commandName": "leaveNetwork", + "nparams": 0 + } + ], + "type": "INFRASTRUCTURE_COMPONENT" + } + }, + { + "deviceURL": "io://1234-5678--9373/3000744#1", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 92 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:OpenClosedValveState", + "value": "closed" + }, + { + "type": 3, + "name": "core:OperatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:TargetRoomTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:TargetTemperatureState", + "value": 6 + }, + { + "type": 3, + "name": "io:CurrentHeatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:DerogatedTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:DerogationEndDateTimeState", + "value": 1684108718000 + }, + { + "type": 1, + "name": "core:DerogationStartDateTimeState", + "value": 1684108718000 + }, + { + "type": 3, + "name": "io:DerogationHeatingModeState", + "value": "manual" + }, + { + "type": 3, + "name": "io:DerogationTypeState", + "value": "further_notice" + }, + { + "type": 1, + "name": "io:ManualModeTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:BatteryLevelState", + "value": 62 + }, + { + "type": 3, + "name": "io:ValveInstallationModeState", + "value": "finished" + }, + { + "type": 1, + "name": "core:ComfortRoomTemperatureState", + "value": 21 + }, + { + "type": 1, + "name": "core:EcoTargetTemperatureState", + "value": 19 + }, + { + "type": 1, + "name": "core:FrostProtectionRoomTemperatureState", + "value": 8 + }, + { + "type": 1, + "name": "io:AwayModeTargetTemperatureState", + "value": 17 + }, + { + "type": 1, + "name": "io:GeofencingModeTargetTemperatureState", + "value": 20 + }, + { + "type": 1, + "name": "io:OpenWindowDetectedTargetTemperatureState", + "value": 8 + }, + { + "type": 3, + "name": "core:ActiveTimeProgramState", + "value": "none" + }, + { + "type": 1, + "name": "core:MaxSetpointState", + "value": 26 + }, + { + "type": 1, + "name": "core:MinSetpointState", + "value": 5 + }, + { + "type": 3, + "name": "core:OpenWindowDetectionActivationState", + "value": "active" + }, + { + "type": 1, + "name": "core:TemperatureOffsetConfigurationState", + "value": 0 + }, + { + "type": 3, + "name": "io:ByPassActivationState", + "value": "disable" + }, + { + "type": 3, + "name": "io:LockKeyActivationState", + "value": "disable" + }, + { + "type": 11, + "name": "core:TimeProgram1State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + }, + { + "type": 11, + "name": "core:TimeProgram2State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + } + ], + "label": "Garage Radiator", + "subsystemId": 1, + "attributes": [], + "enabled": true, + "controllableName": "io:HeatingValveIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ActiveTimeProgramState", + "rawStateId": "84059684" + }, + { + "name": "core:MaxSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:MinSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:OpenWindowDetectionActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TemperatureOffsetConfigurationState", + "rawStateId": "84059684" + }, + { + "name": "io:ByPassActivationState", + "rawStateId": "84059684" + }, + { + "name": "io:LockKeyActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TimeProgram2State", + "rawStateId": "84059687" + }, + { + "name": "core:BatteryLevelState", + "rawStateId": "84059682" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "io:ValveInstallationModeState", + "rawStateId": "84059682" + }, + { + "name": "core:DerogatedTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationEndDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationStartDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationHeatingModeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationTypeState", + "rawStateId": "84059681" + }, + { + "name": "io:ManualModeTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:ComfortRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:EcoTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:FrostProtectionRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:AwayModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:GeofencingModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:OpenWindowDetectedTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:NameState", + "rawStateId": "2415919105" + }, + { + "name": "core:OpenClosedValveState", + "rawStateId": "84059680" + }, + { + "name": "core:OperatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetRoomTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "io:CurrentHeatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TimeProgram1State", + "rawStateId": "84059686" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "ValveHeatingTemperatureInterface", + "attributes": [], + "uiClass": "HeatingSystem", + "commands": [ + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "exitDerogation", + "nparams": 0 + }, + { + "nparams": 4, + "commandName": "setAllModeTemperatures", + "paramsSig": "p1,p2,p3,p4" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setDerogation", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setTimeProgramById", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setValveSettings", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/15097783", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 58 + }, + { + "type": 1, + "name": "core:ClosureState", + "value": 0 + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "open" + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:NameState", + "value": "Sunroom Shades" + } + ], + "label": "Sunroom Shades", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "00000000000000000145" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "VELUX" + } + ], + "enabled": true, + "controllableName": "io:VerticalInteriorBlindVeluxIOComponent", + "definition": { + "states": [ + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:NameState", + "rawStateId": "1" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ClosureState", + "rawStateId": "65537" + }, + { + "name": "core:OpenClosedState", + "rawStateId": "65537" + }, + { + "name": "core:Memorized1PositionState", + "rawStateId": "16832512" + }, + { + "name": "core:SecuredPositionState", + "rawStateId": "16832522" + } + ], + "widgetName": "PositionableTiltedScreen", + "attributes": [ + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "Screen", + "commands": [ + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/13876191#1", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 50 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:OpenClosedValveState", + "value": "closed" + }, + { + "type": 3, + "name": "core:OperatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:TargetRoomTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:TargetTemperatureState", + "value": 6 + }, + { + "type": 3, + "name": "io:CurrentHeatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:DerogatedTargetTemperatureState", + "value": 6 + }, + { + "type": 3, + "name": "io:DerogationHeatingModeState", + "value": "manual" + }, + { + "type": 3, + "name": "io:DerogationTypeState", + "value": "further_notice" + }, + { + "type": 1, + "name": "io:ManualModeTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:BatteryLevelState", + "value": 87 + }, + { + "type": 3, + "name": "io:ValveInstallationModeState", + "value": "finished" + }, + { + "type": 1, + "name": "core:ComfortRoomTemperatureState", + "value": 21 + }, + { + "type": 1, + "name": "core:EcoTargetTemperatureState", + "value": 19 + }, + { + "type": 1, + "name": "core:FrostProtectionRoomTemperatureState", + "value": 8 + }, + { + "type": 1, + "name": "io:AwayModeTargetTemperatureState", + "value": 17 + }, + { + "type": 1, + "name": "io:GeofencingModeTargetTemperatureState", + "value": 20 + }, + { + "type": 1, + "name": "io:OpenWindowDetectedTargetTemperatureState", + "value": 8 + }, + { + "type": 3, + "name": "core:ActiveTimeProgramState", + "value": "none" + }, + { + "type": 1, + "name": "core:MaxSetpointState", + "value": 26 + }, + { + "type": 1, + "name": "core:MinSetpointState", + "value": 5 + }, + { + "type": 3, + "name": "core:OpenWindowDetectionActivationState", + "value": "active" + }, + { + "type": 1, + "name": "core:TemperatureOffsetConfigurationState", + "value": 0 + }, + { + "type": 3, + "name": "io:ByPassActivationState", + "value": "disable" + }, + { + "type": 3, + "name": "io:LockKeyActivationState", + "value": "enable" + }, + { + "type": 11, + "name": "core:TimeProgram1State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + }, + { + "type": 11, + "name": "core:TimeProgram2State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + } + ], + "label": "Garden Radiator", + "subsystemId": 1, + "attributes": [], + "enabled": true, + "controllableName": "io:HeatingValveIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ActiveTimeProgramState", + "rawStateId": "84059684" + }, + { + "name": "core:MaxSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:MinSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:OpenWindowDetectionActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TemperatureOffsetConfigurationState", + "rawStateId": "84059684" + }, + { + "name": "io:ByPassActivationState", + "rawStateId": "84059684" + }, + { + "name": "io:LockKeyActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TimeProgram2State", + "rawStateId": "84059687" + }, + { + "name": "core:BatteryLevelState", + "rawStateId": "84059682" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "io:ValveInstallationModeState", + "rawStateId": "84059682" + }, + { + "name": "core:DerogatedTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationEndDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationStartDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationHeatingModeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationTypeState", + "rawStateId": "84059681" + }, + { + "name": "io:ManualModeTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:ComfortRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:EcoTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:FrostProtectionRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:AwayModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:GeofencingModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:OpenWindowDetectedTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:NameState", + "rawStateId": "2415919105" + }, + { + "name": "core:OpenClosedValveState", + "rawStateId": "84059680" + }, + { + "name": "core:OperatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetRoomTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "io:CurrentHeatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TimeProgram1State", + "rawStateId": "84059686" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "ValveHeatingTemperatureInterface", + "attributes": [], + "uiClass": "HeatingSystem", + "commands": [ + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "exitDerogation", + "nparams": 0 + }, + { + "nparams": 4, + "commandName": "setAllModeTemperatures", + "paramsSig": "p1,p2,p3,p4" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setDerogation", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setTimeProgramById", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setValveSettings", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/13659989#1", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 82 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:OpenClosedValveState", + "value": "closed" + }, + { + "type": 3, + "name": "core:OperatingModeState", + "value": "manual" + }, + { + "type": 2, + "name": "core:TargetRoomTemperatureState", + "value": 5 + }, + { + "type": 2, + "name": "core:TargetTemperatureState", + "value": 5 + }, + { + "type": 3, + "name": "io:CurrentHeatingModeState", + "value": "manual" + }, + { + "type": 2, + "name": "core:DerogatedTargetTemperatureState", + "value": 5 + }, + { + "type": 1, + "name": "core:DerogationEndDateTimeState", + "value": 1687508456000 + }, + { + "type": 1, + "name": "core:DerogationStartDateTimeState", + "value": 1687508456000 + }, + { + "type": 3, + "name": "io:DerogationHeatingModeState", + "value": "manual" + }, + { + "type": 3, + "name": "io:DerogationTypeState", + "value": "further_notice" + }, + { + "type": 2, + "name": "io:ManualModeTargetTemperatureState", + "value": 5 + }, + { + "type": 1, + "name": "core:BatteryLevelState", + "value": 53 + }, + { + "type": 3, + "name": "io:ValveInstallationModeState", + "value": "finished" + }, + { + "type": 1, + "name": "core:ComfortRoomTemperatureState", + "value": 21 + }, + { + "type": 1, + "name": "core:EcoTargetTemperatureState", + "value": 19 + }, + { + "type": 1, + "name": "core:FrostProtectionRoomTemperatureState", + "value": 8 + }, + { + "type": 1, + "name": "io:AwayModeTargetTemperatureState", + "value": 17 + }, + { + "type": 1, + "name": "io:GeofencingModeTargetTemperatureState", + "value": 20 + }, + { + "type": 1, + "name": "io:OpenWindowDetectedTargetTemperatureState", + "value": 8 + }, + { + "type": 3, + "name": "core:ActiveTimeProgramState", + "value": "none" + }, + { + "type": 1, + "name": "core:MaxSetpointState", + "value": 26 + }, + { + "type": 1, + "name": "core:MinSetpointState", + "value": 5 + }, + { + "type": 3, + "name": "core:OpenWindowDetectionActivationState", + "value": "active" + }, + { + "type": 1, + "name": "core:TemperatureOffsetConfigurationState", + "value": 0 + }, + { + "type": 3, + "name": "io:ByPassActivationState", + "value": "disable" + }, + { + "type": 3, + "name": "io:LockKeyActivationState", + "value": "disable" + }, + { + "type": 11, + "name": "core:TimeProgram1State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + }, + { + "type": 11, + "name": "core:TimeProgram2State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + } + ], + "label": "Hallway Radiator", + "subsystemId": 1, + "attributes": [], + "enabled": true, + "controllableName": "io:HeatingValveIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ActiveTimeProgramState", + "rawStateId": "84059684" + }, + { + "name": "core:MaxSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:MinSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:OpenWindowDetectionActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TemperatureOffsetConfigurationState", + "rawStateId": "84059684" + }, + { + "name": "io:ByPassActivationState", + "rawStateId": "84059684" + }, + { + "name": "io:LockKeyActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TimeProgram2State", + "rawStateId": "84059687" + }, + { + "name": "core:BatteryLevelState", + "rawStateId": "84059682" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "io:ValveInstallationModeState", + "rawStateId": "84059682" + }, + { + "name": "core:DerogatedTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationEndDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationStartDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationHeatingModeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationTypeState", + "rawStateId": "84059681" + }, + { + "name": "io:ManualModeTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:ComfortRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:EcoTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:FrostProtectionRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:AwayModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:GeofencingModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:OpenWindowDetectedTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:NameState", + "rawStateId": "2415919105" + }, + { + "name": "core:OpenClosedValveState", + "rawStateId": "84059680" + }, + { + "name": "core:OperatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetRoomTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "io:CurrentHeatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TimeProgram1State", + "rawStateId": "84059686" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "ValveHeatingTemperatureInterface", + "attributes": [], + "uiClass": "HeatingSystem", + "commands": [ + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "exitDerogation", + "nparams": 0 + }, + { + "nparams": 4, + "commandName": "setAllModeTemperatures", + "paramsSig": "p1,p2,p3,p4" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setDerogation", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setTimeProgramById", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setValveSettings", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/1170079", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 94 + }, + { + "type": 1, + "name": "core:LightIntensityState", + "value": 56 + }, + { + "type": 3, + "name": "core:OnOffState", + "value": "on" + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:NameState", + "value": "Guest Room Ceiling Light" + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 50 + } + ], + "label": "Guest Room Ceiling Light", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5133033A02" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:DimmableLightIOComponent", + "definition": { + "states": [ + { + "name": "core:AdditionalStatusState", + "rawStateId": "2146500645" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:NameState", + "rawStateId": "1" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ManufacturerSettingsState", + "rawStateId": "2" + }, + { + "name": "core:ManufacturerDiagnosticsState", + "rawStateId": "2" + }, + { + "name": "core:LightIntensityState", + "rawStateId": "65537" + }, + { + "name": "core:OnOffState", + "rawStateId": "65537" + }, + { + "name": "core:Memorized1PositionState", + "rawStateId": "16832512" + }, + { + "name": "core:SecuredPositionState", + "rawStateId": "16832522" + } + ], + "widgetName": "DimmerLight", + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "Light", + "commands": [ + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "onWithTimer", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOnOff", + "paramsSig": "p1" + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setIntensity", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setIntensityWithTimer", + "paramsSig": "p1,p2,*p3" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/1292684#2", + "available": true, + "synced": true, + "type": 2, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 98 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 2, + "name": "core:TemperatureState", + "value": 24.1 + } + ], + "label": "Garden Temperature Sensor", + "subsystemId": 2, + "attributes": [ + { + "type": 3, + "name": "core:PowerSourceType", + "value": "battery" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5145198A12" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:TemperatureIOSystemSensor", + "definition": { + "states": [ + { + "name": "core:TemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "TemperatureSensor", + "attributes": [ + { + "name": "core:MaxSensedValue" + }, + { + "name": "core:PowerSourceType" + }, + { + "name": "core:MinSensedValue" + }, + { + "name": "core:MeasuredValueType" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "TemperatureSensor", + "commands": [ + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + } + ], + "type": "SENSOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/10074960#1", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 82 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:OpenClosedValveState", + "value": "closed" + }, + { + "type": 3, + "name": "core:OperatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:TargetRoomTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:TargetTemperatureState", + "value": 6 + }, + { + "type": 3, + "name": "io:CurrentHeatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:DerogatedTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:DerogationEndDateTimeState", + "value": 1682535487000 + }, + { + "type": 1, + "name": "core:DerogationStartDateTimeState", + "value": 1682535487000 + }, + { + "type": 3, + "name": "io:DerogationHeatingModeState", + "value": "manual" + }, + { + "type": 3, + "name": "io:DerogationTypeState", + "value": "further_notice" + }, + { + "type": 1, + "name": "io:ManualModeTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:BatteryLevelState", + "value": 72 + }, + { + "type": 3, + "name": "io:ValveInstallationModeState", + "value": "finished" + }, + { + "type": 1, + "name": "core:ComfortRoomTemperatureState", + "value": 21 + }, + { + "type": 1, + "name": "core:EcoTargetTemperatureState", + "value": 19 + }, + { + "type": 1, + "name": "core:FrostProtectionRoomTemperatureState", + "value": 8 + }, + { + "type": 1, + "name": "io:AwayModeTargetTemperatureState", + "value": 17 + }, + { + "type": 1, + "name": "io:GeofencingModeTargetTemperatureState", + "value": 20 + }, + { + "type": 1, + "name": "io:OpenWindowDetectedTargetTemperatureState", + "value": 8 + }, + { + "type": 3, + "name": "core:ActiveTimeProgramState", + "value": "none" + }, + { + "type": 1, + "name": "core:MaxSetpointState", + "value": 26 + }, + { + "type": 1, + "name": "core:MinSetpointState", + "value": 5 + }, + { + "type": 3, + "name": "core:OpenWindowDetectionActivationState", + "value": "active" + }, + { + "type": 1, + "name": "core:TemperatureOffsetConfigurationState", + "value": 0 + }, + { + "type": 3, + "name": "io:ByPassActivationState", + "value": "disable" + }, + { + "type": 3, + "name": "io:LockKeyActivationState", + "value": "disable" + }, + { + "type": 11, + "name": "core:TimeProgram1State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + }, + { + "type": 11, + "name": "core:TimeProgram2State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + } + ], + "label": "Garage Thermostat", + "subsystemId": 1, + "attributes": [], + "enabled": true, + "controllableName": "io:HeatingValveIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ActiveTimeProgramState", + "rawStateId": "84059684" + }, + { + "name": "core:MaxSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:MinSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:OpenWindowDetectionActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TemperatureOffsetConfigurationState", + "rawStateId": "84059684" + }, + { + "name": "io:ByPassActivationState", + "rawStateId": "84059684" + }, + { + "name": "io:LockKeyActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TimeProgram2State", + "rawStateId": "84059687" + }, + { + "name": "core:BatteryLevelState", + "rawStateId": "84059682" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "io:ValveInstallationModeState", + "rawStateId": "84059682" + }, + { + "name": "core:DerogatedTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationEndDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationStartDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationHeatingModeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationTypeState", + "rawStateId": "84059681" + }, + { + "name": "io:ManualModeTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:ComfortRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:EcoTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:FrostProtectionRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:AwayModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:GeofencingModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:OpenWindowDetectedTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:NameState", + "rawStateId": "2415919105" + }, + { + "name": "core:OpenClosedValveState", + "rawStateId": "84059680" + }, + { + "name": "core:OperatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetRoomTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "io:CurrentHeatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TimeProgram1State", + "rawStateId": "84059686" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "ValveHeatingTemperatureInterface", + "attributes": [], + "uiClass": "HeatingSystem", + "commands": [ + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "exitDerogation", + "nparams": 0 + }, + { + "nparams": 4, + "commandName": "setAllModeTemperatures", + "paramsSig": "p1,p2,p3,p4" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setDerogation", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setTimeProgramById", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setValveSettings", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/10832611#2", + "available": true, + "synced": true, + "type": 2, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 54 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 1, + "name": "core:TemperatureState", + "value": 24.2 + } + ], + "label": "Garden Temp Probe", + "subsystemId": 2, + "attributes": [ + { + "type": 3, + "name": "core:PowerSourceType", + "value": "battery" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5145198A12" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:TemperatureIOSystemSensor", + "definition": { + "states": [ + { + "name": "core:TemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "TemperatureSensor", + "attributes": [ + { + "name": "core:MaxSensedValue" + }, + { + "name": "core:PowerSourceType" + }, + { + "name": "core:MinSensedValue" + }, + { + "name": "core:MeasuredValueType" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "TemperatureSensor", + "commands": [ + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + } + ], + "type": "SENSOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/3904805", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 100 + }, + { + "type": 11, + "name": "core:ManufacturerSettingsState", + "value": { + "current_position": 7169 + } + }, + { + "type": 1, + "name": "core:ClosureState", + "value": 14 + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "open" + }, + { + "type": 1, + "name": "core:TargetClosureState", + "value": 14 + }, + { + "type": 1, + "name": "core:DeploymentState", + "value": 14 + }, + { + "type": 6, + "name": "core:MovingState", + "value": false + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:NameState", + "value": "Library Screen" + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 50 + } + ], + "label": "Library Screen", + "subsystemId": 0, + "attributes": [ + { + "type": 10, + "name": "core:SupportedManufacturerSettingsCommands", + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode", + "enter_back_impulse_setting_mode", + "save_back_impulse_position" + ] + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5104761X04" + } + ], + "enabled": true, + "controllableName": "io:VerticalExteriorAwningIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:NameState", + "rawStateId": "1" + }, + { + "name": "core:AdditionalStatusState", + "rawStateId": "2146500645" + }, + { + "name": "core:TargetClosureState", + "rawStateId": "16832522" + }, + { + "name": "core:SecuredPositionState", + "rawStateId": "16832522" + }, + { + "name": "core:ManufacturerSettingsState", + "rawStateId": "65537" + }, + { + "name": "core:ClosureState", + "rawStateId": "65537" + }, + { + "name": "core:OpenClosedState", + "rawStateId": "65537" + }, + { + "name": "core:DeploymentState", + "rawStateId": "65537" + }, + { + "name": "core:MovingState", + "rawStateId": "65557" + }, + { + "name": "core:ManufacturerDiagnosticsState", + "rawStateId": "2" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:Memorized1PositionState", + "rawStateId": "16832512" + } + ], + "widgetName": "PositionableScreen", + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands" + }, + { + "name": "core:Manufacturer" + }, + { + "name": "core:FirmwareRevision" + } + ], + "uiClass": "ExteriorScreen", + "commands": [ + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setDeployment", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "undeploy", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "deploy", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/9749990#2", + "available": true, + "synced": true, + "type": 2, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 82 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 2, + "name": "core:TemperatureState", + "value": 24.7 + } + ], + "label": "Kitchen Temp Probe", + "subsystemId": 2, + "attributes": [ + { + "type": 3, + "name": "core:PowerSourceType", + "value": "battery" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5145198A12" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:TemperatureIOSystemSensor", + "definition": { + "states": [ + { + "name": "core:TemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "TemperatureSensor", + "attributes": [ + { + "name": "core:MaxSensedValue" + }, + { + "name": "core:PowerSourceType" + }, + { + "name": "core:MinSensedValue" + }, + { + "name": "core:MeasuredValueType" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "TemperatureSensor", + "commands": [ + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + } + ], + "type": "SENSOR" + } + }, + { + "deviceURL": "internal://1234-5678--9373/wifi/0", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 1, + "name": "internal:SignalStrengthState", + "value": 63 + }, + { + "type": 3, + "name": "internal:WifiModeState", + "value": "infrastructure" + }, + { + "type": 3, + "name": "internal:CurrentInfraConfigState", + "value": "Milky Way" + } + ], + "label": "Bathroom Wi-Fi Module", + "subsystemId": 0, + "attributes": [], + "enabled": true, + "controllableName": "internal:WifiComponent", + "definition": { + "states": [ + { + "name": "internal:CurrentInfraConfigState", + "rawStateId": "currentInfraConfig" + }, + { + "name": "internal:SignalStrengthState", + "rawStateId": "signalStrength" + }, + { + "name": "internal:WifiModeState", + "rawStateId": "mode" + } + ], + "widgetName": "Wifi", + "attributes": [], + "uiClass": "Wifi", + "commands": [ + { + "nparams": 1, + "commandName": "setWifiMode", + "paramsSig": "p1" + }, + { + "commandName": "clearCredentials", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setTargetInfraConfig", + "paramsSig": "p1,p2" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/5488574", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 88 + }, + { + "type": 1, + "name": "core:LightIntensityState", + "value": 56 + }, + { + "type": 3, + "name": "core:OnOffState", + "value": "on" + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:NameState", + "value": "Dining Room Wall Light" + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": -5 + } + ], + "label": "Dining Room Wall Light", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5133033A02" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:DimmableLightIOComponent", + "definition": { + "states": [ + { + "name": "core:AdditionalStatusState", + "rawStateId": "2146500645" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:NameState", + "rawStateId": "1" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ManufacturerSettingsState", + "rawStateId": "2" + }, + { + "name": "core:ManufacturerDiagnosticsState", + "rawStateId": "2" + }, + { + "name": "core:LightIntensityState", + "rawStateId": "65537" + }, + { + "name": "core:OnOffState", + "rawStateId": "65537" + }, + { + "name": "core:Memorized1PositionState", + "rawStateId": "16832512" + }, + { + "name": "core:SecuredPositionState", + "rawStateId": "16832522" + } + ], + "widgetName": "DimmerLight", + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "Light", + "commands": [ + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "onWithTimer", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOnOff", + "paramsSig": "p1" + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setIntensity", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setIntensityWithTimer", + "paramsSig": "p1,p2,*p3" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/13876191#2", + "available": true, + "synced": true, + "type": 2, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 50 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 2, + "name": "core:TemperatureState", + "value": 23.9 + } + ], + "label": "Garage Temp Probe", + "subsystemId": 2, + "attributes": [ + { + "type": 3, + "name": "core:PowerSourceType", + "value": "battery" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5145198A12" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:TemperatureIOSystemSensor", + "definition": { + "states": [ + { + "name": "core:TemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "TemperatureSensor", + "attributes": [ + { + "name": "core:MaxSensedValue" + }, + { + "name": "core:PowerSourceType" + }, + { + "name": "core:MinSensedValue" + }, + { + "name": "core:MeasuredValueType" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "TemperatureSensor", + "commands": [ + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + } + ], + "type": "SENSOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/13659989#2", + "available": true, + "synced": true, + "type": 2, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 82 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 2, + "name": "core:TemperatureState", + "value": 24.6 + } + ], + "label": "Terrace Temp Probe", + "subsystemId": 2, + "attributes": [ + { + "type": 3, + "name": "core:PowerSourceType", + "value": "battery" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5145198A12" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:TemperatureIOSystemSensor", + "definition": { + "states": [ + { + "name": "core:TemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "TemperatureSensor", + "attributes": [ + { + "name": "core:MaxSensedValue" + }, + { + "name": "core:PowerSourceType" + }, + { + "name": "core:MinSensedValue" + }, + { + "name": "core:MeasuredValueType" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "TemperatureSensor", + "commands": [ + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + } + ], + "type": "SENSOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/3000744#2", + "available": true, + "synced": true, + "type": 2, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 92 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 1, + "name": "core:TemperatureState", + "value": 24.2 + } + ], + "label": "Bathroom Temp Probe", + "subsystemId": 2, + "attributes": [ + { + "type": 3, + "name": "core:PowerSourceType", + "value": "battery" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5145198A12" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:TemperatureIOSystemSensor", + "definition": { + "states": [ + { + "name": "core:TemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "TemperatureSensor", + "attributes": [ + { + "name": "core:MaxSensedValue" + }, + { + "name": "core:PowerSourceType" + }, + { + "name": "core:MinSensedValue" + }, + { + "name": "core:MeasuredValueType" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "TemperatureSensor", + "commands": [ + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + } + ], + "type": "SENSOR" + } + }, + { + "deviceURL": "zigbee://1234-5678--9373/65535", + "available": true, + "synced": true, + "type": 5, + "states": [], + "label": "Garden Bridge", + "subsystemId": 0, + "attributes": [], + "enabled": true, + "controllableName": "zigbee:TransceiverV3_0Component", + "definition": { + "states": [], + "widgetName": "ZigbeeStack", + "attributes": [], + "uiClass": "ProtocolGateway", + "commands": [], + "type": "PROTOCOL_GATEWAY" + } + }, + { + "deviceURL": "io://1234-5678--9373/10832611#1", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 54 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:OpenClosedValveState", + "value": "closed" + }, + { + "type": 3, + "name": "core:OperatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:TargetRoomTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:TargetTemperatureState", + "value": 6 + }, + { + "type": 3, + "name": "io:CurrentHeatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:DerogatedTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:DerogationEndDateTimeState", + "value": 1686247739000 + }, + { + "type": 1, + "name": "core:DerogationStartDateTimeState", + "value": 1686247739000 + }, + { + "type": 3, + "name": "io:DerogationHeatingModeState", + "value": "manual" + }, + { + "type": 3, + "name": "io:DerogationTypeState", + "value": "further_notice" + }, + { + "type": 1, + "name": "io:ManualModeTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:BatteryLevelState", + "value": 48 + }, + { + "type": 3, + "name": "io:ValveInstallationModeState", + "value": "finished" + }, + { + "type": 1, + "name": "core:ComfortRoomTemperatureState", + "value": 21 + }, + { + "type": 1, + "name": "core:EcoTargetTemperatureState", + "value": 19 + }, + { + "type": 1, + "name": "core:FrostProtectionRoomTemperatureState", + "value": 8 + }, + { + "type": 1, + "name": "io:AwayModeTargetTemperatureState", + "value": 17 + }, + { + "type": 1, + "name": "io:GeofencingModeTargetTemperatureState", + "value": 20 + }, + { + "type": 1, + "name": "io:OpenWindowDetectedTargetTemperatureState", + "value": 8 + }, + { + "type": 3, + "name": "core:ActiveTimeProgramState", + "value": "none" + }, + { + "type": 1, + "name": "core:MaxSetpointState", + "value": 26 + }, + { + "type": 1, + "name": "core:MinSetpointState", + "value": 5 + }, + { + "type": 3, + "name": "core:OpenWindowDetectionActivationState", + "value": "active" + }, + { + "type": 1, + "name": "core:TemperatureOffsetConfigurationState", + "value": 0 + }, + { + "type": 3, + "name": "io:ByPassActivationState", + "value": "disable" + }, + { + "type": 3, + "name": "io:LockKeyActivationState", + "value": "disable" + }, + { + "type": 11, + "name": "core:TimeProgram1State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + }, + { + "type": 11, + "name": "core:TimeProgram2State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + } + ], + "label": "Dining Room Thermostat", + "subsystemId": 1, + "attributes": [], + "enabled": true, + "controllableName": "io:HeatingValveIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ActiveTimeProgramState", + "rawStateId": "84059684" + }, + { + "name": "core:MaxSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:MinSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:OpenWindowDetectionActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TemperatureOffsetConfigurationState", + "rawStateId": "84059684" + }, + { + "name": "io:ByPassActivationState", + "rawStateId": "84059684" + }, + { + "name": "io:LockKeyActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TimeProgram2State", + "rawStateId": "84059687" + }, + { + "name": "core:BatteryLevelState", + "rawStateId": "84059682" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "io:ValveInstallationModeState", + "rawStateId": "84059682" + }, + { + "name": "core:DerogatedTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationEndDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationStartDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationHeatingModeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationTypeState", + "rawStateId": "84059681" + }, + { + "name": "io:ManualModeTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:ComfortRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:EcoTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:FrostProtectionRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:AwayModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:GeofencingModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:OpenWindowDetectedTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:NameState", + "rawStateId": "2415919105" + }, + { + "name": "core:OpenClosedValveState", + "rawStateId": "84059680" + }, + { + "name": "core:OperatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetRoomTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "io:CurrentHeatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TimeProgram1State", + "rawStateId": "84059686" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "ValveHeatingTemperatureInterface", + "attributes": [], + "uiClass": "HeatingSystem", + "commands": [ + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "exitDerogation", + "nparams": 0 + }, + { + "nparams": 4, + "commandName": "setAllModeTemperatures", + "paramsSig": "p1,p2,p3,p4" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setDerogation", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setTimeProgramById", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setValveSettings", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "zigbee://1234-5678--9373/0/1", + "available": true, + "synced": true, + "type": 5, + "states": [], + "label": "Bedroom Bridge", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "zigbee:Role", + "value": "coordinator" + }, + { + "type": 1, + "name": "zigbee:RadioChannel", + "value": 20 + }, + { + "type": 3, + "name": "core:MacAddress", + "value": "PqZA/v+B9ow=" + } + ], + "enabled": true, + "controllableName": "zigbee:StackV3Component", + "definition": { + "states": [ + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "Rssi" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "Rssi" + }, + { + "name": "core:ManufacturerNameState" + }, + { + "name": "core:ProductModelNameState" + }, + { + "name": "zigbee:LinkQualityIndicatorState", + "rawStateId": "Lqi" + } + ], + "widgetName": "ZigbeeStack", + "attributes": [ + { + "name": "zigbee:Role" + }, + { + "name": "core:ManufacturerId" + }, + { + "name": "zigbee:RadioChannel" + }, + { + "name": "core:MacAddress" + } + ], + "uiClass": "ProtocolGateway", + "commands": [ + { + "commandName": "openNetworkWithCommissioningManagement", + "nparams": 0 + }, + { + "commandName": "closeNetworkManagement", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "unbind", + "paramsSig": "p1,p2" + }, + { + "commandName": "refreshNetwork", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "openNetwork", + "paramsSig": "p1" + }, + { + "commandName": "closeNetwork", + "nparams": 0 + }, + { + "commandName": "openNetworkManagement", + "nparams": 0 + }, + { + "commandName": "bindingNetwork", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "bind", + "paramsSig": "p1,p2" + } + ], + "type": "PROTOCOL_GATEWAY" + } + }, + { + "creationTime": 1686173907452, + "deviceURL": "rts://1234-5678--9373/16757362", + "available": true, + "synced": true, + "type": 1, + "states": [], + "label": "Attic Curtain", + "definition": { + "states": [], + "widgetName": "UpDownDualCurtain", + "attributes": [], + "uiClass": "Curtain", + "commands": [ + { + "nparams": 0, + "commandName": "stop", + "paramsSig": "*p1" + }, + { + "commandName": "test", + "nparams": 0 + }, + { + "nparams": 0, + "commandName": "open", + "paramsSig": "*p1" + }, + { + "nparams": 0, + "commandName": "close", + "paramsSig": "*p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 0, + "commandName": "up", + "paramsSig": "*p1" + }, + { + "nparams": 0, + "commandName": "down", + "paramsSig": "*p1" + }, + { + "nparams": 0, + "commandName": "my", + "paramsSig": "*p1" + }, + { + "nparams": 0, + "commandName": "openConfiguration", + "paramsSig": "*p1" + }, + { + "nparams": 0, + "commandName": "rest", + "paramsSig": "*p1" + } + ], + "type": "ACTUATOR" + }, + "attributes": [], + "enabled": true, + "controllableName": "rts:DualCurtainRTSComponent", + "subsystemId": 0 + }, + { + "deviceURL": "io://1234-5678--9373/11754455", + "available": true, + "synced": true, + "type": 5, + "states": [], + "label": "Garage Protocol Gateway", + "subsystemId": 0, + "attributes": [], + "enabled": true, + "controllableName": "io:StackComponent", + "definition": { + "states": [], + "widgetName": "IOStack", + "attributes": [], + "uiClass": "ProtocolGateway", + "commands": [ + { + "nparams": 1, + "commandName": "discoverActuators", + "paramsSig": "p1" + }, + { + "commandName": "joinNetwork", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "advancedSomfyDiscover", + "paramsSig": "p1" + }, + { + "commandName": "resetNetworkSecurity", + "nparams": 0 + }, + { + "commandName": "shareNetwork", + "nparams": 0 + }, + { + "nparams": 0, + "commandName": "discover1WayController", + "paramsSig": "*p1,*p2" + }, + { + "nparams": 1, + "commandName": "discoverSensors", + "paramsSig": "p1" + }, + { + "commandName": "discoverSomfyUnsetActuators", + "nparams": 0 + } + ], + "type": "PROTOCOL_GATEWAY" + } + }, + { + "deviceURL": "zigbee://1234-5678--9373/0/242", + "available": true, + "synced": true, + "type": 5, + "states": [], + "label": "Guest Room Bridge", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "zigbee:Role", + "value": "coordinator" + }, + { + "type": 1, + "name": "zigbee:RadioChannel", + "value": 20 + }, + { + "type": 3, + "name": "core:MacAddress", + "value": "PqZA/v+B9ow=" + } + ], + "enabled": true, + "controllableName": "zigbee:StackV3Component", + "definition": { + "states": [ + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "Rssi" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "Rssi" + }, + { + "name": "core:ManufacturerNameState" + }, + { + "name": "core:ProductModelNameState" + }, + { + "name": "zigbee:LinkQualityIndicatorState", + "rawStateId": "Lqi" + } + ], + "widgetName": "ZigbeeStack", + "attributes": [ + { + "name": "zigbee:Role" + }, + { + "name": "core:ManufacturerId" + }, + { + "name": "zigbee:RadioChannel" + }, + { + "name": "core:MacAddress" + } + ], + "uiClass": "ProtocolGateway", + "commands": [ + { + "commandName": "openNetworkWithCommissioningManagement", + "nparams": 0 + }, + { + "commandName": "closeNetworkManagement", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "unbind", + "paramsSig": "p1,p2" + }, + { + "commandName": "refreshNetwork", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "openNetwork", + "paramsSig": "p1" + }, + { + "commandName": "closeNetwork", + "nparams": 0 + }, + { + "commandName": "openNetworkManagement", + "nparams": 0 + }, + { + "commandName": "bindingNetwork", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "bind", + "paramsSig": "p1,p2" + } + ], + "type": "PROTOCOL_GATEWAY" + } + }, + { + "deviceURL": "io://1234-5678--9373/10202865", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 56 + }, + { + "type": 1, + "name": "core:ClosureState", + "value": 100 + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "closed" + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:NameState", + "value": "Patio Window" + } + ], + "label": "Patio Window", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "0000000000000000F502" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "VELUX" + } + ], + "enabled": true, + "controllableName": "io:WindowOpenerVeluxIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:ClosureState", + "rawStateId": "65537" + }, + { + "name": "core:OpenClosedState", + "rawStateId": "65537" + }, + { + "name": "core:NameState", + "rawStateId": "1" + } + ], + "widgetName": "PositionableTiltedWindow", + "attributes": [ + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "Window", + "commands": [ + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/8381989", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 96 + }, + { + "type": 1, + "name": "core:LightIntensityState", + "value": 0 + }, + { + "type": 3, + "name": "core:OnOffState", + "value": "off" + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:NameState", + "value": "Kitchen Ceiling Light" + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 0 + } + ], + "label": "Kitchen Ceiling Light", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5133033A02" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:DimmableLightIOComponent", + "definition": { + "states": [ + { + "name": "core:AdditionalStatusState", + "rawStateId": "2146500645" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:NameState", + "rawStateId": "1" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ManufacturerSettingsState", + "rawStateId": "2" + }, + { + "name": "core:ManufacturerDiagnosticsState", + "rawStateId": "2" + }, + { + "name": "core:LightIntensityState", + "rawStateId": "65537" + }, + { + "name": "core:OnOffState", + "rawStateId": "65537" + }, + { + "name": "core:Memorized1PositionState", + "rawStateId": "16832512" + }, + { + "name": "core:SecuredPositionState", + "rawStateId": "16832522" + } + ], + "widgetName": "DimmerLight", + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "Light", + "commands": [ + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "onWithTimer", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOnOff", + "paramsSig": "p1" + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setIntensity", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setIntensityWithTimer", + "paramsSig": "p1,p2,*p3" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/3868695", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 88 + }, + { + "type": 11, + "name": "core:ManufacturerSettingsState", + "value": { + "current_position": 7200 + } + }, + { + "type": 1, + "name": "core:ClosureState", + "value": 14 + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "open" + }, + { + "type": 1, + "name": "core:TargetClosureState", + "value": 14 + }, + { + "type": 1, + "name": "core:DeploymentState", + "value": 14 + }, + { + "type": 6, + "name": "core:MovingState", + "value": false + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:NameState", + "value": "Conservatory Screen" + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 50 + } + ], + "label": "Conservatory Screen", + "subsystemId": 0, + "attributes": [ + { + "type": 10, + "name": "core:SupportedManufacturerSettingsCommands", + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode", + "enter_back_impulse_setting_mode", + "save_back_impulse_position" + ] + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5104761X04" + } + ], + "enabled": true, + "controllableName": "io:VerticalExteriorAwningIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:NameState", + "rawStateId": "1" + }, + { + "name": "core:AdditionalStatusState", + "rawStateId": "2146500645" + }, + { + "name": "core:TargetClosureState", + "rawStateId": "16832522" + }, + { + "name": "core:SecuredPositionState", + "rawStateId": "16832522" + }, + { + "name": "core:ManufacturerSettingsState", + "rawStateId": "65537" + }, + { + "name": "core:ClosureState", + "rawStateId": "65537" + }, + { + "name": "core:OpenClosedState", + "rawStateId": "65537" + }, + { + "name": "core:DeploymentState", + "rawStateId": "65537" + }, + { + "name": "core:MovingState", + "rawStateId": "65557" + }, + { + "name": "core:ManufacturerDiagnosticsState", + "rawStateId": "2" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:Memorized1PositionState", + "rawStateId": "16832512" + } + ], + "widgetName": "PositionableScreen", + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands" + }, + { + "name": "core:Manufacturer" + }, + { + "name": "core:FirmwareRevision" + } + ], + "uiClass": "ExteriorScreen", + "commands": [ + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setDeployment", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "undeploy", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "deploy", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/5740023", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 88 + }, + { + "type": 1, + "name": "core:LightIntensityState", + "value": 56 + }, + { + "type": 3, + "name": "core:OnOffState", + "value": "on" + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:NameState", + "value": "Living Room Ceiling Light" + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 30 + } + ], + "label": "Living Room Ceiling Light", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5133033A02" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:DimmableLightIOComponent", + "definition": { + "states": [ + { + "name": "core:AdditionalStatusState", + "rawStateId": "2146500645" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:NameState", + "rawStateId": "1" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ManufacturerSettingsState", + "rawStateId": "2" + }, + { + "name": "core:ManufacturerDiagnosticsState", + "rawStateId": "2" + }, + { + "name": "core:LightIntensityState", + "rawStateId": "65537" + }, + { + "name": "core:OnOffState", + "rawStateId": "65537" + }, + { + "name": "core:Memorized1PositionState", + "rawStateId": "16832512" + }, + { + "name": "core:SecuredPositionState", + "rawStateId": "16832522" + } + ], + "widgetName": "DimmerLight", + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "Light", + "commands": [ + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "onWithTimer", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOnOff", + "paramsSig": "p1" + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setIntensity", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setIntensityWithTimer", + "paramsSig": "p1,p2,*p3" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/1292684#1", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 98 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:OpenClosedValveState", + "value": "closed" + }, + { + "type": 3, + "name": "core:OperatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:TargetRoomTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:TargetTemperatureState", + "value": 6 + }, + { + "type": 3, + "name": "io:CurrentHeatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:DerogatedTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:DerogationEndDateTimeState", + "value": 1682535476000 + }, + { + "type": 1, + "name": "core:DerogationStartDateTimeState", + "value": 1682535476000 + }, + { + "type": 3, + "name": "io:DerogationHeatingModeState", + "value": "manual" + }, + { + "type": 3, + "name": "io:DerogationTypeState", + "value": "further_notice" + }, + { + "type": 1, + "name": "io:ManualModeTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:BatteryLevelState", + "value": 61 + }, + { + "type": 3, + "name": "io:ValveInstallationModeState", + "value": "finished" + }, + { + "type": 1, + "name": "core:ComfortRoomTemperatureState", + "value": 21 + }, + { + "type": 1, + "name": "core:EcoTargetTemperatureState", + "value": 19 + }, + { + "type": 1, + "name": "core:FrostProtectionRoomTemperatureState", + "value": 8 + }, + { + "type": 1, + "name": "io:AwayModeTargetTemperatureState", + "value": 17 + }, + { + "type": 1, + "name": "io:GeofencingModeTargetTemperatureState", + "value": 20 + }, + { + "type": 1, + "name": "io:OpenWindowDetectedTargetTemperatureState", + "value": 8 + }, + { + "type": 3, + "name": "core:ActiveTimeProgramState", + "value": "none" + }, + { + "type": 1, + "name": "core:MaxSetpointState", + "value": 26 + }, + { + "type": 1, + "name": "core:MinSetpointState", + "value": 5 + }, + { + "type": 3, + "name": "core:OpenWindowDetectionActivationState", + "value": "active" + }, + { + "type": 1, + "name": "core:TemperatureOffsetConfigurationState", + "value": 0 + }, + { + "type": 3, + "name": "io:ByPassActivationState", + "value": "disable" + }, + { + "type": 3, + "name": "io:LockKeyActivationState", + "value": "disable" + }, + { + "type": 11, + "name": "core:TimeProgram1State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + }, + { + "type": 11, + "name": "core:TimeProgram2State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + } + ], + "label": "Patio Thermostat", + "subsystemId": 1, + "attributes": [], + "enabled": true, + "controllableName": "io:HeatingValveIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ActiveTimeProgramState", + "rawStateId": "84059684" + }, + { + "name": "core:MaxSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:MinSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:OpenWindowDetectionActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TemperatureOffsetConfigurationState", + "rawStateId": "84059684" + }, + { + "name": "io:ByPassActivationState", + "rawStateId": "84059684" + }, + { + "name": "io:LockKeyActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TimeProgram2State", + "rawStateId": "84059687" + }, + { + "name": "core:BatteryLevelState", + "rawStateId": "84059682" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "io:ValveInstallationModeState", + "rawStateId": "84059682" + }, + { + "name": "core:DerogatedTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationEndDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationStartDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationHeatingModeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationTypeState", + "rawStateId": "84059681" + }, + { + "name": "io:ManualModeTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:ComfortRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:EcoTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:FrostProtectionRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:AwayModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:GeofencingModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:OpenWindowDetectedTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:NameState", + "rawStateId": "2415919105" + }, + { + "name": "core:OpenClosedValveState", + "rawStateId": "84059680" + }, + { + "name": "core:OperatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetRoomTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "io:CurrentHeatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TimeProgram1State", + "rawStateId": "84059686" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "ValveHeatingTemperatureInterface", + "attributes": [], + "uiClass": "HeatingSystem", + "commands": [ + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "exitDerogation", + "nparams": 0 + }, + { + "nparams": 4, + "commandName": "setAllModeTemperatures", + "paramsSig": "p1,p2,p3,p4" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setDerogation", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setTimeProgramById", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setValveSettings", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/9749990#1", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 82 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 1, + "name": "core:ComfortRoomTemperatureState", + "value": 21 + }, + { + "type": 1, + "name": "core:EcoTargetTemperatureState", + "value": 19 + }, + { + "type": 1, + "name": "core:FrostProtectionRoomTemperatureState", + "value": 8 + }, + { + "type": 1, + "name": "io:AwayModeTargetTemperatureState", + "value": 17 + }, + { + "type": 1, + "name": "io:GeofencingModeTargetTemperatureState", + "value": 20 + }, + { + "type": 1, + "name": "io:OpenWindowDetectedTargetTemperatureState", + "value": 8 + }, + { + "type": 3, + "name": "core:ActiveTimeProgramState", + "value": "none" + }, + { + "type": 1, + "name": "core:MaxSetpointState", + "value": 26 + }, + { + "type": 1, + "name": "core:MinSetpointState", + "value": 5 + }, + { + "type": 3, + "name": "core:OpenWindowDetectionActivationState", + "value": "active" + }, + { + "type": 1, + "name": "core:TemperatureOffsetConfigurationState", + "value": 0 + }, + { + "type": 3, + "name": "io:ByPassActivationState", + "value": "disable" + }, + { + "type": 3, + "name": "io:LockKeyActivationState", + "value": "enable" + }, + { + "type": 11, + "name": "core:TimeProgram1State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + }, + { + "type": 11, + "name": "core:TimeProgram2State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + }, + { + "type": 1, + "name": "core:DerogatedTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:DerogationEndDateTimeState", + "value": 1685441979000 + }, + { + "type": 1, + "name": "core:DerogationStartDateTimeState", + "value": 1685441979000 + }, + { + "type": 3, + "name": "io:DerogationHeatingModeState", + "value": "manual" + }, + { + "type": 3, + "name": "io:DerogationTypeState", + "value": "further_notice" + }, + { + "type": 1, + "name": "io:ManualModeTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:BatteryLevelState", + "value": 61 + }, + { + "type": 3, + "name": "io:ValveInstallationModeState", + "value": "finished" + }, + { + "type": 3, + "name": "core:OpenClosedValveState", + "value": "closed" + }, + { + "type": 3, + "name": "core:OperatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:TargetRoomTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:TargetTemperatureState", + "value": 6 + }, + { + "type": 3, + "name": "io:CurrentHeatingModeState", + "value": "manual" + } + ], + "label": "Living Room Thermostat", + "subsystemId": 1, + "attributes": [], + "enabled": true, + "controllableName": "io:HeatingValveIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ActiveTimeProgramState", + "rawStateId": "84059684" + }, + { + "name": "core:MaxSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:MinSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:OpenWindowDetectionActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TemperatureOffsetConfigurationState", + "rawStateId": "84059684" + }, + { + "name": "io:ByPassActivationState", + "rawStateId": "84059684" + }, + { + "name": "io:LockKeyActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TimeProgram2State", + "rawStateId": "84059687" + }, + { + "name": "core:BatteryLevelState", + "rawStateId": "84059682" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "io:ValveInstallationModeState", + "rawStateId": "84059682" + }, + { + "name": "core:DerogatedTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationEndDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationStartDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationHeatingModeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationTypeState", + "rawStateId": "84059681" + }, + { + "name": "io:ManualModeTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:ComfortRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:EcoTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:FrostProtectionRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:AwayModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:GeofencingModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:OpenWindowDetectedTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:NameState", + "rawStateId": "2415919105" + }, + { + "name": "core:OpenClosedValveState", + "rawStateId": "84059680" + }, + { + "name": "core:OperatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetRoomTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "io:CurrentHeatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TimeProgram1State", + "rawStateId": "84059686" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "ValveHeatingTemperatureInterface", + "attributes": [], + "uiClass": "HeatingSystem", + "commands": [ + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "exitDerogation", + "nparams": 0 + }, + { + "nparams": 4, + "commandName": "setAllModeTemperatures", + "paramsSig": "p1,p2,p3,p4" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setDerogation", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setTimeProgramById", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setValveSettings", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/5632438", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 100 + }, + { + "type": 11, + "name": "core:ManufacturerSettingsState", + "value": { + "current_position": 7185 + } + }, + { + "type": 1, + "name": "core:ClosureState", + "value": 14 + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "open" + }, + { + "type": 1, + "name": "core:TargetClosureState", + "value": 14 + }, + { + "type": 1, + "name": "core:DeploymentState", + "value": 14 + }, + { + "type": 6, + "name": "core:MovingState", + "value": false + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:NameState", + "value": "Terrace Awning" + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 50 + } + ], + "label": "Terrace Awning", + "subsystemId": 0, + "attributes": [ + { + "type": 10, + "name": "core:SupportedManufacturerSettingsCommands", + "value": [ + "dead_man_up", + "dead_man_down", + "dead_man_stop", + "dead_man_impulse_up", + "dead_man_impulse_down", + "enter_settings_mode", + "save_upper_end_limit", + "save_lower_end_limit", + "stop_after_save_limit", + "save_settings", + "invert_rotation", + "save_my_position", + "delete_my_position", + "reset_actuator", + "double_power_cut", + "eject_from_setting_mode", + "enter_back_impulse_setting_mode", + "save_back_impulse_position" + ] + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5104761X04" + } + ], + "enabled": true, + "controllableName": "io:VerticalExteriorAwningIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:NameState", + "rawStateId": "1" + }, + { + "name": "core:AdditionalStatusState", + "rawStateId": "2146500645" + }, + { + "name": "core:TargetClosureState", + "rawStateId": "16832522" + }, + { + "name": "core:SecuredPositionState", + "rawStateId": "16832522" + }, + { + "name": "core:ManufacturerSettingsState", + "rawStateId": "65537" + }, + { + "name": "core:ClosureState", + "rawStateId": "65537" + }, + { + "name": "core:OpenClosedState", + "rawStateId": "65537" + }, + { + "name": "core:DeploymentState", + "rawStateId": "65537" + }, + { + "name": "core:MovingState", + "rawStateId": "65557" + }, + { + "name": "core:ManufacturerDiagnosticsState", + "rawStateId": "2" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:Memorized1PositionState", + "rawStateId": "16832512" + } + ], + "widgetName": "PositionableScreen", + "attributes": [ + { + "name": "core:SupportedManufacturerSettingsCommands" + }, + { + "name": "core:Manufacturer" + }, + { + "name": "core:FirmwareRevision" + } + ], + "uiClass": "ExteriorScreen", + "commands": [ + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setDeployment", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1,*p2" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "undeploy", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "deploy", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "internal://1234-5678--9373/pod/0", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:NameState", + "value": "Patio Gateway" + }, + { + "type": 3, + "name": "core:CountryCodeState", + "value": "BE" + }, + { + "type": 1, + "name": "internal:LightingLedPodModeState", + "value": 1 + }, + { + "type": 3, + "name": "core:ConnectivityState", + "value": "online" + }, + { + "type": 3, + "name": "core:LocalIPv4AddressState", + "value": "192.168.178.32" + } + ], + "label": "Patio Gateway", + "subsystemId": 0, + "attributes": [], + "enabled": true, + "controllableName": "internal:PodV3Component", + "definition": { + "states": [ + { + "name": "core:ConnectivityState", + "rawStateId": "networkConnectivity" + }, + { + "name": "core:LocalAccessProofState", + "rawStateId": "localAccessProof" + }, + { + "name": "internal:Button2State", + "rawStateId": "button2" + }, + { + "name": "core:LocalIPv4AddressState", + "rawStateId": "ip" + }, + { + "name": "core:CountryCodeState", + "rawStateId": "countryCode" + }, + { + "name": "internal:Button3State", + "rawStateId": "button3" + }, + { + "name": "internal:LightingLedPodModeState", + "rawStateId": "lightingLedPodMode" + }, + { + "name": "core:NameState", + "rawStateId": "name" + }, + { + "name": "internal:Button1State", + "rawStateId": "button1" + } + ], + "widgetName": "Pod", + "attributes": [], + "uiClass": "Pod", + "commands": [ + { + "commandName": "deactivateCalendar", + "nparams": 0 + }, + { + "commandName": "refreshPodMode", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "setPodLedOff", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setCalendar", + "paramsSig": "p1" + }, + { + "commandName": "setPodLedOn", + "nparams": 0 + }, + { + "commandName": "activateCalendar", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setLightingLedPodMode", + "paramsSig": "p1" + }, + { + "commandName": "update", + "nparams": 0 + }, + { + "commandName": "refreshUpdateStatus", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setCountryCode", + "paramsSig": "p1" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/6360455#1", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 68 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:OpenClosedValveState", + "value": "closed" + }, + { + "type": 3, + "name": "core:OperatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:TargetRoomTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:TargetTemperatureState", + "value": 6 + }, + { + "type": 3, + "name": "io:CurrentHeatingModeState", + "value": "manual" + }, + { + "type": 1, + "name": "core:DerogatedTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:DerogationEndDateTimeState", + "value": 1687723250000 + }, + { + "type": 1, + "name": "core:DerogationStartDateTimeState", + "value": 1687723250000 + }, + { + "type": 3, + "name": "io:DerogationHeatingModeState", + "value": "manual" + }, + { + "type": 3, + "name": "io:DerogationTypeState", + "value": "further_notice" + }, + { + "type": 1, + "name": "io:ManualModeTargetTemperatureState", + "value": 6 + }, + { + "type": 1, + "name": "core:BatteryLevelState", + "value": 53 + }, + { + "type": 3, + "name": "io:ValveInstallationModeState", + "value": "finished" + }, + { + "type": 1, + "name": "core:ComfortRoomTemperatureState", + "value": 21 + }, + { + "type": 1, + "name": "core:EcoTargetTemperatureState", + "value": 19 + }, + { + "type": 1, + "name": "core:FrostProtectionRoomTemperatureState", + "value": 8 + }, + { + "type": 1, + "name": "io:AwayModeTargetTemperatureState", + "value": 17 + }, + { + "type": 1, + "name": "io:GeofencingModeTargetTemperatureState", + "value": 20 + }, + { + "type": 1, + "name": "io:OpenWindowDetectedTargetTemperatureState", + "value": 8 + }, + { + "type": 3, + "name": "core:ActiveTimeProgramState", + "value": "none" + }, + { + "type": 1, + "name": "core:MaxSetpointState", + "value": 26 + }, + { + "type": 1, + "name": "core:MinSetpointState", + "value": 5 + }, + { + "type": 3, + "name": "core:OpenWindowDetectionActivationState", + "value": "active" + }, + { + "type": 1, + "name": "core:TemperatureOffsetConfigurationState", + "value": 0 + }, + { + "type": 3, + "name": "io:ByPassActivationState", + "value": "disable" + }, + { + "type": 3, + "name": "io:LockKeyActivationState", + "value": "disable" + }, + { + "type": 11, + "name": "core:TimeProgram1State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + }, + { + "type": 11, + "name": "core:TimeProgram2State", + "value": { + "sunday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "friday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "monday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "thursday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "tuesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "wednesday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + }, + "saturday": { + "timeslots": [ + { + "from": { + "minute": 0, + "hour": 0 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 6 + } + }, + { + "from": { + "minute": 0, + "hour": 6 + }, + "mode": "comfort", + "to": { + "minute": 0, + "hour": 21 + } + }, + { + "from": { + "minute": 0, + "hour": 21 + }, + "mode": "eco", + "to": { + "minute": 0, + "hour": 24 + } + } + ] + } + } + } + ], + "label": "Attic Heater", + "subsystemId": 1, + "attributes": [], + "enabled": true, + "controllableName": "io:HeatingValveIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:ActiveTimeProgramState", + "rawStateId": "84059684" + }, + { + "name": "core:MaxSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:MinSetpointState", + "rawStateId": "84059684" + }, + { + "name": "core:OpenWindowDetectionActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TemperatureOffsetConfigurationState", + "rawStateId": "84059684" + }, + { + "name": "io:ByPassActivationState", + "rawStateId": "84059684" + }, + { + "name": "io:LockKeyActivationState", + "rawStateId": "84059684" + }, + { + "name": "core:TimeProgram2State", + "rawStateId": "84059687" + }, + { + "name": "core:BatteryLevelState", + "rawStateId": "84059682" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "io:ValveInstallationModeState", + "rawStateId": "84059682" + }, + { + "name": "core:DerogatedTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationEndDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "core:DerogationStartDateTimeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationHeatingModeState", + "rawStateId": "84059681" + }, + { + "name": "io:DerogationTypeState", + "rawStateId": "84059681" + }, + { + "name": "io:ManualModeTargetTemperatureState", + "rawStateId": "84059681" + }, + { + "name": "core:ComfortRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:EcoTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:FrostProtectionRoomTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:AwayModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:GeofencingModeTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "io:OpenWindowDetectedTargetTemperatureState", + "rawStateId": "84059685" + }, + { + "name": "core:NameState", + "rawStateId": "2415919105" + }, + { + "name": "core:OpenClosedValveState", + "rawStateId": "84059680" + }, + { + "name": "core:OperatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetRoomTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:TargetTemperatureState", + "rawStateId": "84059680" + }, + { + "name": "io:CurrentHeatingModeState", + "rawStateId": "84059680" + }, + { + "name": "core:TimeProgram1State", + "rawStateId": "84059686" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "ValveHeatingTemperatureInterface", + "attributes": [], + "uiClass": "HeatingSystem", + "commands": [ + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "exitDerogation", + "nparams": 0 + }, + { + "nparams": 4, + "commandName": "setAllModeTemperatures", + "paramsSig": "p1,p2,p3,p4" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "setDerogation", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setTimeProgramById", + "paramsSig": "p1,p2" + }, + { + "nparams": 1, + "commandName": "setValveSettings", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + } + ], + "type": "ACTUATOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/10074960#2", + "available": true, + "synced": true, + "type": 2, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "good" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 82 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 2, + "name": "core:TemperatureState", + "value": 24 + } + ], + "label": "Bathroom Temperature Sensor", + "subsystemId": 2, + "attributes": [ + { + "type": 3, + "name": "core:PowerSourceType", + "value": "battery" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5145198A12" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:TemperatureIOSystemSensor", + "definition": { + "states": [ + { + "name": "core:TemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "TemperatureSensor", + "attributes": [ + { + "name": "core:MaxSensedValue" + }, + { + "name": "core:PowerSourceType" + }, + { + "name": "core:MinSensedValue" + }, + { + "name": "core:MeasuredValueType" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "TemperatureSensor", + "commands": [ + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + } + ], + "type": "SENSOR" + } + }, + { + "deviceURL": "io://1234-5678--9373/6360455#2", + "available": true, + "synced": true, + "type": 2, + "states": [ + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 68 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 1, + "name": "core:TemperatureState", + "value": 23.2 + } + ], + "label": "Hallway Temperature Sensor", + "subsystemId": 2, + "attributes": [ + { + "type": 3, + "name": "core:PowerSourceType", + "value": "battery" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5145198A12" + }, + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:TemperatureIOSystemSensor", + "definition": { + "states": [ + { + "name": "core:TemperatureState", + "rawStateId": "84059680" + }, + { + "name": "core:SensorDefectState", + "rawStateId": "84059682" + }, + { + "name": "core:StatusState", + "rawStateId": "2147426304" + }, + { + "name": "core:DiscreteRSSILevelState", + "rawStateId": "2146500638" + }, + { + "name": "core:RSSILevelState", + "rawStateId": "2146500638" + } + ], + "widgetName": "TemperatureSensor", + "attributes": [ + { + "name": "core:MaxSensedValue" + }, + { + "name": "core:PowerSourceType" + }, + { + "name": "core:MinSensedValue" + }, + { + "name": "core:MeasuredValueType" + }, + { + "name": "core:FirmwareRevision" + }, + { + "name": "core:Manufacturer" + } + ], + "uiClass": "TemperatureSensor", + "commands": [ + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + } + ], + "type": "SENSOR" + } + } + ] +} diff --git a/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_v2_europe.json b/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_v2_europe.json new file mode 100644 index 000000000000..d817daba8188 --- /dev/null +++ b/tests/components/overkiz/fixtures/setup/local_somfy_tahoma_v2_europe.json @@ -0,0 +1,1544 @@ +{ + "gateways": [ + { + "connectivity": { + "status": "OK", + "protocolVersion": "2022.1.4-26" + }, + "gatewayId": "1234-5678-3293" + } + ], + "devices": [ + { + "deviceURL": "io://1234-5678-3293/5770898", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 80 + }, + { + "type": 1, + "name": "core:TargetClosureState", + "value": 0 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 70 + }, + { + "type": 11, + "name": "core:ManufacturerSettingsState", + "value": { + "current_position": 0 + } + }, + { + "type": 1, + "name": "core:ClosureState", + "value": 0 + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "open" + }, + { + "type": 1, + "name": "core:DeploymentState", + "value": 0 + }, + { + "type": 6, + "name": "core:MovingState", + "value": false + }, + { + "type": 3, + "name": "core:NameState", + "value": "Bedroom Screen" + } + ], + "label": "Bedroom Screen", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5104761X04" + } + ], + "enabled": true, + "controllableName": "io:VerticalExteriorAwningIOComponent", + "definition": { + "states": [ + { + "name": "core:StatusState" + }, + { + "name": "core:NameState" + }, + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:DeploymentState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "core:Memorized1PositionState" + } + ], + "widgetName": "PositionableScreen", + "type": "ACTUATOR", + "commands": [ + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setDeployment", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "undeploy", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "deploy", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + } + ], + "uiClass": "ExteriorScreen" + } + }, + { + "deviceURL": "io://1234-5678-3293/3541212", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 72 + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 89 + }, + { + "type": 1, + "name": "core:TargetClosureState", + "value": 0 + }, + { + "type": 3, + "name": "core:NameState", + "value": "Office Screen" + }, + { + "type": 11, + "name": "core:ManufacturerSettingsState", + "value": { + "current_position": 0 + } + }, + { + "type": 1, + "name": "core:ClosureState", + "value": 0 + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "open" + }, + { + "type": 1, + "name": "core:DeploymentState", + "value": 0 + }, + { + "type": 6, + "name": "core:MovingState", + "value": false + } + ], + "label": "Office Screen", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5121525A07" + } + ], + "enabled": true, + "controllableName": "io:VerticalExteriorAwningIOComponent", + "definition": { + "states": [ + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "core:Memorized1PositionState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:DeploymentState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:NameState" + }, + { + "name": "core:StatusState" + } + ], + "widgetName": "PositionableScreen", + "type": "ACTUATOR", + "commands": [ + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setDeployment", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "undeploy", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "deploy", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + } + ], + "uiClass": "ExteriorScreen" + } + }, + { + "deviceURL": "io://1234-5678-3293/7614902", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:NameState", + "value": "Garden Pergola" + }, + { + "type": 3, + "name": "core:SlatsOpenClosedState", + "value": "closed" + }, + { + "type": 1, + "name": "core:SlatsOrientationState", + "value": 100 + }, + { + "type": 1, + "name": "core:SlateOrientationState", + "value": 100 + }, + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 58 + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + } + ], + "label": "Garden Pergola", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5133756X72" + } + ], + "enabled": true, + "controllableName": "io:SimpleBioclimaticPergolaIOComponent", + "definition": { + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "core:NameState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:SlatsOpenClosedState" + }, + { + "name": "core:SlatsOrientationState" + }, + { + "name": "core:SlateOrientationState" + }, + { + "name": "core:Memorized1OrientationState" + }, + { + "name": "core:SecuredOrientationState" + } + ], + "widgetName": "BioclimaticPergola", + "type": "ACTUATOR", + "commands": [ + { + "commandName": "stop", + "nparams": 0 + }, + { + "commandName": "closeSlats", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setSecuredOrientation", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setOrientation", + "paramsSig": "p1" + }, + { + "commandName": "refreshMemorized1Orientation", + "nparams": 0 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "commandName": "openSlats", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setMemorized1Orientation", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + } + ], + "uiClass": "Pergola" + } + }, + { + "deviceURL": "io://1234-5678-3293/16483707", + "available": true, + "synced": true, + "type": 5, + "states": [], + "label": "** *(**)*", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + } + ], + "enabled": true, + "controllableName": "io:StackComponent", + "definition": { + "states": [], + "widgetName": "IOStack", + "type": "PROTOCOL_GATEWAY", + "commands": [ + { + "nparams": 1, + "commandName": "discoverActuators", + "paramsSig": "p1" + }, + { + "commandName": "joinNetwork", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "advancedSomfyDiscover", + "paramsSig": "p1" + }, + { + "commandName": "resetNetworkSecurity", + "nparams": 0 + }, + { + "commandName": "shareNetwork", + "nparams": 0 + }, + { + "nparams": 0, + "commandName": "discover1WayController", + "paramsSig": "*p1,*p2" + }, + { + "nparams": 1, + "commandName": "discoverSensors", + "paramsSig": "p1" + }, + { + "commandName": "discoverSomfyUnsetActuators", + "nparams": 0 + } + ], + "uiClass": "ProtocolGateway" + } + }, + { + "deviceURL": "internal://1234-5678-3293/alarm/0", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:NameState", + "value": "** **" + }, + { + "type": 3, + "name": "internal:IntrusionDetectedState", + "value": "notDetected" + }, + { + "type": 3, + "name": "internal:CurrentAlarmModeState", + "value": "off" + }, + { + "type": 3, + "name": "internal:TargetAlarmModeState", + "value": "off" + }, + { + "type": 1, + "name": "internal:AlarmDelayState", + "value": 30 + } + ], + "label": "**", + "subsystemId": 0, + "attributes": [], + "enabled": true, + "controllableName": "internal:TSKAlarmComponent", + "definition": { + "states": [ + { + "name": "internal:TargetAlarmModeState" + }, + { + "name": "internal:AlarmDelayState" + }, + { + "name": "core:NameState" + }, + { + "name": "internal:IntrusionDetectedState" + }, + { + "name": "internal:CurrentAlarmModeState" + } + ], + "widgetName": "TSKAlarmController", + "type": "ACTUATOR", + "commands": [ + { + "commandName": "arm", + "nparams": 0 + }, + { + "commandName": "alarmOn", + "nparams": 0 + }, + { + "commandName": "disarm", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setTargetAlarmMode", + "paramsSig": "p1" + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "commandName": "refreshAlarmDelay", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "commandName": "alarmPartial2", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "alarmOff", + "nparams": 0 + }, + { + "commandName": "alarmPartial1", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setIntrusionDetected", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setAlarmDelay", + "paramsSig": "p1" + }, + { + "commandName": "refreshCurrentAlarmMode", + "nparams": 0 + }, + { + "commandName": "refreshIntrusionDetected", + "nparams": 0 + } + ], + "uiClass": "Alarm" + } + }, + { + "deviceURL": "io://1234-5678-3293/5353900", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 1, + "name": "core:TargetClosureState", + "value": 0 + }, + { + "type": 6, + "name": "core:MovingState", + "value": false + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "low" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 30 + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 90 + }, + { + "type": 3, + "name": "core:NameState", + "value": "Dining Room Screen" + }, + { + "type": 11, + "name": "core:ManufacturerSettingsState", + "value": { + "current_position": 0 + } + }, + { + "type": 1, + "name": "core:ClosureState", + "value": 0 + }, + { + "type": 3, + "name": "core:OpenClosedState", + "value": "open" + }, + { + "type": 1, + "name": "core:DeploymentState", + "value": 0 + } + ], + "label": "Dining Room Screen", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5121525A07" + } + ], + "enabled": true, + "controllableName": "io:VerticalExteriorAwningIOComponent", + "definition": { + "states": [ + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "core:Memorized1PositionState" + }, + { + "name": "core:TargetClosureState" + }, + { + "name": "core:SecuredPositionState" + }, + { + "name": "core:ClosureState" + }, + { + "name": "core:OpenClosedState" + }, + { + "name": "core:DeploymentState" + }, + { + "name": "core:MovingState" + }, + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:NameState" + }, + { + "name": "core:StatusState" + } + ], + "widgetName": "PositionableScreen", + "type": "ACTUATOR", + "commands": [ + { + "commandName": "stop", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setDeployment", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "down", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setClosure", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "commandName": "undeploy", + "nparams": 0 + }, + { + "commandName": "up", + "nparams": 0 + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "commandName": "open", + "nparams": 0 + }, + { + "commandName": "deploy", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "commandName": "close", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + } + ], + "uiClass": "ExteriorScreen" + } + }, + { + "deviceURL": "internal://1234-5678-3293/pod/0", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 3, + "name": "core:NameState", + "value": "**" + }, + { + "type": 3, + "name": "core:CountryCodeState", + "value": "NL" + }, + { + "type": 1, + "name": "internal:LightingLedPodModeState", + "value": 1 + }, + { + "type": 3, + "name": "internal:BatteryStatusState", + "value": "no" + }, + { + "type": 3, + "name": "core:LocalIPv4AddressState", + "value": "192.168.11.36" + }, + { + "type": 3, + "name": "core:ConnectivityState", + "value": "online" + } + ], + "label": "** **", + "subsystemId": 0, + "attributes": [], + "enabled": true, + "controllableName": "internal:PodV2Component", + "definition": { + "states": [ + { + "name": "core:ConnectivityState" + }, + { + "name": "core:LocalIPv4AddressState" + }, + { + "name": "core:CountryCodeState" + }, + { + "name": "internal:LightingLedPodModeState" + }, + { + "name": "core:CyclicButtonState" + }, + { + "name": "core:NameState" + }, + { + "name": "internal:BatteryStatusState" + } + ], + "widgetName": "Pod", + "type": "ACTUATOR", + "commands": [ + { + "commandName": "deactivateCalendar", + "nparams": 0 + }, + { + "commandName": "refreshPodMode", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "commandName": "setPodLedOff", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setCalendar", + "paramsSig": "p1" + }, + { + "commandName": "update", + "nparams": 0 + }, + { + "commandName": "setPodLedOn", + "nparams": 0 + }, + { + "commandName": "refreshBatteryStatus", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setLightingLedPodMode", + "paramsSig": "p1" + }, + { + "commandName": "activateCalendar", + "nparams": 0 + }, + { + "commandName": "refreshUpdateStatus", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setCountryCode", + "paramsSig": "p1" + } + ], + "uiClass": "Pod" + } + }, + { + "deviceURL": "io://1234-5678-3293/5046564", + "available": true, + "synced": true, + "type": 1, + "states": [ + { + "type": 1, + "name": "core:LightIntensityState", + "value": 0 + }, + { + "type": 3, + "name": "core:OnOffState", + "value": "off" + }, + { + "type": 1, + "name": "core:Memorized1PositionState", + "value": 65 + }, + { + "type": 3, + "name": "core:NameState", + "value": "** **" + }, + { + "type": 3, + "name": "core:StatusState", + "value": "available" + }, + { + "type": 3, + "name": "core:DiscreteRSSILevelState", + "value": "normal" + }, + { + "type": 1, + "name": "core:RSSILevelState", + "value": 60 + } + ], + "label": "** **", + "subsystemId": 0, + "attributes": [ + { + "type": 3, + "name": "core:Manufacturer", + "value": "Somfy" + }, + { + "type": 3, + "name": "core:FirmwareRevision", + "value": "5133033A02" + } + ], + "enabled": true, + "controllableName": "io:DimmableLightIOComponent", + "definition": { + "states": [ + { + "name": "core:AdditionalStatusState" + }, + { + "name": "core:DiscreteRSSILevelState" + }, + { + "name": "core:RSSILevelState" + }, + { + "name": "core:NameState" + }, + { + "name": "core:StatusState" + }, + { + "name": "core:ManufacturerSettingsState" + }, + { + "name": "core:LightIntensityState" + }, + { + "name": "core:OnOffState" + }, + { + "name": "core:Memorized1PositionState" + }, + { + "name": "core:SecuredPositionState" + } + ], + "widgetName": "DimmerLight", + "type": "ACTUATOR", + "commands": [ + { + "nparams": 1, + "commandName": "delayedStopIdentify", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "runManufacturerSettingsCommand", + "paramsSig": "p1,p2" + }, + { + "commandName": "on", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "onWithTimer", + "paramsSig": "p1" + }, + { + "commandName": "unpairAllOneWayControllers", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setConfigState", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "pairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "unpairAllOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "sendIOKey", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "wink", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "unpairOneWayController", + "paramsSig": "p1,*p2" + }, + { + "commandName": "startIdentify", + "nparams": 0 + }, + { + "commandName": "stopIdentify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setSecuredPosition", + "paramsSig": "p1" + }, + { + "commandName": "my", + "nparams": 0 + }, + { + "commandName": "keepOneWayControllersAndDeleteNode", + "nparams": 0 + }, + { + "commandName": "getName", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setMemorized1Position", + "paramsSig": "p1" + }, + { + "commandName": "refreshMemorized1Position", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "advancedRefresh", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setName", + "paramsSig": "p1" + }, + { + "commandName": "identify", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setPosition", + "paramsSig": "p1" + }, + { + "nparams": 1, + "commandName": "setOnOff", + "paramsSig": "p1" + }, + { + "commandName": "off", + "nparams": 0 + }, + { + "nparams": 1, + "commandName": "setIntensity", + "paramsSig": "p1" + }, + { + "nparams": 2, + "commandName": "setIntensityWithTimer", + "paramsSig": "p1,p2,*p3" + } + ], + "uiClass": "Light" + } + } + ] +} diff --git a/tests/components/overkiz/helpers.py b/tests/components/overkiz/helpers.py new file mode 100644 index 000000000000..74a72cd61227 --- /dev/null +++ b/tests/components/overkiz/helpers.py @@ -0,0 +1,64 @@ +"""Shared helpers for Overkiz integration tests.""" + +from __future__ import annotations + +from datetime import timedelta +from typing import Any + +from freezegun.api import FrozenDateTimeFactory +from pyoverkiz.models import Event + +from homeassistant.components.overkiz.const import UPDATE_INTERVAL +from homeassistant.core import HomeAssistant + +from .conftest import MockOverkizClient + +from tests.common import async_fire_time_changed + + +def assert_command_call( + mock_client: MockOverkizClient, + *, + device_url: str, + command_name: str, + parameters: list[Any] | None = None, +) -> None: + """Assert the latest command sent through the mocked Overkiz client.""" + assert mock_client.execute_command.await_count == 1 + args = mock_client.execute_command.await_args.args + assert args[0] == device_url + assert args[1].name == command_name + assert args[1].parameters == (parameters or []) + assert args[2] == "Home Assistant" + + +def build_event( + name: str, + *, + device_url: str, + device_states: list[dict[str, Any]] | None = None, + exec_id: str | None = None, + new_state: str | None = None, +) -> Event: + """Create a pyoverkiz event object with a test-friendly interface.""" + return Event( + name=name, + device_url=device_url, + device_states=device_states, + exec_id=exec_id, + new_state=new_state, + ) + + +async def async_deliver_events( + hass: HomeAssistant, + freezer: FrozenDateTimeFactory, + mock_client: MockOverkizClient, + *event_batches: list[Event], + update_interval: timedelta = UPDATE_INTERVAL, +) -> None: + """Queue event batches and advance time to trigger a coordinator refresh.""" + mock_client.queue_events(*event_batches) + freezer.tick(update_interval) + async_fire_time_changed(hass) + await hass.async_block_till_done() diff --git a/tests/components/overkiz/snapshots/test_cover.ambr b/tests/components/overkiz/snapshots/test_cover.ambr new file mode 100644 index 000000000000..6553bbf53d9f --- /dev/null +++ b/tests/components/overkiz/snapshots/test_cover.ambr @@ -0,0 +1,3037 @@ +# serializer version: 1 +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.hallway_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.hallway_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-1698/4080031', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.hallway_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'shutter', + 'friendly_name': 'Hallway Shutter', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.hallway_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.hallway_shutter_low_speed-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.hallway_shutter_low_speed', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': 'Low speed', + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': 'Low speed', + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-1698/4080031_low_speed', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.hallway_shutter_low_speed-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'shutter', + 'friendly_name': 'Hallway Shutter Low speed', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.hallway_shutter_low_speed', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.nursery_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.nursery_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-1698/141613', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.nursery_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'shutter', + 'friendly_name': 'Nursery Shutter', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.nursery_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.nursery_shutter_low_speed-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.nursery_shutter_low_speed', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': 'Low speed', + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': 'Low speed', + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-1698/141613_low_speed', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.nursery_shutter_low_speed-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'shutter', + 'friendly_name': 'Nursery Shutter Low speed', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.nursery_shutter_low_speed', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.office_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.office_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-1698/9740264', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.office_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'shutter', + 'friendly_name': 'Office Shutter', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.office_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.office_shutter_low_speed-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.office_shutter_low_speed', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': 'Low speed', + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': 'Low speed', + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-1698/9740264_low_speed', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_nexity_rail_din_europe.json][cover.office_shutter_low_speed-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'shutter', + 'friendly_name': 'Office Shutter Low speed', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.office_shutter_low_speed', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_connexoon_rts_asia.json][cover.kitchen_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.kitchen_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'rts://1234-1234-6362/16749917', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_connexoon_rts_asia.json][cover.kitchen_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'assumed_state': True, + 'device_class': 'shutter', + 'friendly_name': 'Kitchen Shutter', + 'is_closed': None, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.kitchen_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'unknown', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_connexoon_rts_asia.json][cover.patio_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.patio_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'rts://1234-1234-6362/16730022', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_connexoon_rts_asia.json][cover.patio_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'assumed_state': True, + 'device_class': 'shutter', + 'friendly_name': 'Patio Shutter', + 'is_closed': None, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.patio_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'unknown', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.basement_roller_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.basement_roller_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-5010/2150846', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.basement_roller_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 90, + 'device_class': 'shutter', + 'friendly_name': 'Basement Roller Shutter', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.basement_roller_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.laundry_screen-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.laundry_screen', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-5010/5719467', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.laundry_screen-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 50, + 'device_class': 'blind', + 'friendly_name': 'Laundry Screen', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.laundry_screen', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.loft_window-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.loft_window', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-5010/13522671', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.loft_window-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'window', + 'friendly_name': 'Loft Window', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.loft_window', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.pantry_screen-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.pantry_screen', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-5010/2890799', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.pantry_screen-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'blind', + 'friendly_name': 'Pantry Screen', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.pantry_screen', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.playroom_screen-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.playroom_screen', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-5010/13915941', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.playroom_screen-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'blind', + 'friendly_name': 'Playroom Screen', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.playroom_screen', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.studio_window-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.studio_window', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-5010/3912866', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.studio_window-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'window', + 'friendly_name': 'Studio Window', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.studio_window', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.study_screen-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.study_screen', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-5010/13149769', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.study_screen-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'blind', + 'friendly_name': 'Study Screen', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.study_screen', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.veranda_roller_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.veranda_roller_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-5010/12931361', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.veranda_roller_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 50, + 'device_class': 'shutter', + 'friendly_name': 'Veranda Roller Shutter', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.veranda_roller_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.workshop_screen-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.workshop_screen', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-5010/4905039', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_switch_sc_europe.json][cover.workshop_screen-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'blind', + 'friendly_name': 'Workshop Screen', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.workshop_screen', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.bedroom_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.bedroom_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/13064380', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.bedroom_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'shutter', + 'friendly_name': 'Bedroom Blinds', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.bedroom_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.dining_room_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.dining_room_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/2487349', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.dining_room_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'shutter', + 'friendly_name': 'Dining Room Shutter', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.dining_room_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.garden_house_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.garden_house_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/12184029', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.garden_house_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'shutter', + 'friendly_name': 'Garden House Shutter', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.garden_house_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.guest_room_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.guest_room_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/8170693', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.guest_room_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'shutter', + 'friendly_name': 'Guest Room Shutter', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.guest_room_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.kids_room_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.kids_room_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/9749383', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.kids_room_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'shutter', + 'friendly_name': 'Kids Room Shutter', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.kids_room_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.kitchen_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.kitchen_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/13136078', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.kitchen_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'shutter', + 'friendly_name': 'Kitchen Shutter', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.kitchen_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.living_room_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.living_room_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/8939545', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.living_room_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'shutter', + 'friendly_name': 'Living Room Shutter', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.living_room_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.main_garage_door-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.main_garage_door', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/1166863', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.main_garage_door-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'garage', + 'friendly_name': 'Main Garage Door', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.main_garage_door', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.office_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.office_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/13911608', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.office_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'shutter', + 'friendly_name': 'Office Shutter', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.office_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.patio_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.patio_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/180461', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.patio_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'shutter', + 'friendly_name': 'Patio Shutter', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.patio_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.side_garage_door-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.side_garage_door', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/3880877', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.side_garage_door-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'garage', + 'friendly_name': 'Side Garage Door', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.side_garage_door', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.studio_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.studio_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-6233/7019474', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[cloud_somfy_tahoma_v2_europe.json][cover.studio_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'shutter', + 'friendly_name': 'Studio Shutter', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.studio_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_connexoon_europe.json][cover.terrace_awning-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.terrace_awning', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-1234-1234/5928357', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_connexoon_europe.json][cover.terrace_awning-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'awning', + 'friendly_name': 'Terrace Awning', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.terrace_awning', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.bathroom_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.bathroom_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/5456600', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.bathroom_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -8, + 'current_tilt_position': 68, + 'device_class': 'blind', + 'friendly_name': 'Bathroom Blinds', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.bathroom_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.bedroom_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.bedroom_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/16130150', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.bedroom_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -8, + 'current_tilt_position': 68, + 'device_class': 'blind', + 'friendly_name': 'Bedroom Blinds', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.bedroom_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.dining_room_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.dining_room_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/13662182', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.dining_room_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'current_tilt_position': 69, + 'device_class': 'blind', + 'friendly_name': 'Dining Room Blinds', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.dining_room_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.garage_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.garage_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/11292138', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.garage_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -8, + 'current_tilt_position': 69, + 'device_class': 'blind', + 'friendly_name': 'Garage Blinds', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.garage_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.guest_room_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.guest_room_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/6553884', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.guest_room_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -8, + 'current_tilt_position': 68, + 'device_class': 'blind', + 'friendly_name': 'Guest Room Blinds', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.guest_room_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.hallway_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.hallway_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/10076003', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.hallway_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -8, + 'current_tilt_position': 68, + 'device_class': 'blind', + 'friendly_name': 'Hallway Blinds', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.hallway_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.kitchen_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.kitchen_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/3248049', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.kitchen_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -8, + 'current_tilt_position': 68, + 'device_class': 'blind', + 'friendly_name': 'Kitchen Blinds', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.kitchen_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.living_room_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.living_room_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/6380765', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.living_room_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -8, + 'current_tilt_position': 68, + 'device_class': 'blind', + 'friendly_name': 'Living Room Blinds', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.living_room_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.master_bedroom_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.master_bedroom_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/12736675', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.master_bedroom_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -8, + 'current_tilt_position': 68, + 'device_class': 'blind', + 'friendly_name': 'Master Bedroom Blinds', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.master_bedroom_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.nursery_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.nursery_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/4803435', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.nursery_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -8, + 'current_tilt_position': 69, + 'device_class': 'blind', + 'friendly_name': 'Nursery Blinds', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.nursery_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.office_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.office_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/4877511', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.office_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -8, + 'current_tilt_position': 68, + 'device_class': 'blind', + 'friendly_name': 'Office Blinds', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.office_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.study_blinds-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.study_blinds', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-6508/6375755', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe.json][cover.study_blinds-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -8, + 'current_tilt_position': 72, + 'device_class': 'blind', + 'friendly_name': 'Study Blinds', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.study_blinds', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_2.json][cover.back_door_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.back_door_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-1516/3897767', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_2.json][cover.back_door_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -24, + 'device_class': 'shutter', + 'friendly_name': 'Back Door Shutter', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.back_door_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_2.json][cover.front_door_shutter-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.front_door_shutter', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-1516/3656107', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_2.json][cover.front_door_shutter-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': -24, + 'device_class': 'shutter', + 'friendly_name': 'Front Door Shutter', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.front_door_shutter', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'opening', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_2.json][cover.roof_window-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.roof_window', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-1516/77700', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_2.json][cover.roof_window-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'window', + 'friendly_name': 'Roof Window', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.roof_window', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_2.json][cover.roof_window_low_speed-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.roof_window_low_speed', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': 'Low speed', + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': 'Low speed', + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-1516/77700_low_speed', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_2.json][cover.roof_window_low_speed-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'window', + 'friendly_name': 'Roof Window Low speed', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.roof_window_low_speed', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.attic_curtain-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.attic_curtain', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'rts://1234-5678--9373/16757362', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.attic_curtain-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'assumed_state': True, + 'device_class': 'curtain', + 'friendly_name': 'Attic Curtain', + 'is_closed': None, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.attic_curtain', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'unknown', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.conservatory_screen-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.conservatory_screen', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678--9373/3868695', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.conservatory_screen-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 86, + 'device_class': 'blind', + 'friendly_name': 'Conservatory Screen', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.conservatory_screen', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.library_screen-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.library_screen', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678--9373/3904805', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.library_screen-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 86, + 'device_class': 'blind', + 'friendly_name': 'Library Screen', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.library_screen', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.patio_window-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.patio_window', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678--9373/10202865', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.patio_window-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 0, + 'device_class': 'window', + 'friendly_name': 'Patio Window', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.patio_window', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.sunroom_shades-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.sunroom_shades', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678--9373/15097783', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.sunroom_shades-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'blind', + 'friendly_name': 'Sunroom Shades', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.sunroom_shades', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.terrace_awning-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.terrace_awning', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678--9373/5632438', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_switch_europe_3.json][cover.terrace_awning-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 86, + 'device_class': 'blind', + 'friendly_name': 'Terrace Awning', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.terrace_awning', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_v2_europe.json][cover.bedroom_screen-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.bedroom_screen', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-3293/5770898', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_v2_europe.json][cover.bedroom_screen-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'blind', + 'friendly_name': 'Bedroom Screen', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.bedroom_screen', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_v2_europe.json][cover.dining_room_screen-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.dining_room_screen', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-3293/5353900', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_v2_europe.json][cover.dining_room_screen-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'blind', + 'friendly_name': 'Dining Room Screen', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.dining_room_screen', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_v2_europe.json][cover.garden_pergola-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.garden_pergola', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-3293/7614902', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_v2_europe.json][cover.garden_pergola-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_tilt_position': 0, + 'device_class': 'awning', + 'friendly_name': 'Garden Pergola', + 'is_closed': True, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.garden_pergola', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'closed', + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_v2_europe.json][cover.office_screen-entry] + EntityRegistryEntrySnapshot({ + 'aliases': list([ + None, + ]), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'cover', + 'entity_category': None, + 'entity_id': 'cover.office_screen', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'object_id_base': None, + 'options': dict({ + }), + 'original_device_class': , + 'original_icon': None, + 'original_name': None, + 'platform': 'overkiz', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': , + 'translation_key': None, + 'unique_id': 'io://1234-5678-3293/3541212', + 'unit_of_measurement': None, + }) +# --- +# name: test_cover_entities_snapshot[local_somfy_tahoma_v2_europe.json][cover.office_screen-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'current_position': 100, + 'device_class': 'blind', + 'friendly_name': 'Office Screen', + 'is_closed': False, + 'supported_features': , + }), + 'context': , + 'entity_id': 'cover.office_screen', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'open', + }) +# --- diff --git a/tests/components/overkiz/test_cover.py b/tests/components/overkiz/test_cover.py new file mode 100644 index 000000000000..dc8902dc03e9 --- /dev/null +++ b/tests/components/overkiz/test_cover.py @@ -0,0 +1,679 @@ +"""Tests for the Overkiz cover platform.""" + +from __future__ import annotations + +from collections.abc import Generator +from pathlib import Path +from typing import Any, NamedTuple +from unittest.mock import patch + +from freezegun.api import FrozenDateTimeFactory +from pyoverkiz.enums import EventName, ExecutionState, OverkizCommandParam, OverkizState +import pytest +from syrupy.assertion import SnapshotAssertion + +from homeassistant.components.cover import ( + ATTR_CURRENT_POSITION, + ATTR_CURRENT_TILT_POSITION, + ATTR_POSITION, + ATTR_TILT_POSITION, + DOMAIN as COVER_DOMAIN, + SERVICE_CLOSE_COVER, + SERVICE_CLOSE_COVER_TILT, + SERVICE_OPEN_COVER, + SERVICE_OPEN_COVER_TILT, + SERVICE_SET_COVER_POSITION, + SERVICE_SET_COVER_TILT_POSITION, + SERVICE_STOP_COVER, + SERVICE_STOP_COVER_TILT, + CoverEntityFeature, + CoverState, +) +from homeassistant.const import ATTR_ENTITY_ID, STATE_UNAVAILABLE, Platform +from homeassistant.core import HomeAssistant +from homeassistant.helpers import entity_registry as er + +from .conftest import MockOverkizClient, SetupOverkizIntegration +from .helpers import assert_command_call, async_deliver_events, build_event + +from tests.common import snapshot_platform + + +class FixtureDevice(NamedTuple): + """Test device binding a fixture file to a device URL and entity id.""" + + fixture: str + device_url: str + entity_id: str + + +AWNING = FixtureDevice( + "setup/local_somfy_connexoon_europe.json", + "io://1234-1234-1234/5928357", + "cover.terrace_awning", +) +LOW_SPEED = FixtureDevice( + "setup/cloud_nexity_rail_din_europe.json", + "io://1234-5678-1698/141613", + "cover.nursery_shutter", +) +PERGOLA = FixtureDevice( + "setup/local_somfy_tahoma_v2_europe.json", + "io://1234-5678-3293/7614902", + "cover.garden_pergola", +) +RTS = FixtureDevice( + "setup/cloud_somfy_connexoon_rts_asia.json", + "rts://1234-1234-6362/16730022", + "cover.patio_shutter", +) +SHUTTER = FixtureDevice( + "setup/cloud_somfy_tahoma_v2_europe.json", + "io://1234-1234-6233/12184029", + "cover.garden_house_shutter", +) +GARAGE = FixtureDevice( + "setup/cloud_somfy_tahoma_v2_europe.json", + "io://1234-1234-6233/1166863", + "cover.main_garage_door", +) +TILTED_WINDOW = FixtureDevice( + "setup/local_somfy_tahoma_switch_europe_3.json", + "io://1234-5678-9373/10202865", + "cover.bedroom_blinds", +) +# Device with ClosureState=108 +DYNAMIC_EXTERIOR_VENETIAN_BLIND = FixtureDevice( + "setup/local_somfy_tahoma_switch_europe.json", + "io://1234-5678-6508/4877511", + "cover.dining_room_blinds", +) +# Device with ClosureState=124 +POSITIONABLE_ROLLER_SHUTTER_UNO = FixtureDevice( + "setup/local_somfy_tahoma_switch_europe_2.json", + "io://1234-5678-1516/3656107", + "cover.hallway_shutter", +) +POSITIONABLE_DUAL_ROLLER_SHUTTER = FixtureDevice( + "setup/cloud_somfy_tahoma_switch_sc_europe.json", + "io://1234-5678-5010/12931361", + "cover.basement_roller_shutter", +) + +SNAPSHOT_FIXTURES = [ + AWNING, + LOW_SPEED, + PERGOLA, + RTS, + SHUTTER, + TILTED_WINDOW, + DYNAMIC_EXTERIOR_VENETIAN_BLIND, + POSITIONABLE_ROLLER_SHUTTER_UNO, + POSITIONABLE_DUAL_ROLLER_SHUTTER, +] + + +@pytest.fixture(autouse=True) +def fixture_platforms() -> Generator[None]: + """Limit platforms to cover only.""" + with patch("homeassistant.components.overkiz.PLATFORMS", [Platform.COVER]): + yield + + +@pytest.mark.parametrize( + "device", + SNAPSHOT_FIXTURES, + ids=[Path(device.fixture).name for device in SNAPSHOT_FIXTURES], +) +async def test_cover_entities_snapshot( + hass: HomeAssistant, + setup_overkiz_integration: SetupOverkizIntegration, + entity_registry: er.EntityRegistry, + snapshot: SnapshotAssertion, + device: FixtureDevice, +) -> None: + """Test representative real setups via snapshot.""" + config_entry = await setup_overkiz_integration(fixture=device.fixture) + + await snapshot_platform(hass, entity_registry, snapshot, config_entry.entry_id) + + +@pytest.mark.parametrize( + ("device", "service", "command_name", "expected_state"), + [ + (SHUTTER, SERVICE_OPEN_COVER, "open", CoverState.OPENING), + pytest.param( + AWNING, + SERVICE_OPEN_COVER, + "deploy", + CoverState.OPENING, + marks=pytest.mark.xfail(reason="Awning deploy not mapped to opening state"), + ), + (GARAGE, SERVICE_OPEN_COVER, "open", CoverState.OPENING), + (SHUTTER, SERVICE_CLOSE_COVER, "close", CoverState.CLOSING), + pytest.param( + AWNING, + SERVICE_CLOSE_COVER, + "undeploy", + CoverState.CLOSING, + marks=pytest.mark.xfail( + reason="Awning undeploy not mapped to closing state" + ), + ), + (GARAGE, SERVICE_CLOSE_COVER, "close", CoverState.CLOSING), + (SHUTTER, SERVICE_STOP_COVER, "stop", CoverState.CLOSED), + (AWNING, SERVICE_STOP_COVER, "stop", CoverState.CLOSED), + (GARAGE, SERVICE_STOP_COVER, "stop", CoverState.CLOSED), + ], + ids=[ + "open-roller-shutter", + "open-awning", + "open-garage-door", + "close-roller-shutter", + "close-awning", + "close-garage-door", + "stop-roller-shutter", + "stop-awning", + "stop-garage-door", + ], +) +async def test_cover_service_actions( + hass: HomeAssistant, + setup_overkiz_integration: SetupOverkizIntegration, + mock_client: MockOverkizClient, + device: FixtureDevice, + service: str, + command_name: str, + expected_state: CoverState, +) -> None: + """Test open, close, and stop cover services.""" + await setup_overkiz_integration(fixture=device.fixture) + + await hass.services.async_call( + COVER_DOMAIN, + service, + {ATTR_ENTITY_ID: device.entity_id}, + blocking=True, + ) + await hass.async_block_till_done() + + assert hass.states.get(device.entity_id).state == expected_state + + assert_command_call( + mock_client, + device_url=device.device_url, + command_name=command_name, + ) + + +@pytest.mark.parametrize( + ( + "device", + "entity_id", + "command_name", + "parameters", + "position", + ), + [ + (SHUTTER, SHUTTER.entity_id, "setClosure", [75], 25), + (AWNING, AWNING.entity_id, "setDeployment", [80], 80), + ( + LOW_SPEED, + "cover.nursery_shutter_low_speed", + "setClosureAndLinearSpeed", + [65, OverkizCommandParam.LOWSPEED], + 35, + ), + ], + ids=["roller-shutter", "awning", "low-speed"], +) +async def test_cover_set_position( + hass: HomeAssistant, + setup_overkiz_integration: SetupOverkizIntegration, + mock_client: MockOverkizClient, + device: FixtureDevice, + entity_id: str, + command_name: str, + parameters: list[Any], + position: int, +) -> None: + """Test cover position services and mapping.""" + await setup_overkiz_integration(fixture=device.fixture) + + await hass.services.async_call( + COVER_DOMAIN, + SERVICE_SET_COVER_POSITION, + {ATTR_ENTITY_ID: entity_id, ATTR_POSITION: position}, + blocking=True, + ) + + assert_command_call( + mock_client, + device_url=device.device_url, + command_name=command_name, + parameters=parameters, + ) + + +async def test_cover_tilt_services( + hass: HomeAssistant, + setup_overkiz_integration: SetupOverkizIntegration, + mock_client: MockOverkizClient, + freezer: FrozenDateTimeFactory, +) -> None: + """Test tilt services for a pergola from a full user setup.""" + await setup_overkiz_integration(fixture=PERGOLA.fixture) + + state = hass.states.get(PERGOLA.entity_id) + assert state + assert state.attributes[ATTR_CURRENT_TILT_POSITION] == 0 + assert ATTR_CURRENT_POSITION not in state.attributes + assert state.attributes["supported_features"] == ( + CoverEntityFeature.OPEN_TILT + | CoverEntityFeature.CLOSE_TILT + | CoverEntityFeature.STOP_TILT + | CoverEntityFeature.SET_TILT_POSITION + ) + + mock_client.execute_command.reset_mock() + await hass.services.async_call( + COVER_DOMAIN, + SERVICE_OPEN_COVER_TILT, + {ATTR_ENTITY_ID: PERGOLA.entity_id}, + blocking=True, + ) + await hass.async_block_till_done() + assert hass.states.get(PERGOLA.entity_id).state == CoverState.OPENING + assert_command_call( + mock_client, + device_url=PERGOLA.device_url, + command_name="openSlats", + ) + + await async_deliver_events( + hass, + freezer, + mock_client, + [ + build_event( + EventName.EXECUTION_STATE_CHANGED.value, + device_url=PERGOLA.device_url, + exec_id="exec-1", + new_state=ExecutionState.COMPLETED.value, + ) + ], + ) + assert hass.states.get(PERGOLA.entity_id).state == CoverState.CLOSED + + mock_client.execute_command.reset_mock() + await hass.services.async_call( + COVER_DOMAIN, + SERVICE_CLOSE_COVER_TILT, + {ATTR_ENTITY_ID: PERGOLA.entity_id}, + blocking=True, + ) + await hass.async_block_till_done() + assert hass.states.get(PERGOLA.entity_id).state == CoverState.CLOSING + assert_command_call( + mock_client, + device_url=PERGOLA.device_url, + command_name="closeSlats", + ) + + mock_client.execute_command.reset_mock() + await hass.services.async_call( + COVER_DOMAIN, + SERVICE_STOP_COVER_TILT, + {ATTR_ENTITY_ID: PERGOLA.entity_id}, + blocking=True, + ) + assert_command_call( + mock_client, + device_url=PERGOLA.device_url, + command_name="stop", + ) + + mock_client.execute_command.reset_mock() + await hass.services.async_call( + COVER_DOMAIN, + SERVICE_SET_COVER_TILT_POSITION, + {ATTR_ENTITY_ID: PERGOLA.entity_id, ATTR_TILT_POSITION: 40}, + blocking=True, + ) + assert_command_call( + mock_client, + device_url=PERGOLA.device_url, + command_name="setOrientation", + parameters=[60], + ) + + +async def test_cover_state_updates( + hass: HomeAssistant, + setup_overkiz_integration: SetupOverkizIntegration, + mock_client: MockOverkizClient, + freezer: FrozenDateTimeFactory, +) -> None: + """Test cover state updates via events and execution tracking.""" + await setup_overkiz_integration(fixture=SHUTTER.fixture) + + assert hass.states.get(SHUTTER.entity_id).attributes[ATTR_CURRENT_POSITION] == 0 + + # Position update via device state change event + await async_deliver_events( + hass, + freezer, + mock_client, + [ + build_event( + EventName.DEVICE_STATE_CHANGED.value, + device_url=SHUTTER.device_url, + device_states=[ + { + "name": OverkizState.CORE_CLOSURE.value, + "type": 1, + "value": 0, + }, + { + "name": OverkizState.CORE_TARGET_CLOSURE.value, + "type": 1, + "value": 0, + }, + { + "name": OverkizState.CORE_MOVING.value, + "type": 6, + "value": False, + }, + { + "name": OverkizState.CORE_OPEN_CLOSED.value, + "type": 3, + "value": OverkizCommandParam.OPEN.value, + }, + ], + ) + ], + ) + + state = hass.states.get(SHUTTER.entity_id) + assert state.attributes[ATTR_CURRENT_POSITION] == 100 + assert state.state == CoverState.OPEN + + # Position update to closed + await async_deliver_events( + hass, + freezer, + mock_client, + [ + build_event( + EventName.DEVICE_STATE_CHANGED.value, + device_url=SHUTTER.device_url, + device_states=[ + { + "name": OverkizState.CORE_CLOSURE.value, + "type": 1, + "value": 100, + }, + { + "name": OverkizState.CORE_TARGET_CLOSURE.value, + "type": 1, + "value": 100, + }, + { + "name": OverkizState.CORE_MOVING.value, + "type": 6, + "value": False, + }, + { + "name": OverkizState.CORE_OPEN_CLOSED.value, + "type": 3, + "value": OverkizCommandParam.CLOSED.value, + }, + ], + ) + ], + ) + + state = hass.states.get(SHUTTER.entity_id) + assert state.attributes[ATTR_CURRENT_POSITION] == 0 + assert state.state == CoverState.CLOSED + + # Execution tracking: state stays OPENING until execution completes + await hass.services.async_call( + COVER_DOMAIN, + SERVICE_OPEN_COVER, + {ATTR_ENTITY_ID: SHUTTER.entity_id}, + blocking=True, + ) + await hass.async_block_till_done() + assert hass.states.get(SHUTTER.entity_id).state == CoverState.OPENING + + await async_deliver_events( + hass, + freezer, + mock_client, + [ + build_event( + EventName.DEVICE_STATE_CHANGED.value, + device_url=SHUTTER.device_url, + device_states=[ + { + "name": OverkizState.CORE_CLOSURE.value, + "type": 1, + "value": 0, + }, + { + "name": OverkizState.CORE_TARGET_CLOSURE.value, + "type": 1, + "value": 0, + }, + { + "name": OverkizState.CORE_MOVING.value, + "type": 6, + "value": False, + }, + { + "name": OverkizState.CORE_OPEN_CLOSED.value, + "type": 3, + "value": OverkizCommandParam.OPEN.value, + }, + ], + ) + ], + ) + assert hass.states.get(SHUTTER.entity_id).state == CoverState.OPENING + + await async_deliver_events( + hass, + freezer, + mock_client, + [ + build_event( + EventName.EXECUTION_STATE_CHANGED.value, + device_url=SHUTTER.device_url, + exec_id="exec-1", + new_state=ExecutionState.COMPLETED.value, + ) + ], + ) + assert hass.states.get(SHUTTER.entity_id).state == CoverState.OPEN + + # Unavailability propagates to entity state + await async_deliver_events( + hass, + freezer, + mock_client, + [ + build_event( + EventName.DEVICE_UNAVAILABLE.value, device_url=SHUTTER.device_url + ) + ], + ) + assert hass.states.get(SHUTTER.entity_id).state == STATE_UNAVAILABLE + + +@pytest.mark.parametrize( + ("device_states", "expected_state"), + [ + ( + [ + {"name": OverkizState.CORE_MOVING.value, "type": 6, "value": True}, + {"name": OverkizState.CORE_CLOSURE.value, "type": 1, "value": 75}, + { + "name": OverkizState.CORE_TARGET_CLOSURE.value, + "type": 1, + "value": 20, + }, + ], + CoverState.OPENING, + ), + ( + [ + {"name": OverkizState.CORE_MOVING.value, "type": 6, "value": True}, + {"name": OverkizState.CORE_CLOSURE.value, "type": 1, "value": 20}, + { + "name": OverkizState.CORE_TARGET_CLOSURE.value, + "type": 1, + "value": 75, + }, + ], + CoverState.CLOSING, + ), + ], + ids=["opening", "closing"], +) +async def test_vertical_cover_moving_direction( + hass: HomeAssistant, + setup_overkiz_integration: SetupOverkizIntegration, + mock_client: MockOverkizClient, + freezer: FrozenDateTimeFactory, + device_states: list[dict[str, Any]], + expected_state: CoverState, +) -> None: + """Test moving direction detection for vertical covers based on current vs target position.""" + await setup_overkiz_integration(fixture=SHUTTER.fixture) + + await async_deliver_events( + hass, + freezer, + mock_client, + [ + build_event( + EventName.DEVICE_STATE_CHANGED.value, + device_url=SHUTTER.device_url, + device_states=device_states, + ) + ], + ) + + assert hass.states.get(SHUTTER.entity_id).state == expected_state + + +@pytest.mark.parametrize( + ("device_states", "expected_state"), + [ + ( + [ + {"name": OverkizState.CORE_MOVING.value, "type": 6, "value": True}, + { + "name": OverkizState.CORE_DEPLOYMENT.value, + "type": 1, + "value": 20, + }, + { + "name": OverkizState.CORE_TARGET_CLOSURE.value, + "type": 1, + "value": 80, + }, + ], + CoverState.OPENING, + ), + ( + [ + {"name": OverkizState.CORE_MOVING.value, "type": 6, "value": True}, + { + "name": OverkizState.CORE_DEPLOYMENT.value, + "type": 1, + "value": 80, + }, + { + "name": OverkizState.CORE_TARGET_CLOSURE.value, + "type": 1, + "value": 20, + }, + ], + CoverState.CLOSING, + ), + ], + ids=["opening", "closing"], +) +async def test_awning_moving_direction( + hass: HomeAssistant, + setup_overkiz_integration: SetupOverkizIntegration, + mock_client: MockOverkizClient, + freezer: FrozenDateTimeFactory, + device_states: list[dict[str, Any]], + expected_state: CoverState, +) -> None: + """Test moving direction detection for awnings based on current vs target position.""" + await setup_overkiz_integration(fixture=AWNING.fixture) + + await async_deliver_events( + hass, + freezer, + mock_client, + [ + build_event( + EventName.DEVICE_STATE_CHANGED.value, + device_url=AWNING.device_url, + device_states=device_states, + ) + ], + ) + + assert hass.states.get(AWNING.entity_id).state == expected_state + + +async def test_awning_direct_position_mapping( + hass: HomeAssistant, + setup_overkiz_integration: SetupOverkizIntegration, + mock_client: MockOverkizClient, + freezer: FrozenDateTimeFactory, +) -> None: + """Test awning deployment uses direct mapping while vertical covers invert.""" + await setup_overkiz_integration(fixture=AWNING.fixture) + + assert hass.states.get(AWNING.entity_id).attributes[ATTR_CURRENT_POSITION] == 0 + + mock_client.execute_command.reset_mock() + await hass.services.async_call( + COVER_DOMAIN, + SERVICE_SET_COVER_POSITION, + {ATTR_ENTITY_ID: AWNING.entity_id, ATTR_POSITION: 35}, + blocking=True, + ) + assert_command_call( + mock_client, + device_url=AWNING.device_url, + command_name="setDeployment", + parameters=[35], + ) + + await async_deliver_events( + hass, + freezer, + mock_client, + [ + build_event( + EventName.DEVICE_STATE_CHANGED.value, + device_url=AWNING.device_url, + device_states=[ + { + "name": OverkizState.CORE_DEPLOYMENT.value, + "type": 1, + "value": 100, + } + ], + ) + ], + ) + assert hass.states.get(AWNING.entity_id).attributes[ATTR_CURRENT_POSITION] == 100