qolsys-controller 0.0.38__tar.gz → 0.0.40__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.

Potentially problematic release.


This version of qolsys-controller might be problematic. Click here for more details.

Files changed (78) hide show
  1. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/PKG-INFO +1 -1
  2. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/pyproject.toml +1 -1
  3. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_doorlock.py +1 -0
  4. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_eu_event.py +11 -2
  5. qolsys_controller-0.0.40/qolsys_controller/database/table_powerg_device.py +47 -0
  6. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_sensor.py +1 -0
  7. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_user.py +1 -0
  8. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_zwave_node.py +1 -0
  9. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_zwave_other.py +14 -1
  10. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/enum.py +7 -4
  11. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/panel.py +13 -0
  12. qolsys_controller-0.0.38/qolsys_controller/database/table_powerg_device.py +0 -23
  13. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/.github/workflows/build.yml +0 -0
  14. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/.github/workflows/publish.yml +0 -0
  15. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/.gitignore +0 -0
  16. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/Info_mqtt.md +0 -0
  17. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/LICENSE +0 -0
  18. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/README.md +0 -0
  19. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/bin/qolsys.py +0 -0
  20. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/example.py +0 -0
  21. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/info_pairing.md +0 -0
  22. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/info_qolsys.md +0 -0
  23. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/__init__.py +0 -0
  24. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/controller.py +0 -0
  25. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/db.py +0 -0
  26. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table.py +0 -0
  27. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_alarmedsensor.py +0 -0
  28. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_automation.py +0 -0
  29. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_country_locale.py +0 -0
  30. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_dashboard_msgs.py +0 -0
  31. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_dimmerlight.py +0 -0
  32. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_heat_map.py +0 -0
  33. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_history.py +0 -0
  34. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_iqremotesettings.py +0 -0
  35. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_iqrouter_network_config.py +0 -0
  36. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_iqrouter_user_device.py +0 -0
  37. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_master_slave.py +0 -0
  38. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_nest_device.py +0 -0
  39. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_output_rules.py +0 -0
  40. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_partition.py +0 -0
  41. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_pgm_outputs.py +0 -0
  42. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_qolsyssettings.py +0 -0
  43. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_scene.py +0 -0
  44. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_shades.py +0 -0
  45. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_smartsocket.py +0 -0
  46. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_state.py +0 -0
  47. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_tcc.py +0 -0
  48. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_thermostat.py +0 -0
  49. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_trouble_conditions.py +0 -0
  50. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_virtual_device.py +0 -0
  51. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_weather.py +0 -0
  52. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_zigbee_device.py +0 -0
  53. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_zwave_association_group.py +0 -0
  54. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/database/table_zwave_history.py +0 -0
  55. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/enum_zwave.py +0 -0
  56. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/errors.py +0 -0
  57. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/mdns.py +0 -0
  58. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/mqtt_command_queue.py +0 -0
  59. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/observable.py +0 -0
  60. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/partition.py +0 -0
  61. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/pki.py +0 -0
  62. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/plugin.py +0 -0
  63. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/plugin_c4.py +0 -0
  64. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/plugin_remote.py +0 -0
  65. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/scene.py +0 -0
  66. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/settings.py +0 -0
  67. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/state.py +0 -0
  68. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/task_manager.py +0 -0
  69. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/utils_mqtt.py +0 -0
  70. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/zone.py +0 -0
  71. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/zwave_device.py +0 -0
  72. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/zwave_dimmer.py +0 -0
  73. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/zwave_garagedoor.py +0 -0
  74. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/zwave_generic.py +0 -0
  75. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/zwave_lock.py +0 -0
  76. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/zwave_outlet.py +0 -0
  77. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/qolsys_controller/zwave_thermostat.py +0 -0
  78. {qolsys_controller-0.0.38 → qolsys_controller-0.0.40}/requirements.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: qolsys-controller
3
- Version: 0.0.38
3
+ Version: 0.0.40
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
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "qolsys-controller"
3
- version = "0.0.38"
3
+ version = "0.0.40"
4
4
  authors = [
5
5
  { name="Eric Hylands", email="" },
6
6
  ]
@@ -17,6 +17,7 @@ class QolsysTableDoorLock(QolsysTable):
17
17
 
