qolsys-controller 0.0.14__tar.gz → 0.0.16__tar.gz
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.
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/PKG-INFO +1 -1
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/example.py +24 -17
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/pyproject.toml +1 -1
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/partition.py +9 -7
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/plugin_remote.py +10 -1
- qolsys_controller-0.0.16/test24.txt +742 -0
- qolsys_controller-0.0.16/test25.txt +594 -0
- qolsys_controller-0.0.16/test30.txt +77 -0
- qolsys_controller-0.0.16/text.txt +181 -0
- qolsys_controller-0.0.16/text23.txt +231 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/.github/workflows/build.yml +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/.github/workflows/publish.yml +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/.gitignore +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/Info_mqtt.md +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/LICENSE +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/README.md +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/bin/qolsys.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/info_pairing.md +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/info_qolsys.md +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/__init__.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/controller.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/db.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_alarmedsensor.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_automation.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_country_locale.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_dashboard_msgs.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_dimmerlight.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_doorlock.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_eu_event.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_heat_map.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_history.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_iqremotesettings.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_iqrouter_network_config.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_iqrouter_user_device.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_master_slave.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_nest_device.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_output_rules.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_partition.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_pgm_outputs.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_powerg_device.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_qolsyssettings.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_scene.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_sensor.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_shades.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_smartsocket.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_state.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_tcc.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_thermostat.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_trouble_conditions.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_user.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_virtual_device.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_weather.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_zigbee_device.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_zwave_association_group.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_zwave_history.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_zwave_node.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/database/table_zwave_other.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/enum.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/errors.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/mdns.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/mqtt_command_queue.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/observable.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/panel.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/pki.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/plugin.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/plugin_c4.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/settings.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/state.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/task_manager.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/utils_mqtt.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/zone.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/zwave_device.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/zwave_dimmer.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/zwave_garagedoor.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/zwave_generic.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/zwave_lock.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/zwave_outlet.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/qolsys_controller/zwave_thermostat.py +0 -0
- {qolsys_controller-0.0.14 → qolsys_controller-0.0.16}/requirements.txt +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: qolsys-controller
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.16
|
4
4
|
Summary: A Python module that emulates a virtual IQ Remote device, enabling full local control of a Qolsys IQ Panel
|
5
5
|
Project-URL: Homepage, https://github.com/EHylands/QolsysController
|
6
6
|
Project-URL: Issues, https://github.com/EHylands/QolsysController/issues
|
@@ -26,7 +26,7 @@ async def main() -> None: # noqa: D103
|
|
26
26
|
|
27
27
|
# Additionnal remote plugin config
|
28
28
|
remote.plugin.check_user_code_on_disarm = False # Check user code in user.conf file
|
29
|
-
remote.plugin.log_mqtt_mesages =
|
29
|
+
remote.plugin.log_mqtt_mesages = True # Enable for MQTT debug purposes
|
30
30
|
remote.plugin.auto_discover_pki = True
|
31
31
|
|
32
32
|
# Configure remote plugin
|
@@ -52,6 +52,12 @@ async def main() -> None: # noqa: D103
|
|
52
52
|
|
53
53
|
LOGGER.debug("Qolsys Panel Ready for operation")
|
54
54
|
|
55
|
+
#await asyncio.sleep(5)
|
56
|
+
|
57
|
+
#await remote.plugin.stop_operation()
|
58
|
+
|
59
|
+
LOGGER.debug("Qolsys Panel - Stopped")
|
60
|
+
|
55
61
|
# Change Z-Wave dimmer
|
56
62
|
# node_id: z-wane device id
|
57
63
|
# level: 0-99, -1 to switch from off to previous on dimmer level
|
@@ -64,25 +70,26 @@ async def main() -> None: # noqa: D103
|
|
64
70
|
# user_code="1111")
|
65
71
|
|
66
72
|
# ARM_STAY
|
67
|
-
await asyncio.sleep(3)
|
68
|
-
await remote.plugin.command_arm(partition_id="0",
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
+
#await asyncio.sleep(3)
|
74
|
+
#await remote.plugin.command_arm(partition_id="0",
|
75
|
+
# arming_type="ARM-STAY",
|
76
|
+
# user_code="1111",
|
77
|
+
# exit_sounds=False,
|
78
|
+
# instant_arm=True)
|
73
79
|
|
74
|
-
# DISARM
|
75
|
-
await asyncio.sleep(3)
|
76
|
-
await remote.plugin.command_disarm(partition_id="0",
|
77
|
-
user_code="1111")
|
78
80
|
|
79
81
|
# ARM_AWAY
|
80
|
-
#
|
81
|
-
#
|
82
|
-
# arming_type=
|
83
|
-
# user_code=
|
84
|
-
# exit_sounds=
|
85
|
-
# instant_arm=
|
82
|
+
#await asyncio.sleep(3)
|
83
|
+
#await remote.plugin.command_arm(partition_id='0',
|
84
|
+
# arming_type="ARM-STAY",
|
85
|
+
# user_code="1111",
|
86
|
+
# exit_sounds=False,
|
87
|
+
# instant_arm=True)
|
88
|
+
|
89
|
+
# DISARM
|
90
|
+
#await asyncio.sleep(10)
|
91
|
+
#await remote.plugin.command_disarm(partition_id="0", user_code="1111", silent_disarming=True)
|
92
|
+
|
86
93
|
|
87
94
|
# Use an asyncio.Event to keep the program running efficiently
|
88
95
|
stop_event = asyncio.Event()
|
@@ -39,8 +39,8 @@ class QolsysPartition(QolsysObservable):
|
|
39
39
|
|
40
40
|
# Other
|
41
41
|
self._command_exit_sounds = True
|
42
|
-
self._command_silent_disarming = False
|
43
42
|
self._command_arm_stay_instant = True
|
43
|
+
self._command_arm_stay_silent_disarming = False
|
44
44
|
|
45
45
|
@property
|
46
46
|
def id(self) -> int:
|
@@ -83,12 +83,8 @@ class QolsysPartition(QolsysObservable):
|
|
83
83
|
return self._command_arm_stay_instant
|
84
84
|
|
85
85
|
@property
|
86
|
-
def
|
87
|
-
return self.
|
88
|
-
|
89
|
-
@command_silent_disarming.setter
|
90
|
-
def command_silent_disarming(self, value: bool) -> None:
|
91
|
-
self._command_silent_disarming = value
|
86
|
+
def command_arm_stay_silent_disarming(self) -> bool:
|
87
|
+
return self._command_arm_stay_silent_disarming
|
92
88
|
|
93
89
|
@system_status.setter
|
94
90
|
def system_status(self, new_value: PartitionSystemStatus) -> None:
|
@@ -188,6 +184,12 @@ class QolsysPartition(QolsysObservable):
|
|
188
184
|
LOGGER.debug("Partition%s (%s) - arm_stay_instant: %s", self._id, self._name, value)
|
189
185
|
self.notify()
|
190
186
|
|
187
|
+
@command_arm_stay_silent_disarming.setter
|
188
|
+
def command_arm_stay_silent_disarming(self, value: bool) -> None:
|
189
|
+
self._command_arm_stay_silent_disarming = value
|
190
|
+
LOGGER.debug("Partition%s (%s) - arm_stay_silent_disarming: %s", self._id, self._name, value)
|
191
|
+
self.notify()
|
192
|
+
|
191
193
|
def update_partition(self, data: dict) -> None:
|
192
194
|
# Check if we are updating same partition_id
|
193
195
|
partition_id_update = data.get("partition_id", "")
|
@@ -34,6 +34,7 @@ class QolsysPluginRemote(QolsysPlugin):
|
|
34
34
|
|
35
35
|
# Plugin
|
36
36
|
self.certificate_exchange_server = None
|
37
|
+
self._check_user_code_on_arm = False
|
37
38
|
self._check_user_code_on_disarm = True
|
38
39
|
self._log_mqtt_messages = False
|
39
40
|
self._task_manager = QolsysTaskManager()
|
@@ -62,6 +63,14 @@ class QolsysPluginRemote(QolsysPlugin):
|
|
62
63
|
def check_user_code_on_disarm(self, check_user_code_on_disarm: bool) -> None:
|
63
64
|
self._check_user_code_on_disarm = check_user_code_on_disarm
|
64
65
|
|
66
|
+
@property
|
67
|
+
def check_user_code_on_arm(self) -> bool:
|
68
|
+
return self._check_user_code_on_arm
|
69
|
+
|
70
|
+
@check_user_code_on_arm.setter
|
71
|
+
def check_user_code_on_arm(self, check_user_code_on_arm: bool) -> None:
|
72
|
+
self._check_user_code_on_arm = check_user_code_on_arm
|
73
|
+
|
65
74
|
@property
|
66
75
|
def auto_discover_pki(self) -> bool:
|
67
76
|
return self._auto_discover_pki
|
@@ -903,7 +912,7 @@ class QolsysPluginRemote(QolsysPlugin):
|
|
903
912
|
LOGGER.debug("MQTT: arm command error - Unknow Partition")
|
904
913
|
return False
|
905
914
|
|
906
|
-
if self.panel.SECURE_ARMING == "true":
|
915
|
+
if self.panel.SECURE_ARMING == "true" and self.check_user_code_on_arm:
|
907
916
|
# Do local user code verification to arm if secure arming is enabled
|
908
917
|
user_id = self.panel.check_user(user_code)
|
909
918
|
if user_id == -1:
|