conson-xp 1.46.0__py3-none-any.whl → 1.48.0__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.
Files changed (179) hide show
  1. {conson_xp-1.46.0.dist-info → conson_xp-1.48.0.dist-info}/METADATA +1 -1
  2. conson_xp-1.48.0.dist-info/RECORD +210 -0
  3. xp/__init__.py +3 -2
  4. xp/cli/commands/conbus/conbus.py +1 -1
  5. xp/cli/commands/conbus/conbus_actiontable_commands.py +33 -19
  6. xp/cli/commands/conbus/conbus_autoreport_commands.py +8 -4
  7. xp/cli/commands/conbus/conbus_blink_commands.py +20 -10
  8. xp/cli/commands/conbus/conbus_config_commands.py +2 -1
  9. xp/cli/commands/conbus/conbus_custom_commands.py +4 -2
  10. xp/cli/commands/conbus/conbus_datapoint_commands.py +10 -5
  11. xp/cli/commands/conbus/conbus_discover_commands.py +8 -4
  12. xp/cli/commands/conbus/conbus_event_commands.py +8 -4
  13. xp/cli/commands/conbus/conbus_export_commands.py +8 -4
  14. xp/cli/commands/conbus/conbus_lightlevel_commands.py +16 -8
  15. xp/cli/commands/conbus/conbus_linknumber_commands.py +8 -4
  16. xp/cli/commands/conbus/conbus_modulenumber_commands.py +8 -4
  17. xp/cli/commands/conbus/conbus_msactiontable_commands.py +78 -40
  18. xp/cli/commands/conbus/conbus_output_commands.py +16 -8
  19. xp/cli/commands/conbus/conbus_raw_commands.py +6 -3
  20. xp/cli/commands/conbus/conbus_receive_commands.py +6 -3
  21. xp/cli/commands/conbus/conbus_scan_commands.py +6 -3
  22. xp/cli/commands/file_commands.py +6 -3
  23. xp/cli/commands/homekit/homekit.py +4 -2
  24. xp/cli/commands/homekit/homekit_start_commands.py +2 -1
  25. xp/cli/commands/module_commands.py +8 -4
  26. xp/cli/commands/reverse_proxy_commands.py +8 -4
  27. xp/cli/commands/server/server_commands.py +6 -3
  28. xp/cli/commands/telegram/telegram_blink_commands.py +4 -2
  29. xp/cli/commands/telegram/telegram_checksum_commands.py +4 -2
  30. xp/cli/commands/telegram/telegram_discover_commands.py +2 -1
  31. xp/cli/commands/telegram/telegram_linknumber_commands.py +4 -2
  32. xp/cli/commands/telegram/telegram_parse_commands.py +4 -2
  33. xp/cli/commands/telegram/telegram_version_commands.py +2 -1
  34. xp/cli/commands/term/term_commands.py +4 -2
  35. xp/cli/main.py +2 -1
  36. xp/cli/utils/click_tree.py +6 -3
  37. xp/cli/utils/datapoint_type_choice.py +4 -2
  38. xp/cli/utils/decorators.py +42 -21
  39. xp/cli/utils/error_handlers.py +16 -8
  40. xp/cli/utils/formatters.py +22 -11
  41. xp/cli/utils/module_type_choice.py +4 -2
  42. xp/cli/utils/serial_number_type.py +4 -2
  43. xp/cli/utils/system_function_choice.py +4 -2
  44. xp/cli/utils/xp_module_type.py +4 -2
  45. xp/models/actiontable/actiontable.py +8 -8
  46. xp/models/actiontable/actiontable_type.py +20 -0
  47. xp/models/actiontable/msactiontable_xp20.py +8 -4
  48. xp/models/actiontable/msactiontable_xp24.py +12 -6
  49. xp/models/actiontable/msactiontable_xp33.py +20 -10
  50. xp/models/conbus/conbus.py +8 -4
  51. xp/models/conbus/conbus_autoreport.py +4 -2
  52. xp/models/conbus/conbus_blink.py +4 -2
  53. xp/models/conbus/conbus_client_config.py +6 -3
  54. xp/models/conbus/conbus_connection_status.py +4 -2
  55. xp/models/conbus/conbus_custom.py +4 -2
  56. xp/models/conbus/conbus_datapoint.py +4 -2
  57. xp/models/conbus/conbus_discover.py +6 -3
  58. xp/models/conbus/conbus_event_list.py +4 -2
  59. xp/models/conbus/conbus_event_raw.py +4 -2
  60. xp/models/conbus/conbus_export.py +2 -1
  61. xp/models/conbus/conbus_lightlevel.py +4 -2
  62. xp/models/conbus/conbus_linknumber.py +4 -2
  63. xp/models/conbus/conbus_logger_config.py +8 -4
  64. xp/models/conbus/conbus_output.py +4 -2
  65. xp/models/conbus/conbus_raw.py +4 -2
  66. xp/models/conbus/conbus_receive.py +4 -2
  67. xp/models/conbus/conbus_writeconfig.py +4 -2
  68. xp/models/config/conson_module_config.py +8 -4
  69. xp/models/homekit/homekit_accessory.py +4 -2
  70. xp/models/homekit/homekit_config.py +12 -6
  71. xp/models/log_entry.py +16 -8
  72. xp/models/protocol/conbus_protocol.py +36 -18
  73. xp/models/response.py +12 -8
  74. xp/models/telegram/action_type.py +4 -2
  75. xp/models/telegram/datapoint_type.py +4 -2
  76. xp/models/telegram/event_telegram.py +14 -7
  77. xp/models/telegram/event_type.py +2 -1
  78. xp/models/telegram/input_action_type.py +2 -1
  79. xp/models/telegram/input_type.py +2 -1
  80. xp/models/telegram/module_type.py +24 -12
  81. xp/models/telegram/module_type_code.py +2 -1
  82. xp/models/telegram/output_telegram.py +16 -10
  83. xp/models/telegram/reply_telegram.py +24 -13
  84. xp/models/telegram/system_function.py +6 -3
  85. xp/models/telegram/system_telegram.py +10 -6
  86. xp/models/telegram/telegram.py +2 -1
  87. xp/models/telegram/telegram_type.py +2 -1
  88. xp/models/telegram/timeparam_type.py +2 -1
  89. xp/models/term/connection_state.py +4 -2
  90. xp/models/term/module_state.py +2 -1
  91. xp/models/term/protocol_keys_config.py +6 -3
  92. xp/models/term/status_message.py +2 -1
  93. xp/models/term/telegram_display.py +2 -1
  94. xp/models/write_config_type.py +4 -2
  95. xp/services/actiontable/actiontable_serializer.py +34 -41
  96. xp/services/{conbus/actiontable/actiontable_download_state_machine.py → actiontable/download_state_machine.py} +13 -8
  97. xp/services/actiontable/msactiontable_xp20_serializer.py +73 -50
  98. xp/services/actiontable/msactiontable_xp24_serializer.py +73 -54
  99. xp/services/actiontable/msactiontable_xp33_serializer.py +44 -20
  100. xp/services/actiontable/serializer_protocol.py +76 -0
  101. xp/services/conbus/actiontable/actiontable_download_service.py +68 -31
  102. xp/services/conbus/actiontable/actiontable_list_service.py +17 -4
  103. xp/services/conbus/actiontable/actiontable_show_service.py +10 -6
  104. xp/services/conbus/actiontable/actiontable_upload_service.py +17 -9
  105. xp/services/conbus/conbus_blink_all_service.py +16 -8
  106. xp/services/conbus/conbus_blink_service.py +14 -7
  107. xp/services/conbus/conbus_custom_service.py +16 -8
  108. xp/services/conbus/conbus_datapoint_queryall_service.py +18 -9
  109. xp/services/conbus/conbus_datapoint_service.py +18 -9
  110. xp/services/conbus/conbus_discover_service.py +24 -13
  111. xp/services/conbus/conbus_event_list_service.py +11 -7
  112. xp/services/conbus/conbus_event_raw_service.py +18 -10
  113. xp/services/conbus/conbus_export_service.py +28 -14
  114. xp/services/conbus/conbus_output_service.py +18 -10
  115. xp/services/conbus/conbus_raw_service.py +16 -8
  116. xp/services/conbus/conbus_receive_service.py +18 -10
  117. xp/services/conbus/conbus_scan_service.py +18 -10
  118. xp/services/conbus/msactiontable/msactiontable_upload_service.py +18 -10
  119. xp/services/conbus/write_config_service.py +18 -9
  120. xp/services/homekit/homekit_cache_service.py +12 -6
  121. xp/services/homekit/homekit_conbus_service.py +12 -6
  122. xp/services/homekit/homekit_config_validator.py +34 -17
  123. xp/services/homekit/homekit_conson_validator.py +18 -9
  124. xp/services/homekit/homekit_dimminglight.py +14 -7
  125. xp/services/homekit/homekit_dimminglight_service.py +14 -7
  126. xp/services/homekit/homekit_hap_service.py +18 -9
  127. xp/services/homekit/homekit_lightbulb.py +10 -5
  128. xp/services/homekit/homekit_lightbulb_service.py +10 -5
  129. xp/services/homekit/homekit_module_service.py +8 -4
  130. xp/services/homekit/homekit_outlet.py +14 -7
  131. xp/services/homekit/homekit_outlet_service.py +12 -6
  132. xp/services/homekit/homekit_service.py +24 -12
  133. xp/services/log_file_service.py +16 -8
  134. xp/services/module_type_service.py +10 -5
  135. xp/services/protocol/conbus_event_protocol.py +51 -26
  136. xp/services/protocol/conbus_protocol.py +36 -19
  137. xp/services/protocol/protocol_factory.py +12 -6
  138. xp/services/protocol/telegram_protocol.py +12 -6
  139. xp/services/reverse_proxy_service.py +26 -14
  140. xp/services/server/base_server_service.py +42 -23
  141. xp/services/server/client_buffer_manager.py +12 -7
  142. xp/services/server/cp20_server_service.py +10 -7
  143. xp/services/server/device_service_factory.py +12 -8
  144. xp/services/server/server_service.py +18 -11
  145. xp/services/server/xp130_server_service.py +11 -8
  146. xp/services/server/xp20_server_service.py +16 -10
  147. xp/services/server/xp230_server_service.py +10 -7
  148. xp/services/server/xp24_server_service.py +22 -13
  149. xp/services/server/xp33_server_service.py +44 -25
  150. xp/services/telegram/telegram_blink_service.py +14 -8
  151. xp/services/telegram/telegram_checksum_service.py +12 -7
  152. xp/services/telegram/telegram_datapoint_service.py +14 -9
  153. xp/services/telegram/telegram_discover_service.py +28 -15
  154. xp/services/telegram/telegram_link_number_service.py +18 -10
  155. xp/services/telegram/telegram_output_service.py +24 -12
  156. xp/services/telegram/telegram_service.py +22 -11
  157. xp/services/telegram/telegram_version_service.py +14 -8
  158. xp/services/term/protocol_monitor_service.py +30 -16
  159. xp/services/term/state_monitor_service.py +39 -21
  160. xp/term/protocol.py +12 -6
  161. xp/term/state.py +12 -7
  162. xp/term/widgets/help_menu.py +6 -3
  163. xp/term/widgets/modules_list.py +20 -10
  164. xp/term/widgets/protocol_log.py +12 -6
  165. xp/term/widgets/status_footer.py +10 -5
  166. xp/utils/checksum.py +6 -3
  167. xp/utils/dependencies.py +25 -30
  168. xp/utils/event_helper.py +6 -4
  169. xp/utils/logging.py +6 -3
  170. xp/utils/serialization.py +30 -16
  171. xp/utils/state_machine.py +16 -9
  172. xp/utils/time_utils.py +6 -3
  173. conson_xp-1.46.0.dist-info/RECORD +0 -211
  174. xp/services/conbus/msactiontable/msactiontable_download_service.py +0 -275
  175. xp/services/conbus/msactiontable/msactiontable_list_service.py +0 -100
  176. xp/services/conbus/msactiontable/msactiontable_show_service.py +0 -89
  177. {conson_xp-1.46.0.dist-info → conson_xp-1.48.0.dist-info}/WHEEL +0 -0
  178. {conson_xp-1.46.0.dist-info → conson_xp-1.48.0.dist-info}/entry_points.txt +0 -0
  179. {conson_xp-1.46.0.dist-info → conson_xp-1.48.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: conson-xp
3
- Version: 1.46.0
3
+ Version: 1.48.0
4
4
  Summary: XP Protocol Communication Tools
5
5
  Author-Email: ldvchosal <ldvchosal@github.com>
6
6
  License: MIT License
@@ -0,0 +1,210 @@
1
+ conson_xp-1.48.0.dist-info/METADATA,sha256=ik_ZkQlc-4OEqECRAK5REKQjzTHB6QTWeXKrnmBZeyY,11403
2
+ conson_xp-1.48.0.dist-info/WHEEL,sha256=tsUv_t7BDeJeRHaSrczbGeuK-TtDpGsWi_JfpzD255I,90
3
+ conson_xp-1.48.0.dist-info/entry_points.txt,sha256=1OcdIcDM1hz3ljCXgybaPUh1IOFEwkaTgLIW9u9zGeg,50
4
+ conson_xp-1.48.0.dist-info/licenses/LICENSE,sha256=rxj6woMM-r3YCyGq_UHFtbh7kHTAJgrccH6O-33IDE4,1419
5
+ xp/__init__.py,sha256=4LPDDZ3llI4VJJDFvi6MAvoF53KlCIbPYPSRgPAec_I,182
6
+ xp/cli/__init__.py,sha256=QjnKB1KaI2aIyKlzrnvCwfbBuUj8HNgwNMvNJVQofbI,81
7
+ xp/cli/__main__.py,sha256=l2iKwMdat5rTGd3JWs-uGksnYYDDffp_Npz05QdKEeU,117
8
+ xp/cli/commands/__init__.py,sha256=G7A1KFRSV0CEeDTqr_khu-K9_sc01CTI2KSfkFcaBRM,4949
9
+ xp/cli/commands/conbus/__init__.py,sha256=HYaX2__XxwD3Xaw4CzflvL8CwoUa4yR6wOyH8wwyofM,535
10
+ xp/cli/commands/conbus/conbus.py,sha256=GpWq1QS3mKfQFG77nTED-_hsvcnXb3ZIrC6DhfyhzBE,3538
11
+ xp/cli/commands/conbus/conbus_actiontable_commands.py,sha256=9kLP-ISIDWXVUtELCjTAs0JIT3DNGcYGBRnZEo-tp3g,7743
12
+ xp/cli/commands/conbus/conbus_autoreport_commands.py,sha256=dO3rxgII_xZVhbkxlMqTJCarrUveQCs_7-qf4li0UkQ,3962
13
+ xp/cli/commands/conbus/conbus_blink_commands.py,sha256=1zLiXV8Nn4XSDI-z7F3f2RN2IO-yxeMkGQ1PCknAkWY,5398
14
+ xp/cli/commands/conbus/conbus_config_commands.py,sha256=jeZi7J973DrDCyP59Qrvk6tonduj97KnV4fq9zbei2k,721
15
+ xp/cli/commands/conbus/conbus_custom_commands.py,sha256=TqWo45yqEp_ezmKZ0tymQ0C4McVSDcGfbvYVikaZV_s,1749
16
+ xp/cli/commands/conbus/conbus_datapoint_commands.py,sha256=uYsvi37vl2od2XJB0semAF0sH3UrRWTt_qHnBmUBR-w,3788
17
+ xp/cli/commands/conbus/conbus_discover_commands.py,sha256=gSK5Y4lespNKFNgGtp7VkqStGe4fWxDNNfyPPuJiwXQ,1931
18
+ xp/cli/commands/conbus/conbus_event_commands.py,sha256=faaSGRNtJCttk-0VO5Z4m4Zz37aOsSgmbuzWbTOUZIQ,3103
19
+ xp/cli/commands/conbus/conbus_export_commands.py,sha256=-fA4vzQF3XsDvRD4BjbE7KRqZS-cIHlFjKE0NG70ToU,3018
20
+ xp/cli/commands/conbus/conbus_lightlevel_commands.py,sha256=WH4ZQHxSbquPlAqd0uRxq8VR-sO4_AnfseMqaoPoGoA,7092
21
+ xp/cli/commands/conbus/conbus_linknumber_commands.py,sha256=3bkik8nHXY89XfzeUnKWmvKA70r4qJJ79j8FfLL4sL0,3556
22
+ xp/cli/commands/conbus/conbus_modulenumber_commands.py,sha256=fOIO0f85iDJBfGnRCEN8zK6j4i43uuF_9YKQc_nQ39A,3628
23
+ xp/cli/commands/conbus/conbus_msactiontable_commands.py,sha256=cTH6reU7oyqlOah-0-MWI2aWDlSJ-hnSf_0_aWk97uI,10419
24
+ xp/cli/commands/conbus/conbus_output_commands.py,sha256=XMEMb5tM0ul7lwhwoo4QRgWprXZ31qswXBno8KCeFMo,5342
25
+ xp/cli/commands/conbus/conbus_raw_commands.py,sha256=o1dVZqiRw7J3_8Bge7DJucFyAqt7GNP-Azf-f3ir3SU,2019
26
+ xp/cli/commands/conbus/conbus_receive_commands.py,sha256=LdxoOUdM5atkC8fFlp-GK7HQ7oxTnjrSFDx-lQ3nme0,1925
27
+ xp/cli/commands/conbus/conbus_scan_commands.py,sha256=QuRT4Vx5TqervCOUsZ4wcxvy7Jwra4hl2-DIt8cDcoE,1828
28
+ xp/cli/commands/file_commands.py,sha256=dx6a4xNxuReXq7dOyL8ebn6lyifzDm0d0OsuDjyr_90,5547
29
+ xp/cli/commands/homekit/__init__.py,sha256=qqwY8ulxTx1S74Mzpb6EKjBLT6fWTNdf9PQ3HKuERKY,50
30
+ xp/cli/commands/homekit/homekit.py,sha256=BoX7BVbgz2fehahe4_jPgEpOSIzKg790-9ADjoSKsKY,3604
31
+ xp/cli/commands/homekit/homekit_start_commands.py,sha256=tfRRAFdTp74RsZ4alqYTvRpfSrSXyFKr5Zdc3prgbuQ,1125
32
+ xp/cli/commands/module_commands.py,sha256=KCbGkt6Zr1i4yrXanb-WXZ08PDChNkMk3Y5B5La8BaM,5406
33
+ xp/cli/commands/reverse_proxy_commands.py,sha256=GFgRoAXU0cf1QNFu3WYNcXdbMndGMaGHtHRkMwePTyc,5485
34
+ xp/cli/commands/server/__init__.py,sha256=iunDmcaax9U-SHymgGzUlPadGdZLFl9LlhXu2mnyb64,49
35
+ xp/cli/commands/server/server_commands.py,sha256=rExP1OiYTMGJt7IGd5nsQL4ny9Bm95fzPDteQRH3CBo,3892
36
+ xp/cli/commands/telegram/__init__.py,sha256=KPhwoU5uscHe3tFAxWXxgFV5OKi9bISBh_TSREnxBFQ,181
37
+ xp/cli/commands/telegram/telegram.py,sha256=6bF0RGZhWaa9vlkor5vNGvsOlj7J3YpwMowZLauUGHw,960
38
+ xp/cli/commands/telegram/telegram_blink_commands.py,sha256=1DG6esAuyerpQ0Df9LonjskE1c6UoskMbG4y7QGqxRY,2198
39
+ xp/cli/commands/telegram/telegram_checksum_commands.py,sha256=IkdHPTRS1vGVHzQvvLFtnGZR0aYk3aTGFN9uMUHdzU0,3363
40
+ xp/cli/commands/telegram/telegram_discover_commands.py,sha256=e_eEnMKuq9wRioi-apMjX0k3bDez-NStPoS21SdmVW4,1119
41
+ xp/cli/commands/telegram/telegram_linknumber_commands.py,sha256=fkSEvQXIKjdblIIviVYCAhTF32uGdl5Jq5jSsz_Ika0,2521
42
+ xp/cli/commands/telegram/telegram_parse_commands.py,sha256=xCDRRFgj41RtStvwROfi-EOXehJCj3FQ4VzuHthd7Pw,2242
43
+ xp/cli/commands/telegram/telegram_version_commands.py,sha256=hAMjSAa7zfMNfNFln63sKeNPcmW89bISkcVs6BgsqOg,1558
44
+ xp/cli/commands/term/__init__.py,sha256=1NNST_8YJfj5LCujQISwQflK6LyEn7mDmZpMpvI9d-o,116
45
+ xp/cli/commands/term/term.py,sha256=gjvsv2OE-F_KNWQrWi04fXQ5cGo0l8P-Ortbb5KTA-A,309
46
+ xp/cli/commands/term/term_commands.py,sha256=ypJo9GL0eNwllgJJux2agJkcco6k9HMM-5f3aTbiQ2c,1216
47
+ xp/cli/main.py,sha256=Wbtji5ddW3IEoAfecHrEPk8W_w1bGD20B-NqAWfI_F4,1968
48
+ xp/cli/utils/__init__.py,sha256=gTGIj60Uai0iE7sr9_TtEpl04fD7krtTzbbigXUsUVU,46
49
+ xp/cli/utils/click_tree.py,sha256=sr4l9RWTCnASkdvkJKnRRxWSQPlF1DbFdBNu9gL7Ekc,1693
50
+ xp/cli/utils/datapoint_type_choice.py,sha256=fGgwZAmY_jwBt4fc1LQfyqhvf-TBOUgL3ph9idIDvAI,1680
51
+ xp/cli/utils/decorators.py,sha256=e-PZC4_e1iqsWzgSdD_bu41YmbCLyrGhMYYK0XLTPI8,10318
52
+ xp/cli/utils/error_handlers.py,sha256=aT928z0eAo708S_mYejQgvN8-MDF6wrEZtN51fTWB70,6653
53
+ xp/cli/utils/formatters.py,sha256=SN_kUkL4M7csay8eftnxoIPS_VvQDlqZueARNElyZZs,9875
54
+ xp/cli/utils/module_type_choice.py,sha256=Hs0VFrssKWWGqfqBtSJPP7DDCzLyv-BfyeNIPC1WxyU,1672
55
+ xp/cli/utils/serial_number_type.py,sha256=-6MlAAPbpqaGx1Ds3vPPT3PU9hYJG4_C2SmytXV3VyI,1480
56
+ xp/cli/utils/system_function_choice.py,sha256=3YZrTtBHCw_f6KqqT41wJUiiPBVLAQufyPnrMkesdd0,1637
57
+ xp/cli/utils/xp_module_type.py,sha256=rCafAi8k0BNRqtQryoai2WW4zr51lCEY-VRS7asW7VA,1485
58
+ xp/models/__init__.py,sha256=lROqr559DGd8WpJJUtfPT95VERCwMZHpBDEc96QSxQ0,1312
59
+ xp/models/actiontable/__init__.py,sha256=6kVq1rTOlpc24sZxGGVWkY48tqR42YWHLQHqakWqlPc,43
60
+ xp/models/actiontable/actiontable.py,sha256=IAV3KhA5B4jNOHFvVQmhJQV3vbX7EOug2UNAJuTslvk,1258
61
+ xp/models/actiontable/actiontable_type.py,sha256=wfJXnXMz9IeU4RIM21BfXqAzJJ9I1Ak7cEPyJ8c6j94,610
62
+ xp/models/actiontable/msactiontable_xp20.py,sha256=E2JQpZzWuAb_ZdFApzx80tqfF1qFjiO4zp-PtrRBYeQ,5034
63
+ xp/models/actiontable/msactiontable_xp24.py,sha256=WNtUmJVizyUs0RmG9EQW21tgiUB9ofqVQxrzEVpOjdk,9423
64
+ xp/models/actiontable/msactiontable_xp33.py,sha256=nM4v7jICY3woXV50ji02rBbMxAu6CNjydoh9QNAMsF4,11859
65
+ xp/models/conbus/__init__.py,sha256=VIusMWQdBtlwDgj7oSj06wQkklihTp4oWFShvP_JUgA,35
66
+ xp/models/conbus/conbus.py,sha256=-otqoa_dCDpgEdeAdV66AnSSaXbfPfyHrmV3zpvxGSA,2717
67
+ xp/models/conbus/conbus_autoreport.py,sha256=oTgOstjl_PDASL2n4fXVT1vvcX2nPzve_cBDtwq-wHA,2303
68
+ xp/models/conbus/conbus_blink.py,sha256=DKupiA0-7fh_Dx3DRuKEkS6cEyqM7tq_eMXqKG7Awl4,2925
69
+ xp/models/conbus/conbus_client_config.py,sha256=HL5yDUkINWK56tr2KQhnnNGqBKQ_Y7jrRMpqxqhv06Y,1504
70
+ xp/models/conbus/conbus_connection_status.py,sha256=bpIZSGGM47MIDxHxO26bMvDHT1W83rxmcyWgJbmL1lM,1111
71
+ xp/models/conbus/conbus_custom.py,sha256=AoVMT-JYej_zIdZcZC251Ww0JNmAtQobCif2H5kUf00,1979
72
+ xp/models/conbus/conbus_datapoint.py,sha256=4vxQxT8FMKZK7VTyJjXbIe7PlqJcO2iz04gjkn2BwSM,3410
73
+ xp/models/conbus/conbus_discover.py,sha256=4_SFPLIWzkNQvgME-5_GXvZ5JAb9FA3jmzqHPeIPkQ8,2257
74
+ xp/models/conbus/conbus_event_list.py,sha256=CzAXX8Uq_JZamnVuYoa8qoUJ-w0Qt0uJgqXy5JnTJhk,972
75
+ xp/models/conbus/conbus_event_raw.py,sha256=G2sEjXWMKmObuwbs0gZShrx7oOsE39IfhSuF2-VBmBQ,1581
76
+ xp/models/conbus/conbus_export.py,sha256=G7QRnrJlwcM49l9O8BcjRPkiYQuLOOcSQB68FVdUKF0,1283
77
+ xp/models/conbus/conbus_lightlevel.py,sha256=OvbvN9KW6peXD7uR2MOz-QCSOE6mOyO5DqtH94PAUPk,1709
78
+ xp/models/conbus/conbus_linknumber.py,sha256=QdkkX2vg60QbFk5Iz_x2smltBO2z4ChmgqzWyGrMSJM,1829
79
+ xp/models/conbus/conbus_logger_config.py,sha256=zySpboiym88okZLvQxCaRKP1Poc_7lQS60DaFwzF29o,3356
80
+ xp/models/conbus/conbus_output.py,sha256=ongE6hJQVM3XBzFtUBY5USDSeI_fxNSn7x7XOP-P4fI,1967
81
+ xp/models/conbus/conbus_raw.py,sha256=XqIO-k839-Nd6pRpFF41zLjYrZUkotMB8-69HFxIIik,1474
82
+ xp/models/conbus/conbus_receive.py,sha256=yPmQVsVsOc5BSfY4U4unwGeTtZdFF1GE5T-B_taqXiA,1336
83
+ xp/models/conbus/conbus_writeconfig.py,sha256=SFl6qsRsnfUGC-jQUSZomtQI8XqjOMSAZQXPeCz3Hxo,2150
84
+ xp/models/config/__init__.py,sha256=gEZnX9eE3DjFtLtF32riEjJQLypqQRbyPauBI4Cowbs,36
85
+ xp/models/config/conson_module_config.py,sha256=t1G0LnNNMnjs3ahhz4-Z_5SlEv2FCrcRq13OmvZ2pvA,3009
86
+ xp/models/homekit/__init__.py,sha256=5HDSOClCu0ArK3IICn3_LDMMLBAzLjBxUUSF73bxSSk,34
87
+ xp/models/homekit/homekit_accessory.py,sha256=ANjDWlFxeNTstl7lKdmf6vMOC0wc005vpiD6awRcptA,1052
88
+ xp/models/homekit/homekit_config.py,sha256=OMq0eayAJ6NRr8PXANvQzgEYGW9RN_ycyEmnTlTlHrQ,2938
89
+ xp/models/log_entry.py,sha256=tAiNwouCP2d4jKiHJY9a-2iAi8LWTpG-TZsOPDIstlA,4423
90
+ xp/models/protocol/__init__.py,sha256=TJ_CJKchA-xgQiv5vCo_ndBBZjrcaTmjT74bR0T-5Cw,38
91
+ xp/models/protocol/conbus_protocol.py,sha256=TB7L2d_UausI6SXoNGCyi2nSn8cSuQA19pTA5evEsrI,9229
92
+ xp/models/response.py,sha256=z0376hEVNh1Z_R9CtzmKNbJBzCo_Aun2ImI9dTtrVe4,1254
93
+ xp/models/telegram/__init__.py,sha256=-_exhjlRLbBNuPxHC4tLA2SAgf8M0yHJMeyEoQIk9PI,53
94
+ xp/models/telegram/action_type.py,sha256=ys3yInmD97bKotB-nlPdfo8ZPXKaYxzG0CxV9wHK-zo,797
95
+ xp/models/telegram/datapoint_type.py,sha256=9Q9GEqgxMA9GUoqh8HHFUXMyy8VBr9-gVbkRRlOTM8c,4081
96
+ xp/models/telegram/event_telegram.py,sha256=x4ncEe7aGhSroIWk-Dtt3QDEDD5yB1Xs1eMlsEm37OI,4748
97
+ xp/models/telegram/event_type.py,sha256=DB2qM-PjW0j_SRPK8_WRyR-ij6DuEaT4QCgp4Qw5ytw,338
98
+ xp/models/telegram/input_action_type.py,sha256=3aJE4OocjOg2PKuRrFh77MQ7_dp_EJHBgZcRyUkt990,1857
99
+ xp/models/telegram/input_type.py,sha256=3sHeiGXNoiEMGdUJNWUCYTYy_NuyGmjsnyLT5KaIaVA,496
100
+ xp/models/telegram/module_type.py,sha256=EcEJiNrT09gD6dj_brspcMzfdHyUThvsxs9DmgBozdA,5315
101
+ xp/models/telegram/module_type_code.py,sha256=gkvdRP-mXOkE3hhaYlD_pBeOlKdYgTj1MEbPyo912y4,8182
102
+ xp/models/telegram/output_telegram.py,sha256=6hTpnnJ-ntEVfnTgCRiYfsqiHyvTi1e3TFJexF0cAao,3515
103
+ xp/models/telegram/reply_telegram.py,sha256=hzOlZphXtLvA0sy92sa-8b_gUU78z69obrPFfTdvdRM,10463
104
+ xp/models/telegram/system_function.py,sha256=thk54iwhFD-R6j5CLvcjZndsulIQSVpN59rttmaxuTk,4817
105
+ xp/models/telegram/system_telegram.py,sha256=064AlFi_WghoYlVDUtIIbvwtZyUEZj7_auKEogYub3U,3242
106
+ xp/models/telegram/telegram.py,sha256=-kNloBlwMJ5w1-FAMSLzBPnyOGUNEBG3SG2d0eTi2PY,847
107
+ xp/models/telegram/telegram_type.py,sha256=IjGEosbs7IDqYT7ktn-FcKS-kAJ4eXW-KJGkkoAGysw,428
108
+ xp/models/telegram/timeparam_type.py,sha256=z5EQ32SQjDi7zKshtkvDzqaMfPMUeXCWKEGI5VgvBvU,1142
109
+ xp/models/term/__init__.py,sha256=aFvzGZHr_dI6USb8MJuYLSLMvxi_ZWMVtokHDt8428s,263
110
+ xp/models/term/connection_state.py,sha256=oYcst01uH35kO541jGuXMqvJ2iduiHYryUsMK0d89pQ,1807
111
+ xp/models/term/module_state.py,sha256=i7u8y_B5ScMRULQb_kMSD_wwKzbrLHlkECsTgNS46PQ,939
112
+ xp/models/term/protocol_keys_config.py,sha256=tSlkxEwgQuVRYLTaUNd569osQsNCdb9ED4InNgX9rKo,1223
113
+ xp/models/term/status_message.py,sha256=W7jjxPg6Tg0NE3svPwF11N3vTBOQ4kxfcFPFBvZ-t4I,403
114
+ xp/models/term/telegram_display.py,sha256=tXWeEtoIBSnScjha3ZHV9UPICmtBF2bkoLVIjQfmTfs,538
115
+ xp/models/write_config_type.py,sha256=IqgguaHgKvz4Qt-WaSVu3J2VaXgtS-br9Yp8q_xkIkY,895
116
+ xp/services/__init__.py,sha256=W9YZyrkh7vm--ZHhAXNQiOYQs5yhhmUHXP5I0Lf1XBg,782
117
+ xp/services/actiontable/__init__.py,sha256=z6js4EuJ6xKHaseTEhuEvKo1tr9K1XyQiruReJtBiPY,26
118
+ xp/services/actiontable/actiontable_serializer.py,sha256=AZpqxfq8-o7FGGtseW52MS6z647x3Ucc1RjR3GLUb20,8335
119
+ xp/services/actiontable/download_state_machine.py,sha256=lqNYN9LGGK2KiVUsmvyRfryWRB4-NOfsp7-9GrFubK4,9978
120
+ xp/services/actiontable/msactiontable_serializer.py,sha256=RRL6TZ1gpSQw81kAiw2BV3jTqm4fCJC0pWIcO26Cmos,174
121
+ xp/services/actiontable/msactiontable_xp20_serializer.py,sha256=5K6FxgbV2F4brumNaOH6M8qPyCxIfaqCGOPIYDmFdnk,6998
122
+ xp/services/actiontable/msactiontable_xp24_serializer.py,sha256=NBsRViz-J1Zx7DtO9flRRsiZtOsB5rpQVplJ-I43stg,5192
123
+ xp/services/actiontable/msactiontable_xp33_serializer.py,sha256=9JzG9dOrfamu8UjsWztveX5n4o29Rm3ki81Ot0a38KQ,9490
124
+ xp/services/actiontable/serializer_protocol.py,sha256=PMsZbPwPQD1MJYo_KpZSgpnVQCtXFXSfzXFpCiA6Xi8,2002
125
+ xp/services/conbus/__init__.py,sha256=Hi35sMKu9o6LpYoi2tQDaQoMb8M5sOt_-LUTxxaCU_0,28
126
+ xp/services/conbus/actiontable/__init__.py,sha256=oD6vRk_Ye-eZ9s_hldAgtRJFu4mfAnODqpkJUGHHszk,40
127
+ xp/services/conbus/actiontable/actiontable_download_service.py,sha256=ZTQCC1D9TLmyDu3b5GAO4VxUVGSr6HuqZI9fxHB1qW8,14992
128
+ xp/services/conbus/actiontable/actiontable_list_service.py,sha256=oTDSpBkp-MJeaF5bhRnwkSy3na55xqQ4e2ykJzbMCUo,3236
129
+ xp/services/conbus/actiontable/actiontable_show_service.py,sha256=WISY2VsmSlceGa5_9lpFO-gs5TnTjv6YidQksUjCapk,3058
130
+ xp/services/conbus/actiontable/actiontable_upload_service.py,sha256=4crX4OZeTLYC_9ZjhV1Cqqc-WOhhBlXDmEHToLS6N9g,9772
131
+ xp/services/conbus/conbus_blink_all_service.py,sha256=toDIZDXBGBYnEishcdnJrVzkmfPi7g5nCDXuyA_wFCs,8536
132
+ xp/services/conbus/conbus_blink_service.py,sha256=ggLuzeq_UsgCoxRxg2bsNs9p8Lw_shjsj-niRzb5dKk,7953
133
+ xp/services/conbus/conbus_custom_service.py,sha256=9OIRC2CG_rN96vbv_EZXf7BrX_abhqi5MZx0Se8fEhU,7826
134
+ xp/services/conbus/conbus_datapoint_queryall_service.py,sha256=YCeieYgS73HAplAB1NpyEFary8L3yJXm2z9XOuUOLkI,8468
135
+ xp/services/conbus/conbus_datapoint_service.py,sha256=WBQC42-6xuPWhMKKRtHtRzwEmVfYFt7cmS5uS-iv3P0,8095
136
+ xp/services/conbus/conbus_discover_service.py,sha256=NYHPBD16196EwcorPSwFqIwcUWcfN6moXctXlIoO9ik,12831
137
+ xp/services/conbus/conbus_event_list_service.py,sha256=-jl3WHpyidbh-h4NMK2gERqu48mTNFD6rpPo2EyGxeg,3641
138
+ xp/services/conbus/conbus_event_raw_service.py,sha256=viXuEXw165-RytdqC76wQShJLD7Yd0rtURxWZZ8hyKA,7060
139
+ xp/services/conbus/conbus_export_service.py,sha256=coUbwdx3eG7ILhvUvlY3dkxdzZUksjnZHBGPvDDrTdk,17420
140
+ xp/services/conbus/conbus_output_service.py,sha256=e57bRkLgPnJuB8hkllNh0kgGkjPt9IK75tuBxd_bOkE,9361
141
+ xp/services/conbus/conbus_raw_service.py,sha256=OQuV521VOQraf2PGF2B9868vh7sDgmfc19YebrkZnyw,5844
142
+ xp/services/conbus/conbus_receive_service.py,sha256=TFf3W65brGsy6QZICpIs0Xy9bgqyL1vgQuhS_eHuIZs,5416
143
+ xp/services/conbus/conbus_scan_service.py,sha256=_Ka0OUDNYhDgZIR49Q0P5GTxJq6RcAAX2DVqEDdtb5U,6888
144
+ xp/services/conbus/msactiontable/__init__.py,sha256=rDYzumPSfcTjDADHxjE7bXQoeWtZTDGaYzFTYdVl_9g,42
145
+ xp/services/conbus/msactiontable/msactiontable_upload_service.py,sha256=LB9pv0VOUDmyTHKUcY894fmBAqINO7qpM8mW1E3s8aU,12423
146
+ xp/services/conbus/write_config_service.py,sha256=BCfmLNPRDpwSwRMRYJvx2FXA8IZsdgmyeTXIYvmb4ys,9004
147
+ xp/services/homekit/__init__.py,sha256=xAMKmln_AmEFdOOJGKWYi96seRlKDQpKx3-hm7XbdIo,36
148
+ xp/services/homekit/homekit_cache_service.py,sha256=z1TB6icEqd1paoilVTewuFL0lXVCQbvrOJkJvvQECJY,11060
149
+ xp/services/homekit/homekit_conbus_service.py,sha256=XPKv7Mit1rn7XLaQZcKmlMMUlyj-o0J2z8XBH3NaEIM,3390
150
+ xp/services/homekit/homekit_config_validator.py,sha256=bLDOY8dbXvqvrDLtn4PijZA38qNmQWcQFWIY6hjLrl0,10875
151
+ xp/services/homekit/homekit_conson_validator.py,sha256=tmUxBzytX9FbUWTR1XdbAi_qb_whAdGPSaml98Czszg,3858
152
+ xp/services/homekit/homekit_dimminglight.py,sha256=EzfGhy3zZkbFPfN72Dh_eSb5mJQOpxGi6ZwnyEOSHxU,5819
153
+ xp/services/homekit/homekit_dimminglight_service.py,sha256=0Ve6cXtY7v7JCv7gibOBWjPfCU7KK4Lk6GjIu9_GhyE,5282
154
+ xp/services/homekit/homekit_hap_service.py,sha256=yrlw9I4G3JsaeBqsVLyURlAk9gd6CAKIUSoheOYIioI,12596
155
+ xp/services/homekit/homekit_lightbulb.py,sha256=rN9rNxHZDFl5lom8bvhi3jC3rGgrELhrRWTMg4l6ziQ,3692
156
+ xp/services/homekit/homekit_lightbulb_service.py,sha256=fKK5wvV73On1p0zBH8k30iirHYW0mBRiHEaTEf4Jcnc,2785
157
+ xp/services/homekit/homekit_module_service.py,sha256=3zUwm-Dp-8V0nCU-ssVMZmi_kht_Y_ulVgqRSHoLooY,1548
158
+ xp/services/homekit/homekit_outlet.py,sha256=gh9YFYt4DgOkba4nWKRM40EH878254DErSOK3eneZYk,5258
159
+ xp/services/homekit/homekit_outlet_service.py,sha256=VVeuUas5HROaMwfbc_FO-gVp_mXR8YYBQJeTWh2SSJQ,3840
160
+ xp/services/homekit/homekit_service.py,sha256=mmO9dHd1PAkOLkM7wwbpC0iBnULN4XZxeHUnCMKOL7g,14127
161
+ xp/services/log_file_service.py,sha256=y775InPlpG8Z_uitHt7yrgRG-3vlIuCfdJjiZzPc_MA,10578
162
+ xp/services/module_type_service.py,sha256=ga4WO7dmJEaDKrXPmrJ-72n4UaEZonead23lHBkFN1E,7505
163
+ xp/services/protocol/__init__.py,sha256=qRufBmqRKGzpuzZ5bxBbmwf510TT00Ke8s5HcWGnqRY,818
164
+ xp/services/protocol/conbus_event_protocol.py,sha256=0EHC8YefW2EcYBAeRm3TX1N0L32KQv5Ed3utTe3JrTQ,19567
165
+ xp/services/protocol/conbus_protocol.py,sha256=3RY1dva3XHLyvcBqwV4nuenaVpRnT-ppPz45EXNGCIs,10417
166
+ xp/services/protocol/protocol_factory.py,sha256=gWXQtOdgtOyn0Tu_aydYFd_cTdU-jtsKVuMl-ru133s,2512
167
+ xp/services/protocol/telegram_protocol.py,sha256=hyEMJUUhgQe_2R8CDio8xT5tpLtgoXS8W0aDd7wN48E,9538
168
+ xp/services/reverse_proxy_service.py,sha256=Xuxo2ajjmTXLg5yd6gRGKHpFPX4-6kpOUg10doZB8vw,15161
169
+ xp/services/server/__init__.py,sha256=QEcCj-jK0goAukJCe15TKYFQfSAzWsduPT_wW0HxZU8,48
170
+ xp/services/server/base_server_service.py,sha256=Yu4sTOtp3a1yc3O3J7J-51i9FdFqG-VWBv9aNf0j-9k,12845
171
+ xp/services/server/client_buffer_manager.py,sha256=fblyRenl08YJl2MpOGUnBsQxOa8xmE-pnkoAEzpRLMc,2272
172
+ xp/services/server/cp20_server_service.py,sha256=BTgQlCVrxtstAF3IrmO-HsXhUsvumLF-UY5mxBmqMwc,2060
173
+ xp/services/server/device_service_factory.py,sha256=GMpwkhAFoWTQ5rq0pHCAwgLCzH2uIGm51RnTrYaJbC4,3768
174
+ xp/services/server/server_service.py,sha256=RKvDF3KZRRJoK_faVLlwVFT1u8ffGCPO4-xxm18AvD4,16357
175
+ xp/services/server/xp130_server_service.py,sha256=nxPN9nqqw78UCH_OzStTqeE31SQMBKAdf_CE5iG58s4,2210
176
+ xp/services/server/xp20_server_service.py,sha256=DyRDdP_J4WSQ9loEAWP_Wh3G2sMxhmAszC4sh-1y91Q,2974
177
+ xp/services/server/xp230_server_service.py,sha256=1uFUgGYDc1wpY_UagaiOcX4sKHb_5FShxXix0iUhOC0,1834
178
+ xp/services/server/xp24_server_service.py,sha256=QVW6LHrwyMDqLim4PX5TSC-xxE06J4VIt5f6BakLqLY,8667
179
+ xp/services/server/xp33_server_service.py,sha256=fkeU3uhTovy1opMTsQrnOP3pxvBIdcanaTh98phJ4ss,19845
180
+ xp/services/telegram/__init__.py,sha256=kv0JgMg13Fp18WgGQpalNRAWwiWbrz18X4kZAP9xpSQ,48
181
+ xp/services/telegram/telegram_blink_service.py,sha256=0pU6IxFTZEgKRM2DnZCBhDYw21h4YN8nHPx0Xr71wwk,4533
182
+ xp/services/telegram/telegram_checksum_service.py,sha256=ZY7zJMYOdeMomO6FEdTAjZC7C9_qoR7QZrNusAWxl2s,4766
183
+ xp/services/telegram/telegram_datapoint_service.py,sha256=krNE_f7v5q3OWLIB_myXV3MWWVhiHqXE7wixipBwftU,2796
184
+ xp/services/telegram/telegram_discover_service.py,sha256=COGdakE1ssi_ZR1RLGLb2PjUCeAD5WuUPv71KcGaPfs,9134
185
+ xp/services/telegram/telegram_link_number_service.py,sha256=HvEMtVKyP9ACAVFcm-EfEgrIqG2Jp0ZbRt3zh3OT7V0,6926
186
+ xp/services/telegram/telegram_output_service.py,sha256=9deqtcPndRqJ-3XQUWlJhXaVco6B8waVuP-UnsSNBmc,12054
187
+ xp/services/telegram/telegram_service.py,sha256=jPu0Xrh3IpvqPLyuQT5Vf8HHw00vBingONHdxf_9TkI,13315
188
+ xp/services/telegram/telegram_version_service.py,sha256=oXnZ_K7OQ7xD-GEj3zDYp52KlkqVuHpO4bf7gMlC_w4,10574
189
+ xp/services/term/__init__.py,sha256=BIeOK042bMR-0l6MA80wdW5VuHlpWOXtRER9IG5ilQA,245
190
+ xp/services/term/protocol_monitor_service.py,sha256=5YBI0Nu7B7gMhaTbUhL6k9LSRfnCIj6CwrCYHiMHavA,10067
191
+ xp/services/term/state_monitor_service.py,sha256=4CmeHf5k9mf67AleOB7byM7_g5WwbAOnmgxl6I2vBwg,17116
192
+ xp/term/__init__.py,sha256=Xg2DhBeI3xQJLfc7_BPWI1por-rUXemyer5OtOt9Cus,51
193
+ xp/term/protocol.py,sha256=6MX3mduLei-AgLGaIe8lfOSu4Hi0y3KGePFFM2ssstc,3475
194
+ xp/term/protocol.tcss,sha256=r_KfxrbpycGHLVXqZc6INBBcUJME0hLrAZkF1oqnab4,2126
195
+ xp/term/state.py,sha256=FBpYV_bWYJh9o17qcMx6sHgUARQS-uNOtUt6G7Vs1n8,3274
196
+ xp/term/state.tcss,sha256=Njp7fc16cCunLq7hi5RvXjPi4jSCGi5aPDnusb9dq1Y,1401
197
+ xp/term/widgets/__init__.py,sha256=ftWmN_fmjxy2E8Qfm-YSRmzKfgL0KTBCTpgvYWCPbUY,274
198
+ xp/term/widgets/help_menu.py,sha256=KLkdIXfhARLFNEs2lv1u0sYBz9LzOCcDLxbMGzc7e5Y,1812
199
+ xp/term/widgets/modules_list.py,sha256=qAG-n0nK0YdNE9v4C3-sHgxLvF1i1FR7v_GArdaoUQw,7831
200
+ xp/term/widgets/protocol_log.py,sha256=E68QmSMpOFrvrPTo_gOQVfyiDqY5c_y8fkNKnQw6Vwo,2650
201
+ xp/term/widgets/status_footer.py,sha256=YYAT0431p6jmrzzpVgaPhu7yGkRroWGv4e99t2XlkHI,3297
202
+ xp/utils/__init__.py,sha256=_avMF_UOkfR3tNeDIPqQ5odmbq5raKkaq1rZ9Cn1CJs,332
203
+ xp/utils/checksum.py,sha256=Px1S3dFGA-_plavBxrq3IqmprNlgtNDunE3whg6Otwg,1722
204
+ xp/utils/dependencies.py,sha256=b3BdBOiTuX7WU734MyZXDE854RDlJgJlQY6oBj2AABQ,25295
205
+ xp/utils/event_helper.py,sha256=zD0K3TPfGEThU9vUNlDtglTai3Cmm30727iwjDZy6Dk,1007
206
+ xp/utils/logging.py,sha256=wJ1d-yg97NiZUrt2F8iDMcmnHVwC-PErcI-7dpyiRDc,3777
207
+ xp/utils/serialization.py,sha256=TS1OwpTOemSvXsCGw3js4JkYYFEqkzrPe8V9QYQefdw,4684
208
+ xp/utils/state_machine.py,sha256=W9AY4ntRZnFeHAa5d43hm37j53uJPlqkRvWTPiBhJ_0,2464
209
+ xp/utils/time_utils.py,sha256=K17godWpL18VEypbTlvNOEDG6R3huYnf29yjkcnwRpU,3796
210
+ conson_xp-1.48.0.dist-info/RECORD,,
xp/__init__.py CHANGED
@@ -1,9 +1,10 @@
1
- """XP CLI tool for remote console bus operations.
1
+ """
2
+ XP CLI tool for remote console bus operations.
2
3
 
3
4
  conson-xp package.
4
5
  """
5
6
 
6
- __version__ = "1.46.0"
7
+ __version__ = "1.48.0"
7
8
  __manufacturer__ = "salchichon"
8
9
  __model__ = "xp.cli"
9
10
  __serial__ = "2025.09.23.000"
@@ -19,7 +19,7 @@ def conbus() -> None:
19
19
  help_options_color="green",
20
20
  )
21
21
  def conbus_blink() -> None:
22
- """Perform Conbus client operations for sending blink telegrams to remote servers."""
22
+ """Sending blink telegrams to remote servers."""
23
23
  pass
24
24
 
25
25
 
@@ -3,7 +3,6 @@
3
3
  import json
4
4
  from contextlib import suppress
5
5
  from pathlib import Path
6
- from typing import Any, Dict
7
6
 
8
7
  import click
9
8
  from click import Context
@@ -14,6 +13,7 @@ from xp.cli.utils.decorators import (
14
13
  )
15
14
  from xp.cli.utils.serial_number_type import SERIAL
16
15
  from xp.models.actiontable.actiontable import ActionTable
16
+ from xp.models.actiontable.actiontable_type import ActionTableType
17
17
  from xp.models.config.conson_module_config import (
18
18
  ConsonModuleConfig,
19
19
  ConsonModuleListConfig,
@@ -43,7 +43,8 @@ class ActionTableError(Exception):
43
43
  @click.pass_context
44
44
  @connection_command()
45
45
  def conbus_download_actiontable(ctx: Context, serial_number: str) -> None:
46
- """Download action table from XP module.
46
+ """
47
+ Download action table from XP module.
47
48
 
48
49
  Args:
49
50
  ctx: Click context object.
@@ -54,7 +55,8 @@ def conbus_download_actiontable(ctx: Context, serial_number: str) -> None:
54
55
  )
55
56
 
56
57
  def on_progress(progress: str) -> None:
57
- """Handle progress updates during action table download.
58
+ """
59
+ Handle progress updates during action table download.
58
60
 
59
61
  Args:
60
62
  progress: Progress message string.
@@ -63,20 +65,18 @@ def conbus_download_actiontable(ctx: Context, serial_number: str) -> None:
63
65
 
64
66
  def on_actiontable_received(
65
67
  _actiontable: ActionTable,
66
- actiontable_dict: Dict[str, Any],
67
68
  actiontable_short: list[str],
68
69
  ) -> None:
69
- """Handle successful completion of action table download.
70
+ """
71
+ Handle successful completion of action table download.
70
72
 
71
73
  Args:
72
74
  _actiontable: a list of ActionTableEntries.
73
- actiontable_dict: action table in a dictionary.
74
75
  actiontable_short: short representation of action table.
75
76
  """
76
77
  output = {
77
78
  "serial_number": serial_number,
78
79
  "actiontable_short": actiontable_short,
79
- "actiontable": actiontable_dict,
80
80
  }
81
81
  click.echo(json.dumps(output, indent=2, default=str))
82
82
 
@@ -85,7 +85,8 @@ def conbus_download_actiontable(ctx: Context, serial_number: str) -> None:
85
85
  service.stop_reactor()
86
86
 
87
87
  def on_error(error: str) -> None:
88
- """Handle errors during action table download.
88
+ """
89
+ Handle errors during action table download.
89
90
 
90
91
  Args:
91
92
  error: Error message string.
@@ -98,7 +99,10 @@ def conbus_download_actiontable(ctx: Context, serial_number: str) -> None:
98
99
  service.on_finish.connect(on_finish)
99
100
  service.on_actiontable_received.connect(on_actiontable_received)
100
101
  service.on_error.connect(on_error)
101
- service.configure(serial_number=serial_number)
102
+ service.configure(
103
+ serial_number=serial_number,
104
+ actiontable_type=ActionTableType.ACTIONTABLE,
105
+ )
102
106
  service.start_reactor()
103
107
 
104
108
 
@@ -107,7 +111,8 @@ def conbus_download_actiontable(ctx: Context, serial_number: str) -> None:
107
111
  @click.pass_context
108
112
  @connection_command()
109
113
  def conbus_upload_actiontable(ctx: Context, serial_number: str) -> None:
110
- """Upload action table from conson.yml to XP module.
114
+ """
115
+ Upload action table from conson.yml to XP module.
111
116
 
112
117
  Args:
113
118
  ctx: Click context object.
@@ -123,7 +128,8 @@ def conbus_upload_actiontable(ctx: Context, serial_number: str) -> None:
123
128
  entries_count = 0
124
129
 
125
130
  def progress_callback(progress: str) -> None:
126
- """Handle progress updates during action table upload.
131
+ """
132
+ Handle progress updates during action table upload.
127
133
 
128
134
  Args:
129
135
  progress: Progress message string.
@@ -131,7 +137,8 @@ def conbus_upload_actiontable(ctx: Context, serial_number: str) -> None:
131
137
  click.echo(progress, nl=False)
132
138
 
133
139
  def on_finish(success: bool) -> None:
134
- """Handle completion of action table upload.
140
+ """
141
+ Handle completion of action table upload.
135
142
 
136
143
  Args:
137
144
  success: True if upload succeeded.
@@ -143,7 +150,8 @@ def conbus_upload_actiontable(ctx: Context, serial_number: str) -> None:
143
150
  service.stop_reactor()
144
151
 
145
152
  def on_error(error: str) -> None:
146
- """Handle errors during action table upload.
153
+ """
154
+ Handle errors during action table upload.
147
155
 
148
156
  Args:
149
157
  error: Error message string.
@@ -174,7 +182,8 @@ def conbus_upload_actiontable(ctx: Context, serial_number: str) -> None:
174
182
  @conbus_actiontable.command("list", short_help="List modules with ActionTable")
175
183
  @click.pass_context
176
184
  def conbus_list_actiontable(ctx: Context) -> None:
177
- """List all modules with action table configurations from conson.yml.
185
+ """
186
+ List all modules with action table configurations from conson.yml.
178
187
 
179
188
  Args:
180
189
  ctx: Click context object.
@@ -184,7 +193,8 @@ def conbus_list_actiontable(ctx: Context) -> None:
184
193
  )