18
18
  self._columns = [
19
19
  "_id",
20
+ "capabilities",
20
21
  "version",
21
22
  "opr",
22
23
  "partition_id",
@@ -13,12 +13,21 @@ class QolsysTableEuEvent(QolsysTable):
13
13
  self._uri = "content://com.qolsys.qolsysprovider.EUEventContentProvider/eu_event"
14
14
  self._table = "eu_event"
15
15
  self._abort_on_error = False
16
- self._implemented = False
16
+ self._implemented = True
17
17
 
18
18
 
19
19
  self._columns = [
20
20
  "_id",
21
+ "version",
22
+ "opr",
23
+ "partition_id",
24
+ "history_id",
25
+ "device_id",
26
+ "device",
27
+ "events",
28
+ "time",
29
+ "ack",
30
+ "type",
21
31
  ]
22
32
 
23
33
  self._create_table()
24
-
@@ -0,0 +1,47 @@
1
+ import logging # noqa: INP001
2
+ import sqlite3
3
+
4
+ from .table import QolsysTable
5
+
6
+ LOGGER = logging.getLogger(__name__)
7
+
8
+
9
+ class QolsysTablePowerGDevice(QolsysTable):
10
+
11
+ def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
12
+ super().__init__(db, cursor)
13
+ self._uri = "content://com.qolsys.qolsysprovider.PowerGDeviceContentProvider/powerg_device"
14
+ self._table = "powerg_device"
15
+ self._abort_on_error = False
16
+ self._implemented = False
17
+
18
+
19
+ self._columns = [
20
+ "_id",
21
+ "avg_link_quality",
22
+ "battery_voltage",
23
+ "capabilities",
24
+ "dealer_code",
25
+ "extras",
26
+ "firmware_version",
27
+ "led",
28
+ "light",
29
+ "link_quality",
30
+ "link_status",
31
+ "longID",
32
+ "manufacturing_id",
33
+ "notification_period",
34
+ "opr",
35
+ "parent_node",
36
+ "partition_id",
37
+ "radio_id",
38
+ "radio_version",
39
+ "shortID",
40
+ "status_data",
41
+ "supported_type",
42
+ "temperature",
43
+ "version",
44
+ "writeable_capabilities",
45
+ ]
46
+
47
+ self._create_table()
@@ -62,6 +62,7 @@ class QolsysTableSensor(QolsysTable):
62
62
  "latestdBm",
63
63
  "averagedBm",
64
64
  "serial_number",
65
+ "secondary_panel_mac_address",
65
66
  "extras",
66
67
  "allowspeaker",
67
68
  ]
@@ -39,6 +39,7 @@ class QolsysTableUser(QolsysTable):
39
39
  "start_date",
40
40
  "tag_flag",
41
41
  "check_in_time",
42
+ "user_feature1",
42
43
  ]
43
44
 
44
45
  self._create_table()
@@ -57,6 +57,7 @@ class QolsysTableZwaveNode(QolsysTable):
57
57
  "last_rediscover_time",
58
58
  "neighbour_info",
59
59
  "last_node_test_time",
60
+ "notification_capabilities",
60
61
  "endpoint",
61
62
  "endpoint_details",
62
63
  "device_wakeup_time",
@@ -13,10 +13,23 @@ class QolsysTableZwaveOther(QolsysTable):
13
13
  self._uri = "content://com.qolsys.qolsysprovider.ZwaveOtherDeviceContentProvider/zwave_other"
14
14
  self._table = "zwave_other"
15
15
  self._abort_on_error = False
16
- self._implemented = False
16
+ self._implemented = True
17
17
 
18
18
  self._columns = [
19
19
  "_id",
20
+ "created_date",
21
+ "device_name",
22
+ "device_params_1",
23
+ "device_params_2",
24
+ "endpoint",
25
+ "last_updated_date",
26
+ "node_id",
27
+ "node_type",
28
+ "opr",
29
+ "paired_status",
30
+ "partition_id",
31
+ "status",
32
+ "version",
20
33
  ]
21
34
 
22
35
  self._create_table()
@@ -47,6 +47,7 @@ class ZoneStatus(StrEnum):
47
47
 
48
48
  class ZoneSensorType(StrEnum):
49
49
  DOOR_WINDOW = "Door_Window"
50
+ DOORBELL = "Doorbell"
50
51
  MOTION = "Motion"
51
52
  GLASS_BREAK = "GlassBreak"
52
53
  KEY_FOB = "KeyFob"
@@ -62,7 +63,6 @@ class ZoneSensorType(StrEnum):
62
63
  SHOCK = "Shock"
63
64
  FREEZE = "Freeze"
64
65
  TILT = "Tilt"
65
- DOORBELL = "Doorbell"
66
66
  SMOKE_M = "Smoke_M"
67
67
  # DOOR_WINDOW_M = "" #TBD
68
68
  # OCCUPANCY = "" #TBD
