qolsys-controller 0.0.44__py3-none-any.whl → 0.0.87__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of qolsys-controller might be problematic. Click here for more details.
- qolsys_controller/adc_device.py +202 -0
- qolsys_controller/adc_service.py +139 -0
- qolsys_controller/adc_service_garagedoor.py +35 -0
- qolsys_controller/controller.py +1040 -20
- qolsys_controller/database/db.py +108 -29
- qolsys_controller/database/table.py +90 -60
- qolsys_controller/database/table_alarmedsensor.py +2 -2
- qolsys_controller/database/table_automation.py +0 -1
- qolsys_controller/database/table_country_locale.py +0 -1
- qolsys_controller/database/table_dashboard_msgs.py +1 -2
- qolsys_controller/database/table_dimmerlight.py +0 -1
- qolsys_controller/database/table_doorlock.py +0 -1
- qolsys_controller/database/table_eu_event.py +1 -2
- qolsys_controller/database/table_heat_map.py +0 -2
- qolsys_controller/database/table_history.py +4 -1
- qolsys_controller/database/table_iqremotesettings.py +0 -2
- qolsys_controller/database/table_iqrouter_network_config.py +0 -1
- qolsys_controller/database/table_iqrouter_user_device.py +0 -2
- qolsys_controller/database/table_master_slave.py +0 -1
- qolsys_controller/database/table_nest_device.py +0 -1
- qolsys_controller/database/table_output_rules.py +0 -1
- qolsys_controller/database/table_partition.py +0 -1
- qolsys_controller/database/table_pgm_outputs.py +0 -2
- qolsys_controller/database/table_powerg_device.py +0 -2
- qolsys_controller/database/table_qolsyssettings.py +0 -2
- qolsys_controller/database/table_scene.py +0 -2
- qolsys_controller/database/table_sensor.py +2 -2
- qolsys_controller/database/table_sensor_group.py +23 -0
- qolsys_controller/database/table_shades.py +0 -2
- qolsys_controller/database/table_smartsocket.py +12 -3
- qolsys_controller/database/table_state.py +0 -1
- qolsys_controller/database/table_tcc.py +0 -1
- qolsys_controller/database/table_thermostat.py +3 -1
- qolsys_controller/database/table_trouble_conditions.py +0 -2
- qolsys_controller/database/table_user.py +0 -2
- qolsys_controller/database/table_virtual_device.py +13 -3
- qolsys_controller/database/table_weather.py +0 -2
- qolsys_controller/database/table_zigbee_device.py +0 -1
- qolsys_controller/database/table_zwave_association_group.py +0 -1
- qolsys_controller/database/table_zwave_history.py +0 -1
- qolsys_controller/database/table_zwave_node.py +3 -1
- qolsys_controller/database/table_zwave_other.py +0 -1
- qolsys_controller/enum.py +42 -13
- qolsys_controller/enum_adc.py +28 -0
- qolsys_controller/enum_zwave.py +210 -36
- qolsys_controller/errors.py +14 -12
- qolsys_controller/mdns.py +7 -4
- qolsys_controller/mqtt_command.py +125 -0
- qolsys_controller/mqtt_command_queue.py +5 -4
- qolsys_controller/observable.py +2 -2
- qolsys_controller/panel.py +304 -156
- qolsys_controller/partition.py +149 -127
- qolsys_controller/pki.py +69 -97
- qolsys_controller/scene.py +30 -28
- qolsys_controller/settings.py +96 -50
- qolsys_controller/state.py +221 -34
- qolsys_controller/task_manager.py +11 -14
- qolsys_controller/users.py +25 -0
- qolsys_controller/utils_mqtt.py +8 -16
- qolsys_controller/weather.py +71 -0
- qolsys_controller/zone.py +243 -214
- qolsys_controller/zwave_device.py +234 -93
- qolsys_controller/zwave_dimmer.py +55 -49
- qolsys_controller/zwave_energy_clamp.py +15 -0
- qolsys_controller/zwave_garagedoor.py +3 -1
- qolsys_controller/zwave_generic.py +5 -3
- qolsys_controller/zwave_lock.py +51 -44
- qolsys_controller/zwave_outlet.py +3 -1
- qolsys_controller/zwave_service_meter.py +192 -0
- qolsys_controller/zwave_service_multilevelsensor.py +119 -0
- qolsys_controller/zwave_thermometer.py +21 -0
- qolsys_controller/zwave_thermostat.py +249 -143
- qolsys_controller-0.0.87.dist-info/METADATA +89 -0
- qolsys_controller-0.0.87.dist-info/RECORD +77 -0
- {qolsys_controller-0.0.44.dist-info → qolsys_controller-0.0.87.dist-info}/WHEEL +1 -1
- qolsys_controller/plugin.py +0 -34
- qolsys_controller/plugin_c4.py +0 -17
- qolsys_controller/plugin_remote.py +0 -1298
- qolsys_controller-0.0.44.dist-info/METADATA +0 -93
- qolsys_controller-0.0.44.dist-info/RECORD +0 -68
- {qolsys_controller-0.0.44.dist-info → qolsys_controller-0.0.87.dist-info}/licenses/LICENSE +0 -0
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableIqRouterNetworkConfig(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.IQRouterNetworkConfigContentProvider/iqrouter_network_config_table"
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableIqRouterUserDevice(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.IQRouterUserDeviceContentProvider/iqrouter_user_device_table"
|
|
@@ -15,7 +14,6 @@ class QolsysTableIqRouterUserDevice(QolsysTable):
|
|
|
15
14
|
self._abort_on_error = False
|
|
16
15
|
self._implemented = False
|
|
17
16
|
|
|
18
|
-
|
|
19
17
|
self._columns = [
|
|
20
18
|
"_id",
|
|
21
19
|
]
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableMasterSlave(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.MasterSlaveContentProvider/master_slave"
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableNestDevice(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.NestDeviceContentProvider/nest_device"
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableOutputRules(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.OutputRulesContentProvider/output_rules"
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTablePartition(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.PartitionContentProvider/partition"
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTablePgmOutputs(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.PgmOutputsContentProvider/pgm_outputs"
|
|
@@ -15,7 +14,6 @@ class QolsysTablePgmOutputs(QolsysTable):
|
|
|
15
14
|
self._abort_on_error = False
|
|
16
15
|
self._implemented = False
|
|
17
16
|
|
|
18
|
-
|
|
19
17
|
self._columns = [
|
|
20
18
|
"_id",
|
|
21
19
|
]
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTablePowerGDevice(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.PowerGDeviceContentProvider/powerg_device"
|
|
@@ -15,7 +14,6 @@ class QolsysTablePowerGDevice(QolsysTable):
|
|
|
15
14
|
self._abort_on_error = False
|
|
16
15
|
self._implemented = True
|
|
17
16
|
|
|
18
|
-
|
|
19
17
|
self._columns = [
|
|
20
18
|
"_id",
|
|
21
19
|
"avg_link_quality",
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableQolsysSettings(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.QolsysSettingsProvider/qolsyssettings"
|
|
@@ -15,7 +14,6 @@ class QolsysTableQolsysSettings(QolsysTable):
|
|
|
15
14
|
self._abort_on_error = False
|
|
16
15
|
self._implemented = True
|
|
17
16
|
|
|
18
|
-
|
|
19
17
|
self._columns = [
|
|
20
18
|
"_id",
|
|
21
19
|
"version",
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableScene(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.SceneContentProvider/scene"
|
|
@@ -15,7 +14,6 @@ class QolsysTableScene(QolsysTable):
|
|
|
15
14
|
self._abort_on_error = False
|
|
16
15
|
self._implemented = True
|
|
17
16
|
|
|
18
|
-
|
|
19
17
|
self._columns = [
|
|
20
18
|
"_id",
|
|
21
19
|
"version",
|
|
@@ -7,12 +7,11 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableSensor(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.SensorContentProvider/sensor"
|
|
14
13
|
self._table = "sensor"
|
|
15
|
-
self._abort_on_error =
|
|
14
|
+
self._abort_on_error = False
|
|
16
15
|
self._implemented = True
|
|
17
16
|
|
|
18
17
|
self._columns = [
|
|
@@ -65,6 +64,7 @@ class QolsysTableSensor(QolsysTable):
|
|
|
65
64
|
"secondary_panel_mac_address",
|
|
66
65
|
"extras",
|
|
67
66
|
"allowspeaker",
|
|
67
|
+
"firmware_version",
|
|
68
68
|
]
|
|
69
69
|
|
|
70
70
|
self._create_table()
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import logging # noqa: INP001
|
|
2
|
+
import sqlite3
|
|
3
|
+
|
|
4
|
+
from .table import QolsysTable
|
|
5
|
+
|
|
6
|
+
LOGGER = logging.getLogger(__name__)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class QolsysTableSensorGroup(QolsysTable):
|
|
10
|
+
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
11
|
+
super().__init__(db, cursor)
|
|
12
|
+
self._uri = "content://com.qolsys.qolsysprovider.SensorGroupContentProvider/sensor_group" # ?
|
|
13
|
+
self._table = "sensor_group"
|
|
14
|
+
self._abort_on_error = False
|
|
15
|
+
self._implemented = True
|
|
16
|
+
|
|
17
|
+
self._columns = [
|
|
18
|
+
"_id",
|
|
19
|
+
"GROUPNAME",
|
|
20
|
+
"ACTIVEARMINGMODE",
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
self._create_table()
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableShades(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.ShadesContentProvider/shades"
|
|
@@ -20,4 +19,3 @@ class QolsysTableShades(QolsysTable):
|
|
|
20
19
|
]
|
|
21
20
|
|
|
22
21
|
self._create_table()
|
|
23
|
-
|
|
@@ -7,17 +7,26 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableSmartSocket(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.SmartSocketsContentProvider/smartsocket"
|
|
14
13
|
self._table = "smartsocket"
|
|
15
14
|
self._abort_on_error = False
|
|
16
|
-
self._implemented =
|
|
15
|
+
self._implemented = True
|
|
17
16
|
|
|
18
17
|
self._columns = [
|
|
19
18
|
"_id",
|
|
19
|
+
"created_by",
|
|
20
|
+
"created_date",
|
|
21
|
+
"last_updated_date",
|
|
22
|
+
"node_id",
|
|
23
|
+
"paired_status",
|
|
24
|
+
"power_usage",
|
|
25
|
+
"status",
|
|
26
|
+
"updated_by",
|
|
27
|
+
"socket_id",
|
|
28
|
+
"socket_name",
|
|
29
|
+
"current_usagevoltage_usage",
|
|
20
30
|
]
|
|
21
31
|
|
|
22
32
|
self._create_table()
|
|
23
|
-
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableState(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.StateContentProvider/state"
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableTcc(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.TccContentProvider/tcc"
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableThermostat(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.ThermostatsContentProvider/thermostat"
|
|
@@ -41,6 +40,7 @@ class QolsysTableThermostat(QolsysTable):
|
|
|
41
40
|
"thermostat_mode_updated_time",
|
|
42
41
|
"fan_mode_updated_time",
|
|
43
42
|
"set_point_mode_updated_time",
|
|
43
|
+
"setpoint_capabilites",
|
|
44
44
|
"target_cool_temp_updated_time",
|
|
45
45
|
"target_heat_temp_updated_time",
|
|
46
46
|
"current_temp_updated_time",
|
|
@@ -48,6 +48,8 @@ class QolsysTableThermostat(QolsysTable):
|
|
|
48
48
|
"endpoint",
|
|
49
49
|
"paired_status",
|
|
50
50
|
"configuration_parameter",
|
|
51
|
+
"operating_state",
|
|
52
|
+
"fan_state",
|
|
51
53
|
]
|
|
52
54
|
|
|
53
55
|
self._create_table()
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableTroubleConditions(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.TroubleConditionsContentProvider/trouble_conditions"
|
|
@@ -28,4 +27,3 @@ class QolsysTableTroubleConditions(QolsysTable):
|
|
|
28
27
|
]
|
|
29
28
|
|
|
30
29
|
self._create_table()
|
|
31
|
-
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableUser(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.UserContentProvider/user"
|
|
@@ -43,4 +42,3 @@ class QolsysTableUser(QolsysTable):
|
|
|
43
42
|
]
|
|
44
43
|
|
|
45
44
|
self._create_table()
|
|
46
|
-
|
|
@@ -7,17 +7,27 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableVirtualDevice(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.VirtualDeviceContentProvider/virtual_device"
|
|
14
13
|
self._table = "virtual_device"
|
|
15
14
|
self._abort_on_error = False
|
|
16
|
-
self._implemented =
|
|
15
|
+
self._implemented = True
|
|
17
16
|
|
|
18
17
|
self._columns = [
|
|
19
18
|
"_id",
|
|
19
|
+
"version",
|
|
20
|
+
"opr",
|
|
21
|
+
"partition_id",
|
|
22
|
+
"device_id",
|
|
23
|
+
"name",
|
|
24
|
+
"type",
|
|
25
|
+
"func_list",
|
|
26
|
+
"create_time",
|
|
27
|
+
"created_by",
|
|
28
|
+
"update_time",
|
|
29
|
+
"updated_by",
|
|
30
|
+
"device_zone_list",
|
|
20
31
|
]
|
|
21
32
|
|
|
22
33
|
self._create_table()
|
|
23
|
-
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableWeather(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.ForecastWeatherContentProvider/weather"
|
|
@@ -30,4 +29,3 @@ class QolsysTableWeather(QolsysTable):
|
|
|
30
29
|
]
|
|
31
30
|
|
|
32
31
|
self._create_table()
|
|
33
|
-
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableZigbeeDevice(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.ZigbeeDeviceContentProvider/zigbee_device"
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableZwaveAssociationGroup(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.ZwaveAssociationGroupContentProvider/zwave_association_group"
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableZwaveHistory(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.ZDeviceHistoryContentProvider/zwave_history"
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableZwaveNode(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.ZwaveContentProvider/zwave_node"
|
|
@@ -80,6 +79,9 @@ class QolsysTableZwaveNode(QolsysTable):
|
|
|
80
79
|
"sound_switch_info",
|
|
81
80
|
"long_range_nodeid",
|
|
82
81
|
"hide_device_info",
|
|
82
|
+
"meter_capabilities",
|
|
83
|
+
"multisensor_capabilities",
|
|
84
|
+
"central_scene_supported",
|
|
83
85
|
]
|
|
84
86
|
|
|
85
87
|
self._create_table()
|
|
@@ -7,7 +7,6 @@ LOGGER = logging.getLogger(__name__)
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
class QolsysTableZwaveOther(QolsysTable):
|
|
10
|
-
|
|
11
10
|
def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
|
|
12
11
|
super().__init__(db, cursor)
|
|
13
12
|
self._uri = "content://com.qolsys.qolsysprovider.ZwaveOtherDeviceContentProvider/zwave_other"
|
qolsys_controller/enum.py
CHANGED
|
@@ -12,6 +12,12 @@ class PartitionSystemStatus(StrEnum):
|
|
|
12
12
|
UNKNOWN = "UNKNOWN"
|
|
13
13
|
|
|
14
14
|
|
|
15
|
+
class PartitionArmingType(StrEnum):
|
|
16
|
+
ARM_STAY = "ui_armstay"
|
|
17
|
+
ARM_AWAY = "ui_armaway"
|
|
18
|
+
ARM_NIGHT = "ui_armnight"
|
|
19
|
+
|
|
20
|
+
|
|
15
21
|
class PartitionAlarmState(StrEnum):
|
|
16
22
|
NONE = "None"
|
|
17
23
|
DELAY = "Delay"
|
|
@@ -27,6 +33,19 @@ class PartitionAlarmType(StrEnum):
|
|
|
27
33
|
SILENT_POLICE_EMERGENCY = "Silent Police Emergency"
|
|
28
34
|
GLASS_BREAK_AWAY_ONLY = "glassbreakawayonly"
|
|
29
35
|
GLASS_BREAK = "glassbreak"
|
|
36
|
+
ENTRY_EXIT_NORMAL_DELAY = "entryexitdelay"
|
|
37
|
+
ENTRY_EXIT_LONG_DELAY = "entryexitlongdelay"
|
|
38
|
+
INSTANT_PERIMETER_DW = "instantperimeter"
|
|
39
|
+
INSTANT_INTERIOR_DOOR = "instantinterior"
|
|
40
|
+
AWAY_INSTANT_FOLLOWER_DELAY = "awayinstantfollowerdelay"
|
|
41
|
+
REPORTING_SAFETY_SENSOR = "reportingsafety"
|
|
42
|
+
DELAYED_REPORTING_SAFETY_SENSOR = "delayedreportingsafety"
|
|
43
|
+
AWAY_INSTANT_MOTION = "awayinstantmotion"
|
|
44
|
+
STAY_INSTANT_MOTION = "stayinstantmotion"
|
|
45
|
+
STAY_DELAY_MOTION = "staydelaymotion"
|
|
46
|
+
AWAY_DELAY_MOTION = "awaydelaymotion"
|
|
47
|
+
EMPTY = ""
|
|
48
|
+
|
|
30
49
|
|
|
31
50
|
class ZoneStatus(StrEnum):
|
|
32
51
|
ALARMED = "Alarmed"
|
|
@@ -39,10 +58,20 @@ class ZoneStatus(StrEnum):
|
|
|
39
58
|
NORMAL = "Normal"
|
|
40
59
|
UNREACHABLE = "Unreachable"
|
|
41
60
|
TAMPERED = "Tampered"
|
|
42
|
-
|
|
61
|
+
SYNCHRONIZING = "Synchronizing"
|
|
43
62
|
CONNECTED = "connected"
|
|
44
63
|
DISCONNECTED = "disconnected"
|
|
45
64
|
FAILURE = "Failure"
|
|
65
|
+
NOT_NETWORKED = "Not Networked"
|
|
66
|
+
DISARM = "Disarm"
|
|
67
|
+
ARM_AWAY = "Arm-Away"
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
class DeviceCapability(StrEnum):
|
|
71
|
+
SRF = "SRF"
|
|
72
|
+
WIFI = "WiFi"
|
|
73
|
+
POWERG = "POWERG"
|
|
74
|
+
ZWAVE = "Z-Wave"
|
|
46
75
|
|
|
47
76
|
|
|
48
77
|
class ZoneSensorType(StrEnum):
|
|
@@ -93,19 +122,19 @@ class ZoneSensorGroup(StrEnum):
|
|
|
93
122
|
SMOKE_HEAT = "smoke_heat"
|
|
94
123
|
TAMPER_ZONE = "tamperzone"
|
|
95
124
|
SHOCK = "shock"
|
|
125
|
+
ENTRY_EXIT_NORMAL_DELAY = "entryexitdelay"
|
|
126
|
+
ENTRY_EXIT_LONG_DELAY = "entryexitlongdelay"
|
|
127
|
+
INSTANT_PERIMETER_DW = "instantperimeter"
|
|
128
|
+
INSTANT_INTERIOR_DOOR = "instantinterior"
|
|
129
|
+
AWAY_INSTANT_FOLLOWER_DELAY = "awayinstantfollowerdelay"
|
|
130
|
+
REPORTING_SAFETY_SENSOR = "reportingsafety"
|
|
131
|
+
DELAYED_REPORTING_SAFETY_SENSOR = "delayedreportingsafety"
|
|
132
|
+
AWAY_INSTANT_MOTION = "awayinstantmotion"
|
|
133
|
+
STAY_INSTANT_MOTION = "stayinstantmotion"
|
|
134
|
+
STAY_DELAY_MOTION = "staydelaymotion"
|
|
135
|
+
AWAY_DELAY_MOTION = "awaydelaymotion"
|
|
136
|
+
WATER = "WaterSensor"
|
|
96
137
|
|
|
97
|
-
|
|
98
|
-
# ENTRY_EXIT_NORMAL_DELAY = "" #TBD
|
|
99
|
-
# ENTRY_EXIT_LONG_DELAY = "" #TBD
|
|
100
|
-
# INSTANT_PERIMETER_DW = "" #TBD
|
|
101
|
-
# INSTRANT_INTERIOR_DOOR = "" #TBD
|
|
102
|
-
# AWAY_INSTANT_FOLLOWER_DELAY = "" #TBD
|
|
103
|
-
# REPORTING_SAFETY_SENSOR = "" #TBD
|
|
104
|
-
# DELAYED_REPORTING_SAFETY_SENSOR = "" #TBD
|
|
105
|
-
# AWAY_INSTANT_MOTION = "" #TBD
|
|
106
|
-
# STAY_INSTANT_MOTION = "" #TBD
|
|
107
|
-
# STAY_DELAY_MOTION = "" #TBD
|
|
108
|
-
# AWAY_DELAY_MOTION = "" #TBD
|
|
109
138
|
# TAKEOVER = "" #TBD
|
|
110
139
|
# GARAGE_TILT_SAFETY = "" # TBD
|
|
111
140
|
# WATER_SENSOR = "" # TBD
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
from enum import Enum, IntEnum
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class vdFuncType(IntEnum):
|
|
5
|
+
BINARY_ACTUATOR = 1
|
|
6
|
+
MULTISTATE_ACTUATOR = 2
|
|
7
|
+
LEVEL = 3
|
|
8
|
+
STATUS = 4
|
|
9
|
+
MOMENTARY_ACTION = 5
|
|
10
|
+
MODE_SELECTOR = 6
|
|
11
|
+
EVENT = 7
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class vdFuncName(Enum):
|
|
15
|
+
OPEN_CLOSE = "Open/Close"
|
|
16
|
+
LOCK_UNLOCK = "Lock/Unlock"
|
|
17
|
+
ON_OFF = "On/Off"
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class vdFuncLocalControl(IntEnum):
|
|
21
|
+
NONE = 0
|
|
22
|
+
STATUS_ONLY = 1
|
|
23
|
+
FULL_CONTROL = 2
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class vdFuncState(IntEnum):
|
|
27
|
+
ON = 0
|
|
28
|
+
OFF = 1
|