185
194
 
186
195
  def on_finish(module_list: dict) -> None:
187
- """Handle successful completion of action table list.
196
+ """
197
+ Handle successful completion of action table list.
188
198
 
189
199
  Args:
190
200
  module_list: Dictionary containing modules and total count.
@@ -192,7 +202,8 @@ def conbus_list_actiontable(ctx: Context) -> None:
192
202
  click.echo(json.dumps(module_list, indent=2, default=str))
193
203
 
194
204
  def on_error(error: str) -> None:
195
- """Handle errors during action table list.
205
+ """
206
+ Handle errors during action table list.
196
207
 
197
208
  Args:
198
209
  error: Error message string.
@@ -209,7 +220,8 @@ def conbus_list_actiontable(ctx: Context) -> None:
209
220
  @click.argument("serial_number", type=SERIAL)
210
221
  @click.pass_context
211
222
  def conbus_show_actiontable(ctx: Context, serial_number: str) -> None:
212
- """Show action table configuration for a specific module from conson.yml.
223
+ """
224
+ Show action table configuration for a specific module from conson.yml.
213
225
 
214
226
  Args:
215
227
  ctx: Click context object.
@@ -220,7 +232,8 @@ def conbus_show_actiontable(ctx: Context, serial_number: str) -> None:
220
232
  )