@@ -73,22 +73,26 @@ class ZoneSensorType(StrEnum):
73
73
  BLUETOOTH = "Bluetooth"
74
74
  TAKEOVER_MODULE = "TakeoverModule"
75
75
  TRANSLATOR = "Translator"
76
+ TAMPER = "Tamper Sensor"
76
77
 
77
78
 
78
79
  class ZoneSensorGroup(StrEnum):
80
+ CO = "co"
79
81
  FIXED_INTRUSION = "fixedintrusion"
80
- MOBILE_INTRUSION = "mobileintrusion"
81
82
  FIXED_SILENT = "fixedsilentkey"
83
+ MOBILE_INTRUSION = "mobileintrusion"
82
84
  MOBILE_SILENT = "mobilesilentkey"
83
85
  FIXED_AUXILIARY = "fixedmedical"
84
86
  FIXED_SILENT_AUXILIARY = "fixedsilentmedical"
87
+ LOCAL_SAFETY_SENSOR = "localsafety"
85
88
  MOBILE_AUXILIARY = "mobilemedical"
86
89
  MOBILE_SILENT_AUXILIARY = "mobilesilentmedical"
87
90
  SAFETY_MOTION = "safetymotion"
88
91
  GLASS_BREAK = "glassbreak"
89
92
  GLASS_BREAK_AWAY_ONLY = "glassbreakawayonly"
90
93
  SMOKE_HEAT = "smoke_heat"
91
- CO = "co"
94
+ TAMPER_ZONE = "tamperzone"
95
+ SHOCK = "shock"
92
96
 
93
97
 
94
98
  # ENTRY_EXIT_NORMAL_DELAY = "" #TBD
@@ -96,7 +100,6 @@ class ZoneSensorGroup(StrEnum):
96
100
  # INSTANT_PERIMETER_DW = "" #TBD
97
101
  # INSTRANT_INTERIOR_DOOR = "" #TBD
98
102
  # AWAY_INSTANT_FOLLOWER_DELAY = "" #TBD
99
- # LOCAL_SAFETY_SENSOR = "" #TBD
100
103
  # REPORTING_SAFETY_SENSOR = "" #TBD
101
104
  # DELAYED_REPORTING_SAFETY_SENSOR = "" #TBD
102
105
  # AWAY_INSTANT_MOTION = "" #TBD
@@ -516,6 +516,12 @@ class QolsysPanel(QolsysObservable):
516
516
  self.db.table_trouble_conditions.update(selection,selection_argument,content_values)
517
517
  # No action needed
518
518
 
519
+ # Update EU_EVENT:
520
+ case self.db.table_eu_event:
521
+ self.db.table_eu_event.update(selection,selection_argument,content_values)
522
+ # No action needed
523
+
524
+
519
525
 
520
526
  case _:
521
527
  LOGGER.debug("iq2meid updating unknow uri:%s", uri)
@@ -592,6 +598,9 @@ class QolsysPanel(QolsysObservable):
592
598
  self.db.table_dashboard_msgs.delete(selection, selection_argument)
593
599
  # No action needed
594
600
 
601
+ case self.db.table_eu_event:
602
+ self.db.table_eu_event.delete(selection,selection_argument)
603
+
595
604
  case _:
596
605
  LOGGER.debug("iq2meid deleting unknown uri:%s", uri)
597
606
  LOGGER.debug(data)
@@ -716,6 +725,10 @@ class QolsysPanel(QolsysObservable):
716
725
  self.db.table_dashboard_msgs.insert(data=content_values)
717
726
  # No action needed
718
727
 
728
+ # EU_EVENT
729
+ case self.db.table_eu_event:
730
+ self.db.table_eu_event.insert(data=content_values)
731
+
719
732
  case _:
720
733
  LOGGER.debug("iq2meid inserting unknow uri:%s", uri)
721
734
  LOGGER.debug(data)
@@ -1,23 +0,0 @@
1
- import logging # noqa: INP001
2
- import sqlite3
3
-
4
- from .table import QolsysTable
5
-
6
- LOGGER = logging.getLogger(__name__)
7
-
8
-
9
- class QolsysTablePowerGDevice(QolsysTable):
10
-
11
- def __init__(self, db: sqlite3.Connection, cursor: sqlite3.Cursor) -> None:
12
- super().__init__(db, cursor)
13
- self._uri = "content://com.qolsys.qolsysprovider.PowerGDeviceContentProvider/powerg_device"
14
- self._table = "powerg_device"
15
- self._abort_on_error = False
16
- self._implemented = False
17
-
18
-
19
- self._columns = [
20
- "_id",
21
- ]
22
-
23
- self._create_table()