qolsys-controller 0.0.8__tar.gz → 0.0.11__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.
Files changed (71) hide show
  1. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/PKG-INFO +1 -1
  2. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/pyproject.toml +1 -1
  3. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table.py +16 -8
  4. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/plugin_remote.py +5 -5
  5. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/.github/workflows/build.yml +0 -0
  6. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/.github/workflows/publish.yml +0 -0
  7. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/.gitignore +0 -0
  8. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/Info_mqtt.md +0 -0
  9. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/LICENSE +0 -0
  10. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/README.md +0 -0
  11. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/bin/qolsys.py +0 -0
  12. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/example.py +0 -0
  13. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/info_pairing.md +0 -0
  14. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/info_qolsys.md +0 -0
  15. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/__init__.py +0 -0
  16. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/controller.py +0 -0
  17. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/db.py +0 -0
  18. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_alarmedsensor.py +0 -0
  19. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_automation.py +0 -0
  20. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_country_locale.py +0 -0
  21. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_dashboard_msgs.py +0 -0
  22. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_dimmerlight.py +0 -0
  23. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_doorlock.py +0 -0
  24. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_eu_event.py +0 -0
  25. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_heat_map.py +0 -0
  26. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_history.py +0 -0
  27. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_iqremotesettings.py +0 -0
  28. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_iqrouter_network_config.py +0 -0
  29. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_iqrouter_user_device.py +0 -0
  30. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_master_slave.py +0 -0
  31. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_partition.py +0 -0
  32. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_powerg_device.py +0 -0
  33. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_qolsyssettings.py +0 -0
  34. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_scene.py +0 -0
  35. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_sensor.py +0 -0
  36. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_smartsocket.py +0 -0
  37. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_state.py +0 -0
  38. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_tcc.py +0 -0
  39. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_thermostat.py +0 -0
  40. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_trouble_conditions.py +0 -0
  41. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_user.py +0 -0
  42. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_virtual_device.py +0 -0
  43. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_weather.py +0 -0
  44. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_zigbee_device.py +0 -0
  45. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_zwave_association_group.py +0 -0
  46. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_zwave_history.py +0 -0
  47. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_zwave_node.py +0 -0
  48. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/database/table_zwave_other.py +0 -0
  49. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/enum.py +0 -0
  50. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/errors.py +0 -0
  51. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/mdns.py +0 -0
  52. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/mqtt_command_queue.py +0 -0
  53. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/observable.py +0 -0
  54. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/panel.py +0 -0
  55. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/partition.py +0 -0
  56. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/pki.py +0 -0
  57. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/plugin.py +0 -0
  58. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/plugin_c4.py +0 -0
  59. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/settings.py +0 -0
  60. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/state.py +0 -0
  61. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/task_manager.py +0 -0
  62. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/utils_mqtt.py +0 -0
  63. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/zone.py +0 -0
  64. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/zwave_device.py +0 -0
  65. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/zwave_dimmer.py +0 -0
  66. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/zwave_garagedoor.py +0 -0
  67. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/zwave_generic.py +0 -0
  68. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/zwave_lock.py +0 -0
  69. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/zwave_outlet.py +0 -0
  70. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/qolsys_controller/zwave_thermostat.py +0 -0
  71. {qolsys_controller-0.0.8 → qolsys_controller-0.0.11}/requirements.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: qolsys-controller
3
- Version: 0.0.8
3
+ Version: 0.0.11
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.8"
3
+ version = "0.0.11"
4
4
  authors = [
5
5
  { name="Eric Hylands", email="" },
6
6
  ]
@@ -68,7 +68,12 @@ class QolsysTable:
68
68
 
69
69
  def update(self, selection: str, selection_argument: str, content_value: str) -> None:
70
70
  # selection: 'zone_id=?, parition_id=?'
71
+
72
+ # Firmware 4.4.1 is sending contentValues as string
71
73
  # selection_argument: '[3,1]'
74
+ # Firmware 4.6.1:
75
+ # selection_argument: ['cc:4b:73:86:5c:89']
76
+
72
77
  # "contentValues":{"partition_id":"0","sensorgroup":"safetymotion","sensorstatus":"Idle"}"