221
233
 
222
234
  def on_finish(module: ConsonModuleConfig) -> None:
223
- """Handle successful completion of action table show.
235
+ """
236
+ Handle successful completion of action table show.
224
237
 
225
238
  Args:
226
239
  module: Dictionary containing module configuration.
@@ -230,7 +243,8 @@ def conbus_show_actiontable(ctx: Context, serial_number: str) -> None:
230
243
  click.echo(json.dumps(module_data, indent=2, default=str))
231
244
 
232
245
  def error_callback(error: str) -> None:
233
- """Handle errors during action table show.
246
+ """
247
+ Handle errors during action table show.
234
248
 
235
249
  Args:
236
250
  error: Error message string.
@@ -23,7 +23,8 @@ from xp.services.telegram.telegram_datapoint_service import TelegramDatapointSer
23
23
  @connection_command()
24
24
  @click.pass_context
25
25
  def get_autoreport_command(ctx: Context, serial_number: str) -> None:
26
- r"""Get the current auto report status for a specific module.
26
+ r"""
27
+ Get the current auto report status for a specific module.
27
28
 
28
29
  Args:
29
30
  ctx: Click context object.
@@ -42,7 +43,8 @@ def get_autoreport_command(ctx: Context, serial_number: str) -> None:
42
43
  )
43
44
 
44
45
  def on_finish(service_response: ConbusDatapointResponse) -> None:
45
- """Handle successful completion of auto report status retrieval.
46
+ """
47
+ Handle successful completion of auto report status retrieval.
46
48
 
47
49
  Args:
48
50
  service_response: Auto report response object.
@@ -70,7 +72,8 @@ def get_autoreport_command(ctx: Context, serial_number: str) -> None:
70
72
  @connection_command()
71
73
  @click.pass_context
72
74
  def set_autoreport_command(ctx: Context, serial_number: str, status: str) -> None:
73
- r"""Set the auto report status for a specific module.
75
+ r"""
76
+ Set the auto report status for a specific module.
74
77
 
75
78
  Args:
76
79
  ctx: Click context object.
@@ -90,7 +93,8 @@ def set_autoreport_command(ctx: Context, serial_number: str, status: str) -> Non
90
93
  )
91
94
 
92
95
  def on_finish(response: "ConbusWriteConfigResponse") -> None:
93
- """Handle successful completion of light level on command.
96
+ """
97
+ Handle successful completion of light level on command.
94
98
 
95
99
  Args:
96
100
  response: Light level response object.
@@ -23,7 +23,8 @@ from xp.services.telegram.telegram_blink_service import BlinkError
23
23
  @connection_command()