73
78
 
74
79
  # Panel is sending query parameter for db update in text string
@@ -80,8 +85,11 @@ class QolsysTable:
80
85
  db_value = ",".join([f"{key}='{value}'" for key, value in content_value.items()])
81
86
 
82
87
  # Selection Argument
83
- selection_argument = selection_argument.strip("[]")
84
- selection_argument = [item.strip() for item in selection_argument.split(",")]
88
+ # Panel send selection_argument as list in Firmware 4.6.1
89
+ if(type(selection_argument) is not list):
90
+ #Firmware 4.4.1, seletion_argument is sent as a string
91
+ selection_argument = selection_argument.strip("[]")
92
+ selection_argument = [item.strip() for item in selection_argument.split(",")]
85
93
 
86
94
  try:
87
95
  query = f"UPDATE {self.table} SET {db_value} WHERE {selection}"
@@ -108,12 +116,12 @@ class QolsysTable:
108
116
  # selection: 'zone_id=?, parition_id=?'
109
117
  # selection_argument: '[3,1]'
110
118
 
111
- selection_argument = selection_argument.strip("[]")
112
- selection_argument = [item.strip() for item in selection_argument.split(",")]
113
-
114
- # Replace '?' in selection string with selection_argument
115
- # for i in selection_argument:
116
- # selection = selection.replace("?",f"'{i}'",1)
119
+ # Selection Argument
120
+ # Panel send selection_argument as list in Firmware 4.6.1
121
+ if(type(selection_argument) is not list):
122
+ #Firmware 4.4.1, seletion_argument is sent as a string
123
+ selection_argument = selection_argument.strip("[]")
124
+ selection_argument = [item.strip() for item in selection_argument.split(",")]
117
125
 
118
126
  try:
119
127
  query = f"DELETE FROM {self.table} WHERE {selection}"
@@ -208,7 +208,6 @@ class QolsysPluginRemote(QolsysPlugin):
208
208
  self.panel.imei = response_connect.get("master_imei", "")
209
209
  self.panel.product_type = response_connect.get("primary_product_type", "")
210
210
 
211
- await self.command_pairing_request()
212
211
  await self.command_pingevent()
213
212
  await self.command_timesync()
214
213
  await self.command_pair_status_request()
@@ -491,11 +490,12 @@ class QolsysPluginRemote(QolsysPlugin):
491
490
 
492
491
  payload = {
493
492
  "eventName": eventName,
493
+ "pairing_request": True,
494
494
  "ipAddress": ipAddress,
495
495
  "macAddress": macAddress,
496
496
  "remoteClientID": remoteClientID,
497
497
  "softwareVersion": softwareVersion,
498
- "producType": producType,
498
+ "productType": producType,
499
499
  "bssid": bssid,
500
500
  "dhcpInfo": json.dumps(dhcpInfo),
501
501
  "lastUpdateChecksum": lastUpdateChecksum,
@@ -690,9 +690,9 @@ class QolsysPluginRemote(QolsysPlugin):
690
690
  pairing_request = True
691
691
  ipAddress = self.settings.plugin_ip
692
692
  macAddress = self.settings.random_mac
693
- remoteClientID = "QolsysController"
693
+ remoteClientID = self.settings.mqtt_remote_client_id
694
694
  softwareVersion = "4.4.1"
695
- producType = "tab07_rk68"
695
+ productType = "tab07_rk68"
696
696
  bssid = ""
697
697
  lastUpdateChecksum = "2132501716"
698
698
  dealerIconsCheckSum = ""
@@ -718,7 +718,7 @@ class QolsysPluginRemote(QolsysPlugin):
718
718
  "macAddress": macAddress,
719
719
  "remoteClientID": remoteClientID,
720
720
  "softwareVersion": softwareVersion,
721
- "producType": producType,
721
+ "producType": productType,
722
722
  "bssid": bssid,
723
723
  "dhcpInfo": json.dumps(dhcpInfo),
724
724
  "lastUpdateChecksum": lastUpdateChecksum,