24
24
  @handle_service_errors(BlinkError)
25
25
  def send_blink_on_telegram(ctx: Context, serial_number: str) -> None:
26
- r"""Send blink command to start blinking module LED.
26
+ r"""
27
+ Send blink command to start blinking module LED.
27
28
 
28
29
  Args:
29
30
  ctx: Click context object.
@@ -35,7 +36,8 @@ def send_blink_on_telegram(ctx: Context, serial_number: str) -> None:
35
36
  """
36
37
 
37
38
  def on_finish(service_response: ConbusBlinkResponse) -> None:
38
- """Handle successful completion of blink on command.
39
+ """
40
+ Handle successful completion of blink on command.
39
41
 
40
42
  Args:
41
43
  service_response: Blink response object.
@@ -58,7 +60,8 @@ def send_blink_on_telegram(ctx: Context, serial_number: str) -> None:
58
60
  @connection_command()
59
61
  @handle_service_errors(BlinkError)
60
62
  def send_blink_off_telegram(ctx: Context, serial_number: str) -> None:
61
- r"""Send blink command to stop blinking module LED.
63
+ r"""
64
+ Send blink command to stop blinking module LED.
62
65
 
63
66
  Args:
64
67
  ctx: Click context object.
@@ -70,7 +73,8 @@ def send_blink_off_telegram(ctx: Context, serial_number: str) -> None:
70
73
  """
71
74
 
72
75
  def on_finish(service_response: ConbusBlinkResponse) -> None:
73
- """Handle successful completion of blink off command.
76
+ """
77
+ Handle successful completion of blink off command.
74
78
 
75
79
  Args:
76
80
  service_response: Blink response object.
@@ -98,7 +102,8 @@ def conbus_blink_all() -> None:
98
102
  @connection_command()
99
103
  @handle_service_errors(BlinkError)
100
104
  def blink_all_off(ctx: Context) -> None:
101
- r"""Turn off blinking for all discovered devices.
105
+ r"""
106
+ Turn off blinking for all discovered devices.
102
107
 
103
108
  Args:
104
109
  ctx: Click context object.
@@ -109,7 +114,8 @@ def blink_all_off(ctx: Context) -> None:
109
114
  """
110
115
 
111
116
  def on_finish(discovered_devices: ConbusBlinkResponse) -> None:
112
- """Handle successful completion of blink all off command.
117
+ """
118
+ Handle successful completion of blink all off command.
113
119
 
114
120
  Args:
115
121
  discovered_devices: Blink response with all devices.
@@ -118,7 +124,8 @@ def blink_all_off(ctx: Context) -> None:
118
124
  service.stop_reactor()
119
125
 
120
126
  def progress(message: str) -> None:
121
- """Handle progress updates during blink all off operation.
127
+ """
128
+ Handle progress updates during blink all off operation.
122
129
 
123
130
  Args:
124
131
  message: Progress message string.
@@ -140,7 +147,8 @@ def blink_all_off(ctx: Context) -> None:
140
147
  @connection_command()
141
148
  @handle_service_errors(BlinkError)
142
149
  def blink_all_on(ctx: Context) -> None:
143
- r"""Turn on blinking for all discovered devices.
150
+ r"""
151
+ Turn on blinking for all discovered devices.
144
152
 
145
153
  Args:
146
154
  ctx: Click context object.
@@ -151,7 +159,8 @@ def blink_all_on(ctx: Context) -> None:
151
159
  """
152
160
 
153
161
  def on_finish(discovered_devices: ConbusBlinkResponse) -> None:
154
- """Handle successful completion of blink all on command.
162
+ """
163
+ Handle successful completion of blink all on command.
155
164
 
156
165
  Args:
157
166
  discovered_devices: Blink response with all devices.
@@ -160,7 +169,8 @@ def blink_all_on(ctx: Context) -> None:
160
169
  service.stop_reactor()
161
170
 
162
171
  def progress(message: str) -> None:
163
- """Handle progress updates during blink all on operation.
172
+ """
173
+ Handle progress updates during blink all on operation.
164
174
 
165
175
  Args:
166
176
  message: Progress message string.
@@ -14,7 +14,8 @@ from xp.models import ConbusClientConfig
14
14
  @click.pass_context
15
15
  @handle_service_errors(Exception)
16
16
  def show_config(ctx: Context) -> None:
17
- r"""Display current Conbus client configuration.
17
+ r"""
18
+ Display current Conbus client configuration.
18
19
 
19
20
  Args:
20
21
  ctx: Click context object.
@@ -23,7 +23,8 @@ from xp.services.conbus.conbus_custom_service import ConbusCustomService
23
23
  def send_custom_telegram(
24
24
  ctx: Context, serial_number: str, function_code: str, datapoint_code: str
25
25
  ) -> None:
26
- r"""Send custom telegram with specified function and data point codes.
26
+ r"""
27
+ Send custom telegram with specified function and data point codes.
27
28
 
28
29
  Args:
29
30
  ctx: Click context object.
@@ -41,7 +42,8 @@ def send_custom_telegram(
41
42
  )
42
43
 
43
44
  def on_finish(response: ConbusCustomResponse) -> None:
44
- """Handle successful completion of custom telegram.
45
+ """
46
+ Handle successful completion of custom telegram.
45
47
 
46
48
  Args:
47
49
  response: Custom response object.
@@ -30,7 +30,8 @@ from xp.services.conbus.conbus_datapoint_service import (
30
30
  @click.pass_context
31
31
  @connection_command()
32
32
  def query_datapoint(ctx: Context, serial_number: str, datapoint: DataPointType) -> None:
33
- r"""Query a specific datapoint from Conbus server.
33
+ r"""
34
+ Query a specific datapoint from Conbus server.
34
35
 
35
36
  Args:
36
37
  ctx: Click context object.
@@ -50,7 +51,8 @@ def query_datapoint(ctx: Context, serial_number: str, datapoint: DataPointType)
50
51
  )
51
52
 
52
53
  def on_finish(service_response: ConbusDatapointResponse) -> None:
53
- """Handle successful completion of datapoint query.
54
+ """
55
+ Handle successful completion of datapoint query.
54
56
 
55
57
  Args:
56
58
  service_response: Datapoint response object.
@@ -77,7 +79,8 @@ conbus_datapoint.add_command(query_datapoint)
77
79
  @click.pass_context
78
80
  @connection_command()
79
81
  def query_all_datapoints(ctx: Context, serial_number: str) -> None:
80
- r"""Query all datapoints from a specific module.
82
+ r"""
83
+ Query all datapoints from a specific module.
81
84
 
82
85
  Args:
83
86
  ctx: Click context object.
@@ -92,7 +95,8 @@ def query_all_datapoints(ctx: Context, serial_number: str) -> None:
92
95
  )
93
96
 
94
97
  def on_finish(service_response: ConbusDatapointResponse) -> None:
95
- """Handle successful completion of all datapoints query.
98
+ """
99
+ Handle successful completion of all datapoints query.
96
100
 
97
101
  Args:
98
102
  service_response: Datapoint response object with all datapoints.
@@ -101,7 +105,8 @@ def query_all_datapoints(ctx: Context, serial_number: str) -> None:
101
105
  service.stop_reactor()
102
106
 
103
107
  def on_progress(reply_telegram: ReplyTelegram) -> None:
104
- """Handle progress updates during all datapoints query.
108
+ """
109
+ Handle progress updates during all datapoints query.
105
110
 
106
111
  Args:
107
112
  reply_telegram: Reply telegram object with progress data.