conson-xp 1.2.0__py3-none-any.whl → 1.4.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 (62) hide show
  1. {conson_xp-1.2.0.dist-info → conson_xp-1.4.0.dist-info}/METADATA +1 -5
  2. {conson_xp-1.2.0.dist-info → conson_xp-1.4.0.dist-info}/RECORD +43 -60
  3. xp/__init__.py +1 -1
  4. xp/cli/commands/__init__.py +0 -2
  5. xp/cli/commands/conbus/conbus_actiontable_commands.py +5 -3
  6. xp/cli/commands/conbus/conbus_autoreport_commands.py +39 -21
  7. xp/cli/commands/conbus/conbus_blink_commands.py +8 -8
  8. xp/cli/commands/conbus/conbus_config_commands.py +3 -1
  9. xp/cli/commands/conbus/conbus_custom_commands.py +3 -1
  10. xp/cli/commands/conbus/conbus_datapoint_commands.py +4 -2
  11. xp/cli/commands/conbus/conbus_discover_commands.py +5 -3
  12. xp/cli/commands/conbus/conbus_lightlevel_commands.py +68 -32
  13. xp/cli/commands/conbus/conbus_linknumber_commands.py +32 -17
  14. xp/cli/commands/conbus/conbus_msactiontable_commands.py +11 -4
  15. xp/cli/commands/conbus/conbus_output_commands.py +6 -2
  16. xp/cli/commands/conbus/conbus_receive_commands.py +5 -3
  17. xp/cli/commands/file_commands.py +9 -3
  18. xp/cli/commands/homekit/homekit_start_commands.py +3 -1
  19. xp/cli/commands/module_commands.py +12 -4
  20. xp/cli/commands/reverse_proxy_commands.py +3 -1
  21. xp/cli/main.py +0 -2
  22. xp/models/conbus/conbus_datapoint.py +3 -0
  23. xp/models/conbus/conbus_discover.py +19 -3
  24. xp/models/conbus/conbus_writeconfig.py +60 -0
  25. xp/models/telegram/system_telegram.py +4 -4
  26. xp/services/conbus/conbus_datapoint_service.py +9 -6
  27. xp/services/conbus/conbus_discover_service.py +120 -2
  28. xp/services/conbus/conbus_scan_service.py +1 -1
  29. xp/services/conbus/{conbus_linknumber_set_service.py → write_config_service.py} +78 -66
  30. xp/services/protocol/telegram_protocol.py +4 -4
  31. xp/services/server/base_server_service.py +9 -4
  32. xp/services/server/cp20_server_service.py +2 -1
  33. xp/services/server/server_service.py +75 -4
  34. xp/services/server/xp130_server_service.py +2 -1
  35. xp/services/server/xp20_server_service.py +2 -1
  36. xp/services/server/xp230_server_service.py +2 -1
  37. xp/services/server/xp24_server_service.py +123 -50
  38. xp/services/server/xp33_server_service.py +150 -20
  39. xp/services/telegram/telegram_datapoint_service.py +70 -0
  40. xp/utils/dependencies.py +4 -46
  41. xp/api/__init__.py +0 -1
  42. xp/api/main.py +0 -125
  43. xp/api/models/__init__.py +0 -1
  44. xp/api/models/api.py +0 -31
  45. xp/api/models/discover.py +0 -31
  46. xp/api/routers/__init__.py +0 -17
  47. xp/api/routers/conbus.py +0 -5
  48. xp/api/routers/conbus_blink.py +0 -117
  49. xp/api/routers/conbus_custom.py +0 -71
  50. xp/api/routers/conbus_datapoint.py +0 -74
  51. xp/api/routers/conbus_output.py +0 -167
  52. xp/api/routers/errors.py +0 -38
  53. xp/cli/commands/api.py +0 -12
  54. xp/cli/commands/api_start_commands.py +0 -132
  55. xp/services/conbus/conbus_autoreport_get_service.py +0 -94
  56. xp/services/conbus/conbus_autoreport_set_service.py +0 -141
  57. xp/services/conbus/conbus_lightlevel_get_service.py +0 -109
  58. xp/services/conbus/conbus_lightlevel_set_service.py +0 -225
  59. xp/services/conbus/conbus_linknumber_get_service.py +0 -94
  60. {conson_xp-1.2.0.dist-info → conson_xp-1.4.0.dist-info}/WHEEL +0 -0
  61. {conson_xp-1.2.0.dist-info → conson_xp-1.4.0.dist-info}/entry_points.txt +0 -0
  62. {conson_xp-1.2.0.dist-info → conson_xp-1.4.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.2.0
3
+ Version: 1.4.0
4
4
  Summary: XP Protocol Communication Tools
5
5
  Author-Email: ldvchosal <ldvchosal@github.com>
6
6
  License: MIT License
@@ -272,10 +272,6 @@ src/xp/
272
272
 
273
273
  xp
274
274
 
275
- xp api
276
- xp api start
277
-
278
-
279
275
  xp conbus
280
276
 
281
277
  xp conbus actiontable
@@ -1,47 +1,33 @@
1
- conson_xp-1.2.0.dist-info/METADATA,sha256=JTKojoXqau2dvYetTThkWY_0RNIkEd6aYEyZvS_aF10,9296
2
- conson_xp-1.2.0.dist-info/WHEEL,sha256=9P2ygRxDrTJz3gsagc0Z96ukrxjr-LFBGOgv3AuKlCA,90
3
- conson_xp-1.2.0.dist-info/entry_points.txt,sha256=1OcdIcDM1hz3ljCXgybaPUh1IOFEwkaTgLIW9u9zGeg,50
4
- conson_xp-1.2.0.dist-info/licenses/LICENSE,sha256=rxj6woMM-r3YCyGq_UHFtbh7kHTAJgrccH6O-33IDE4,1419
5
- xp/__init__.py,sha256=4lneUikSaz2sNyKRi2wiB1O6JXvfPO_CZK-5rG6jq5g,180
6
- xp/api/__init__.py,sha256=fCWjkuTzDlyJ8hIpU_QEBNcah3BB2bqVSfZwmP4ee5k,51
7
- xp/api/main.py,sha256=Iih3u-T7eLRtQC0bUW6WH72k-kgfS8p85meXnJd9cC4,3738
8
- xp/api/models/__init__.py,sha256=Xl8j2qiHc-Vb8b1ZmNZaMj7RtMvk0G_2SOvMgQumYzs,54
9
- xp/api/models/api.py,sha256=nq70i1rhAntf7dUFAS4LrtEz4VNzP8Q-9AZD0tR7hTg,944
10
- xp/api/models/discover.py,sha256=uKRB8JaTf1nnlgnDPtpHKYOFfTTVkG8A2GQHvoCXSEU,903
11
- xp/api/routers/__init__.py,sha256=yVfLRQz6iw48vZF_i1cqTCrmy9gycmmmny6iG_1dM24,307
12
- xp/api/routers/conbus.py,sha256=OUlsiAQwH5Xk38ueywvWVhD7LoTfyuUoHnqGtOF4ZCU,134
13
- xp/api/routers/conbus_blink.py,sha256=sTAwYmF1Giw3ykoJT7BNzT0lr8eZ0e94_lGbQX2hqpw,3832
14
- xp/api/routers/conbus_custom.py,sha256=EcnqUhVOPKCprG3PkUQQYBUI2pspNZioTqAFgltT4_o,2466
15
- xp/api/routers/conbus_datapoint.py,sha256=v-czN-9e79kjZt0VsTUI2UNFwRwRE9VPHx9m1EMrTGA,2578
16
- xp/api/routers/conbus_output.py,sha256=hgkwi_74kNQZGT9XHYpq6IDREXL9z8Ckz1W84ZhIzOI,5862
17
- xp/api/routers/errors.py,sha256=jnZQ4fdLT6hb-PXwLphIuhpZtlBT8cViDG1q_IAmAEU,1316
1
+ conson_xp-1.4.0.dist-info/METADATA,sha256=gVe0dQdYUIfvh1zZ9TLnHgL1bMgCbwaBQDlbnMTGIig,9274
2
+ conson_xp-1.4.0.dist-info/WHEEL,sha256=9P2ygRxDrTJz3gsagc0Z96ukrxjr-LFBGOgv3AuKlCA,90
3
+ conson_xp-1.4.0.dist-info/entry_points.txt,sha256=1OcdIcDM1hz3ljCXgybaPUh1IOFEwkaTgLIW9u9zGeg,50
4
+ conson_xp-1.4.0.dist-info/licenses/LICENSE,sha256=rxj6woMM-r3YCyGq_UHFtbh7kHTAJgrccH6O-33IDE4,1419
5
+ xp/__init__.py,sha256=K0b80vyQTL1NHu42mglJvDuAouKQOPKpfKPus7iPCEg,180
18
6
  xp/cli/__init__.py,sha256=QjnKB1KaI2aIyKlzrnvCwfbBuUj8HNgwNMvNJVQofbI,81
19
7
  xp/cli/__main__.py,sha256=l2iKwMdat5rTGd3JWs-uGksnYYDDffp_Npz05QdKEeU,117
20
- xp/cli/commands/__init__.py,sha256=_Ia9P0gK7tCeiWbuU7p8RPgvBhQx1kFC6i3b1g1UuOo,4482
21
- xp/cli/commands/api.py,sha256=Q7IkrVRhGK8ya2aoY0R1UvifHqwUPCnQZtAvqEDne-w,293
22
- xp/cli/commands/api_start_commands.py,sha256=qs7UVFfIfgAldu-09gCRz3VAlQNApiQNLfueDXhDTvU,3449
8
+ xp/cli/commands/__init__.py,sha256=02CbZoKmNX-fn5etX4Hdgg2lUt1MsLFPYx2VkXZyFJ8,4394
23
9
  xp/cli/commands/conbus/__init__.py,sha256=gE3K5OEoXkkZX8UOc2v3nreQQzwkOQi7n0VZ-Z2juXA,495
24
10
  xp/cli/commands/conbus/conbus.py,sha256=OTebWu-V-_1tOq2nWExPLtDuAeqy7fB7ltUqzHfgcY8,2705
25
- xp/cli/commands/conbus/conbus_actiontable_commands.py,sha256=Jf7m0e38JCbdWD30UU_EsUVhWsm9WeGQzNvqmJttzl8,1954
26
- xp/cli/commands/conbus/conbus_autoreport_commands.py,sha256=pvSG2OF1Iiu1lCm2G0wOU8mPo4zlvqTR1YkfXWaz5Xs,2920
27
- xp/cli/commands/conbus/conbus_blink_commands.py,sha256=2Ke25uqhErgJOkOth4v91aIaxa9WadS2M30CY-tsf9k,4824
28
- xp/cli/commands/conbus/conbus_config_commands.py,sha256=JY2YdQFgMNreJBPNDv5WKsqxXTxKIc0yzNrhfqvdUro,680
29
- xp/cli/commands/conbus/conbus_custom_commands.py,sha256=4SJEIumv7AUwqpgSZg5PKbKJQ9SGozKok2cPBagCyXQ,1655
30
- xp/cli/commands/conbus/conbus_datapoint_commands.py,sha256=cOrfFczu0edvYoarkwlfZ5OuolY5n-unoQdUgytg420,3558
31
- xp/cli/commands/conbus/conbus_discover_commands.py,sha256=cvHHyJv5GH7v3flu1_73egiA2c343G5PBFlwwNNsFZg,1328
32
- xp/cli/commands/conbus/conbus_lightlevel_commands.py,sha256=dLfwb1P9spxj_KSrJHTzzzSbfyG549zgNW6j7UjzfuA,5378
33
- xp/cli/commands/conbus/conbus_linknumber_commands.py,sha256=q9QeQmerfZ4XhTLBW2icvE_dCB2jKYZrFLtKQpJciIM,2651
34
- xp/cli/commands/conbus/conbus_msactiontable_commands.py,sha256=kgShIbsVPkAj1EUYdvU7sePV3LZKLN-an-Z5XhOTsyI,2378
35
- xp/cli/commands/conbus/conbus_output_commands.py,sha256=Hse0IVojR7IYqJsnlqIaySqLqIfmVfS0SDsywBRaHeA,4945
11
+ xp/cli/commands/conbus/conbus_actiontable_commands.py,sha256=H73-iHpsYRiOMl1hDILl2TaBdH3_It770bBZVZUcLyc,1978
12
+ xp/cli/commands/conbus/conbus_autoreport_commands.py,sha256=oZgyUUFNsb4yf2WO81l2w1PrasNwdC__QwxNkJ2jCaU,3794
13
+ xp/cli/commands/conbus/conbus_blink_commands.py,sha256=UK-Ey4K0FvaPQ96U0gyMid236RlBmUhPNRes9y0SlkM,4848
14
+ xp/cli/commands/conbus/conbus_config_commands.py,sha256=BugIbgNX6_s4MySGvI6tWZkwguciajHUX2Xz8XBux7k,716
15
+ xp/cli/commands/conbus/conbus_custom_commands.py,sha256=lICT93ijMdhVRm8KjNMLo7kQ2BLlnOZvMPbR3SxSmZ4,1692
16
+ xp/cli/commands/conbus/conbus_datapoint_commands.py,sha256=r36OuTjREtbGKL-bskAGa0-WLw7x06td6woZn3GYJNA,3630
17
+ xp/cli/commands/conbus/conbus_discover_commands.py,sha256=Jt-OjARc-QXCr453bhKG0zXRqvOMVKZr328zNxSDulY,1373
18
+ xp/cli/commands/conbus/conbus_lightlevel_commands.py,sha256=FpCwogdxa7yFUjlrxM7e8Q2Ut32tKAHabngQQChvtJI,6763
19
+ xp/cli/commands/conbus/conbus_linknumber_commands.py,sha256=pn491Iy_LcwZ5XLtvNTWu8qG_Vdaaxr7le1tTuVK7Qw,3392
20
+ xp/cli/commands/conbus/conbus_msactiontable_commands.py,sha256=kKWX9S0Ip9eX9EyWPwmyKMtt6q-jRXcOaicMAKt84Ls,2652
21
+ xp/cli/commands/conbus/conbus_output_commands.py,sha256=zdRVbHzVhMbZpG2x5WXtujc3wKTsoQUV4IgkVIbJbCc,5019
36
22
  xp/cli/commands/conbus/conbus_raw_commands.py,sha256=8BKUarwvHgz-sxML7n99YVsb8B1HJNExjQpRsuY_tQw,1829
37
- xp/cli/commands/conbus/conbus_receive_commands.py,sha256=iFqb2A1MfKOBekb_0cJohTGYDwVxYzfWg9gPdHwUQ_c,1713
23
+ xp/cli/commands/conbus/conbus_receive_commands.py,sha256=WdH7fYcbjweIGxD2uxrTRD8lJzViMSVdsaHTvSDJNCQ,1757
38
24
  xp/cli/commands/conbus/conbus_scan_commands.py,sha256=JfXucOwOadvLEKT_fW9fwvqWKHaEODOojLjnO8JV_00,1730
39
- xp/cli/commands/file_commands.py,sha256=BnHaDg1sNll8nS-0BevNt0k0dgTlInw1Sawv4Ba2nfk,5436
25
+ xp/cli/commands/file_commands.py,sha256=GV102X7FRZDUNKLlzvSsIGcoXAaofOzmjCp3HUpE9lw,5532
40
26
  xp/cli/commands/homekit/__init__.py,sha256=qqwY8ulxTx1S74Mzpb6EKjBLT6fWTNdf9PQ3HKuERKY,50
41
27
  xp/cli/commands/homekit/homekit.py,sha256=fiPBlE_nSndyO1ftEyTjL6xmgTh44Q3uZJEIcsf6W9I,3594
42
- xp/cli/commands/homekit/homekit_start_commands.py,sha256=sW1Hvts5UU28FgDrQM8jtgWaBHHqVjR8vjn6DweYBNA,1080
43
- xp/cli/commands/module_commands.py,sha256=1AmQpCqH1XhTZ6a69oESVn_SlvBzKk1p2zJrpyS-YmQ,5246
44
- xp/cli/commands/reverse_proxy_commands.py,sha256=wrxQreOnOAfdRntVumB8YLmA4JoajqN8YvSiNPDPmak,5412
28
+ xp/cli/commands/homekit/homekit_start_commands.py,sha256=-9vuj7NgcPNc1l6aEdiq1jO94Wa4cYjemnNSa-lMtvE,1120
29
+ xp/cli/commands/module_commands.py,sha256=xjRFsrNqzdSJT-YmRFqxDNJPH0kZgT-za_4vnk8ToXQ,5386
30
+ xp/cli/commands/reverse_proxy_commands.py,sha256=dusGISfuSVW6zdrc1-UKxnMj29dCCcRCHJxe2PRwnP0,5457
45
31
  xp/cli/commands/server/__init__.py,sha256=iunDmcaax9U-SHymgGzUlPadGdZLFl9LlhXu2mnyb64,49
46
32
  xp/cli/commands/server/server_commands.py,sha256=I7A8qaHL01H4JKMbaw_WTHVUCIurpZJBMR9wVJwaKhM,3877
47
33
  xp/cli/commands/telegram/__init__.py,sha256=KPhwoU5uscHe3tFAxWXxgFV5OKi9bISBh_TSREnxBFQ,181
@@ -52,7 +38,7 @@ xp/cli/commands/telegram/telegram_discover_commands.py,sha256=0UArJinw1eWFbee5EG
52
38
  xp/cli/commands/telegram/telegram_linknumber_commands.py,sha256=7j0-E5Moqqga4NrKDch82C6glaFDFMQn5_3hMwie7BQ,2511
53
39
  xp/cli/commands/telegram/telegram_parse_commands.py,sha256=_OYOso1hS4f_ox96qlkYL2SuFnmimpAvqqdYlLzX9yo,2232
54
40
  xp/cli/commands/telegram/telegram_version_commands.py,sha256=WQyx1-B9yJ8V9WrFyBpOvULJ-jq12GoZZDDoRbM7eyw,1553
55
- xp/cli/main.py,sha256=LV67RU0O1EPU0YZNwQ4i04yoeCQsis9Hxa-N8bsXnYw,2869
41
+ xp/cli/main.py,sha256=52nMDP2Pq-W1PP4_BU5ybyTuO6QrStWOeLr44Wl_gB8,2812
56
42
  xp/cli/utils/__init__.py,sha256=gTGIj60Uai0iE7sr9_TtEpl04fD7krtTzbbigXUsUVU,46
57
43
  xp/cli/utils/click_tree.py,sha256=ilmM2IMa_c-TqUMsv2alrZXuS0BNhvVlrBlSfyN8lzM,1670
58
44
  xp/cli/utils/datapoint_type_choice.py,sha256=HcydhlqxZ7YyorEeTjFGkypF2JnYNPvOzkl1rhZ93Fc,1666
@@ -77,13 +63,14 @@ xp/models/conbus/conbus_blink.py,sha256=XEAPtA-O76ulX6Zh1oYzsWF6L4css6xJBuUTwNcD
77
63
  xp/models/conbus/conbus_client_config.py,sha256=fWPmHM-OVUzSASKq667JzP7e9_Qp9ZUyYcTaijWkVlY,1484
78
64
  xp/models/conbus/conbus_connection_status.py,sha256=iGbmtBaAMwV6UD7XG3H3tnB0fl2MR8rJhpjrLH2KjsE,1097
79
65
  xp/models/conbus/conbus_custom.py,sha256=8H2sPR6_LIlksuOvL7-8bPkzAJLR0rpYiiwfYYFVjEo,1965
80
- xp/models/conbus/conbus_datapoint.py,sha256=JOdztERFMyeJd5-UySIc9A2D8z9KujEDSgyTSRn7Rm0,3275
81
- xp/models/conbus/conbus_discover.py,sha256=oYIHLLsXmgSQHrayS-JgcEpEaK_01Q1WTQEQj79h4j4,1642
66
+ xp/models/conbus/conbus_datapoint.py,sha256=4ncR-vB2lRzRBAA30rYn8eguyTxsZoOKrrXtjGmPpWg,3396
67
+ xp/models/conbus/conbus_discover.py,sha256=nxxUEKfEsH1kd0BF8ovMs7zLujRhrq1oL9ZJtysPr5o,2238
82
68
  xp/models/conbus/conbus_lightlevel.py,sha256=GQGhzrCBEJROosNHInXIzBy6MD2AskEIMoFEGgZ60-0,1695
83
69
  xp/models/conbus/conbus_linknumber.py,sha256=uFzKzfB06oIzZEKCb5X2JEI80JjMPFuYglsT1W1k8j4,1815
84
70
  xp/models/conbus/conbus_output.py,sha256=q7QKsD_CWT7YOk-V3otKWD1VM7qThrSLIUOunntMrMc,1953
85
71
  xp/models/conbus/conbus_raw.py,sha256=xqvYao6IE1SXum7JBgZpSuWXm9x_QZquS9N_3_r0Hjs,1460
86
72
  xp/models/conbus/conbus_receive.py,sha256=-1u1qK-texfKCNZV-GYf_9KyLtJdIrx7HuZsKzu26Ow,1322
73
+ xp/models/conbus/conbus_writeconfig.py,sha256=z8fdJeFLyGJW7UMHcHxGrHIMS6gG1D3aXeYUkBuwnEg,2136
87
74
  xp/models/homekit/__init__.py,sha256=5HDSOClCu0ArK3IICn3_LDMMLBAzLjBxUUSF73bxSSk,34
88
75
  xp/models/homekit/homekit_accessory.py,sha256=NsHFhskuxIdJpF9-MvXHtjkLYvNHmSGFOy0GmQv3PY4,1038
89
76
  xp/models/homekit/homekit_config.py,sha256=Y1WwrbISRtJOkKVBnXQULb3vAOzcOdt95hBAI8cM_MU,2771
@@ -104,7 +91,7 @@ xp/models/telegram/module_type_code.py,sha256=bg8Zi58yKs5DDnEF0bGnZ9vvpqzmIZzd1k
104
91
  xp/models/telegram/output_telegram.py,sha256=vTSdeAGk7va89pZ8-oh0cna98N3T6if-6UcrstWsN6s,3473
105
92
  xp/models/telegram/reply_telegram.py,sha256=oqNwDvaOhFTPuXL0fP9Ca3rbcKepDhRz9kIneKCk6n0,10376
106
93
  xp/models/telegram/system_function.py,sha256=Iv9u4sYCPnMcvlpbBrNNxu0NpUOFsi5kPgT2vrelbVw,3266
107
- xp/models/telegram/system_telegram.py,sha256=oYW9xfY4ldlid0XQ5D5ymk0-a9Jvr5EHD9O4Cb6JOPk,3192
94
+ xp/models/telegram/system_telegram.py,sha256=9FNQ4Mf47mRK7wGrTg2GzziVsrEWCE5ZkZp5kA7K3w0,3218
108
95
  xp/models/telegram/telegram.py,sha256=IJUxHX6ftLcET9C1pjvLhUO5Db5JO6W7rUItzdEW30I,842
109
96
  xp/models/telegram/telegram_type.py,sha256=GhqKP63oNMyh2tIvCPcsC5RFp4s4JjhmEqCLCC-8XMk,423
110
97
  xp/models/telegram/timeparam_type.py,sha256=Ar8xvSfPmOAgR2g2Je0FgvP01SL7bPvZn5_HrVDpmJM,1137
@@ -118,22 +105,17 @@ xp/services/conbus/actiontable/msactiontable_service.py,sha256=u64nejKvHzMdmlK9V
118
105
  xp/services/conbus/actiontable/msactiontable_xp20_serializer.py,sha256=EYspooOdi0Z8oaXGxpazwnUoTmh-d7U9auhu11iBgmU,6527
119
106
  xp/services/conbus/actiontable/msactiontable_xp24_serializer.py,sha256=30qsk9UKje1n32PPc4YoGV1lw_ZvgxNqqd8ZDgzMJpg,4504
120
107
  xp/services/conbus/actiontable/msactiontable_xp33_serializer.py,sha256=nuWfka4U9W4lpTcS8uD6azXFcryPb0CUO5O7Z28G1k8,8901
121
- xp/services/conbus/conbus_autoreport_get_service.py,sha256=uuMe4JAGgkJXiYozo2GRq8_jEuVkxWvg-YNhznZbIIc,3485
122
- xp/services/conbus/conbus_autoreport_set_service.py,sha256=OHvMnzfSooW5wQa-KiVu9jdOpjR_O006nChJyMAuzS8,5310
123
108
  xp/services/conbus/conbus_blink_all_service.py,sha256=OaEg4b8AEiEruHSkZ5jDtaoI81vwwxLq4KWXO7zBdD0,6582
124
109
  xp/services/conbus/conbus_blink_service.py,sha256=x9uM-sLnIEV8wSNsvJgo08E042g-Hh2ZF3rXkz-k_9s,5824
125
110
  xp/services/conbus/conbus_custom_service.py,sha256=4aneYdPObiZOGxPFYg5Wr70cl_xFxlQIdJBPQSa0enI,5826
126
111
  xp/services/conbus/conbus_datapoint_queryall_service.py,sha256=p9R02cVimhdJILHQ6BoeZj8Hog4oRpqBnMo3t4R8ecY,6816
127
- xp/services/conbus/conbus_datapoint_service.py,sha256=0o26m5yVT-NE6p0oxOiE337oHuQCnx3T8AmU-A9IRjs,6225
128
- xp/services/conbus/conbus_discover_service.py,sha256=0rdGLZfi-gsjBeuFiUwGz0tUC85hbZUDxJ93ImBmq4U,5239
129
- xp/services/conbus/conbus_lightlevel_get_service.py,sha256=A6wcA9UYIR3jq5dKf0a_WMKDkou4ydIeMJOCsxerEls,4018
130
- xp/services/conbus/conbus_lightlevel_set_service.py,sha256=ufYwSc-r6Ethy1gew6QxzWa6IZmzd5iMksLsrgCGvJc,8086
131
- xp/services/conbus/conbus_linknumber_get_service.py,sha256=O7Gbl8bOfldbZDoOEmeKFpXhHSkzfK0cB31Eer10E0I,3529
132
- xp/services/conbus/conbus_linknumber_set_service.py,sha256=8_eQcBDSDwJB-TyggahWYtaFBufliioF-VI63JeD3ss,6786
112
+ xp/services/conbus/conbus_datapoint_service.py,sha256=NsqRQfNsZ4_Pbe7kcMQpUqfhVPH7H148JDWH49ExQ1E,6392
113
+ xp/services/conbus/conbus_discover_service.py,sha256=lH6I8YcN7Beo_f-M8XkNZ_5UuNB-x2R9U5xJNTK-QXE,10110
133
114
  xp/services/conbus/conbus_output_service.py,sha256=mHFOAPx2zo0TStZ3pokp6v94AQjIamcwZDeg5YH_-eo,7240
134
115
  xp/services/conbus/conbus_raw_service.py,sha256=4yZLLTIAOxpgByUTWZXw1ihGa6Xtl98ckj9T7VfprDI,4335
135
116
  xp/services/conbus/conbus_receive_service.py,sha256=frXrS0OyKKvYYQTWdma21Kd0BKw5aSuHn3ZXTTqOaj0,3953
136
- xp/services/conbus/conbus_scan_service.py,sha256=43Bhj7pVDOjIS2MdlD7iDvNK7Gy5KxX1qB8hiTwY5LQ,5186
117
+ xp/services/conbus/conbus_scan_service.py,sha256=tHJ5qaxcNXxAZb2D2F1v6IrzydfxjJOYllM6Txt1eBE,5176
118
+ xp/services/conbus/write_config_service.py,sha256=qe5TwQdVnMCcJ4lCeZLADdUeoDpbEaV3XoZ19a3F_qk,7128
137
119
  xp/services/homekit/__init__.py,sha256=xAMKmln_AmEFdOOJGKWYi96seRlKDQpKx3-hm7XbdIo,36
138
120
  xp/services/homekit/homekit_cache_service.py,sha256=NdijyH5_iyhsTHBb-OyT8Y2xnNDj8F5MP8neoVQ26hY,11010
139
121
  xp/services/homekit/homekit_conbus_service.py,sha256=EYhYqGISPxUB6QrMDLWRPOA4S8f9AgJf0D_BKqXlGLA,3482
@@ -153,20 +135,21 @@ xp/services/module_type_service.py,sha256=xWhr1EAZMykL5uNWHWdpa5T8yNruGKH43XRTOS
153
135
  xp/services/protocol/__init__.py,sha256=WuYn2iEcvsOIXnn5HCrU9kD3PjuMX1sIh0ljKISDoJw,720
154
136
  xp/services/protocol/conbus_protocol.py,sha256=G39YPMpwhvvhFPYrzNxx6y2Is6DSP2UyCLm4T7RLPVc,10404
155
137
  xp/services/protocol/protocol_factory.py,sha256=PmjN9AtW9sxNo3voqUiNgQA-pTvX1RW4XXFlHKfFr5Q,2470
156
- xp/services/protocol/telegram_protocol.py,sha256=JKYxGbO2h3muIroYPYxS7An_BNfriXKLf3u0gdN_KnQ,9462
138
+ xp/services/protocol/telegram_protocol.py,sha256=Ki5DrXsKxiaqLcdP9WWUuhUI7cPu2DfwyZkh-Gv9Lb8,9496
157
139
  xp/services/reverse_proxy_service.py,sha256=BUOlcLlTU-R5iuC_96rasug21xo19wK9_4fMQXxc0QM,15061
158
140
  xp/services/server/__init__.py,sha256=QEcCj-jK0goAukJCe15TKYFQfSAzWsduPT_wW0HxZU8,48
159
- xp/services/server/base_server_service.py,sha256=HQKx4DW6lJ25dGofjaB_3HHPvEZGbL1XeQ20wU5k_z0,8755
160
- xp/services/server/cp20_server_service.py,sha256=AQhfHBqXQsVL5emkXfSLdjlKaAIWtXXKqyxYNKNKWpQ,1624
161
- xp/services/server/server_service.py,sha256=4lhd8feL7eRR5GZIiuag51z5W20KlGRrIGICgvOXwAQ,12459
162
- xp/services/server/xp130_server_service.py,sha256=QbkOykAdYqSSOeI7uq3g-qy1zlXSB9mjWBfRz1esPis,1764
163
- xp/services/server/xp20_server_service.py,sha256=w8LF6vl6jNeKKlrUVdv-2Tk1qq9DMfe40PiPps6kq84,1374
164
- xp/services/server/xp230_server_service.py,sha256=n8eqmyWWVYVuLl-N3gu1zA0-Viifyo5VyMrGXLcvpgc,1388
165
- xp/services/server/xp24_server_service.py,sha256=ygYym0oCzmHaVwDbl-XAZYyFlLLwyycMAO8g8D1q2iU,3806
166
- xp/services/server/xp33_server_service.py,sha256=qswOUv3YS5pT6rDoony49EC-MFKJZKPo7DI3fKG74ts,6307
141
+ xp/services/server/base_server_service.py,sha256=6RmL7bLRqdjEZgIf7lBwwBOdrpQMWhdQnpuF01469M8,8921
142
+ xp/services/server/cp20_server_service.py,sha256=PkdkORQ-aIHtQb-wuAgkRxKcdpNWpvys_p1sXJg0yoI,1679
143
+ xp/services/server/server_service.py,sha256=K25vq6B83n-iwYwEsani5KLULp9DBUBIoAzrYmXmUJ8,14688
144
+ xp/services/server/xp130_server_service.py,sha256=mD3vE-JDR9s_o7zjVCu4cibM8hUbwJ1oxgb_JwtQ2WU,1819
145
+ xp/services/server/xp20_server_service.py,sha256=s9RrqhCZ8xtgEzc8GXTlG81b4LtZLCFy79DhzBLTPjA,1428
146
+ xp/services/server/xp230_server_service.py,sha256=c3kzkA-fEOglrjLISQLbyk_rUdKzwN20hc0qtF9MEAQ,1443
147
+ xp/services/server/xp24_server_service.py,sha256=_QMHe0UgxVlyB0DZmP1KPdjheT1qE8V8-EW55FM58DY,6606
148
+ xp/services/server/xp33_server_service.py,sha256=DneRmJEd7oZGxC-Tj8KqAt54wEQwSUzKuCFMSEf2_bI,11069
167
149
  xp/services/telegram/__init__.py,sha256=kv0JgMg13Fp18WgGQpalNRAWwiWbrz18X4kZAP9xpSQ,48
168
150
  xp/services/telegram/telegram_blink_service.py,sha256=Xctc9mCSZiiW1YTh8cA-4jlc8fTioS5OxT6ymhSqiYI,4487
169
151
  xp/services/telegram/telegram_checksum_service.py,sha256=rp_C5PlraOOIyqZDp9XjBBNZLUeBLdQNNHVpN6D-1v8,4729
152
+ xp/services/telegram/telegram_datapoint_service.py,sha256=A3ERuFSWc22uJUoymH-2dWkt2_AfUvJcLQ1iy8ZbO0s,2399
170
153
  xp/services/telegram/telegram_discover_service.py,sha256=oTpiq-yzP_UmC0xVOMMFeHO-rIlK1pF3aG-Kq4SeiBI,9025
171
154
  xp/services/telegram/telegram_link_number_service.py,sha256=1_c-_QCRPTHYn3BmMElrBJqGG6vnoIst8CB-N42hazk,6862
172
155
  xp/services/telegram/telegram_output_service.py,sha256=UaUv_14fR8o5K2PxQBXrCzx-Hohnk-gzbev_oLw_Clc,10799
@@ -174,8 +157,8 @@ xp/services/telegram/telegram_service.py,sha256=CQKmwV0Jmlr1WwrshaANyp_e77DjBzXz
174
157
  xp/services/telegram/telegram_version_service.py,sha256=M5HdOTsLdcwo122FP-jW6R740ktLrtKf2TiMDVz23h8,10528
175
158
  xp/utils/__init__.py,sha256=_avMF_UOkfR3tNeDIPqQ5odmbq5raKkaq1rZ9Cn1CJs,332
176
159
  xp/utils/checksum.py,sha256=HDpiQxmdIedbCbZ4o_Box0i_Zig417BtCV_46ZyhiTk,1711
177
- xp/utils/dependencies.py,sha256=jD0mj0ruJvSdypNQzp3ShLiRFVMfflI__Ip3inVYHSE,19601
160
+ xp/utils/dependencies.py,sha256=4G7r0m1HY9UV4E0zLS8L-axcNiX2mM-N6OOAU8dVHVM,17740
178
161
  xp/utils/event_helper.py,sha256=W-A_xmoXlpWZBbJH6qdaN50o3-XrwFsDgvAGMJDiAgo,1001
179
162
  xp/utils/serialization.py,sha256=RWHHk86feaB4ZP7rjE4qOWK0900yg2joUBDkP76gfOY,4618
180
163
  xp/utils/time_utils.py,sha256=dEyViDlAG9GWU-J3D_YVa-sGma6yiyyMTgN4h2x3PY4,3781
181
- conson_xp-1.2.0.dist-info/RECORD,,
164
+ conson_xp-1.4.0.dist-info/RECORD,,
xp/__init__.py CHANGED
@@ -3,7 +3,7 @@
3
3
  conson-xp package.
4
4
  """
5
5
 
6
- __version__ = "1.2.0"
6
+ __version__ = "1.4.0"
7
7
  __manufacturer__ = "salchichon"
8
8
  __model__ = "xp.cli"
9
9
  __serial__ = "2025.09.23.000"
@@ -1,7 +1,6 @@
1
1
  """Command modules for XP CLI."""
2
2
 
3
3
  # Main command groups
4
- from xp.cli.commands.api_start_commands import start_api_server
5
4
 
6
5
  # Import conbus command groups (but not 'conbus' itself to avoid module shadowing in Python 3.10)
7
6
  from xp.cli.commands.conbus.conbus import (
@@ -100,7 +99,6 @@ __all__ = [
100
99
  "linknumber",
101
100
  "blink",
102
101
  "checksum",
103
- "start_api_server",
104
102
  "homekit",
105
103
  "homekit_start",
106
104
  # Individual command functions
@@ -28,7 +28,9 @@ def conbus_download_actiontable(ctx: Context, serial_number: str) -> None:
28
28
  ctx: Click context object.
29
29
  serial_number: 10-digit module serial number.
30
30
  """
31
- service = ctx.obj.get("container").get_container().resolve(ActionTableService)
31
+ service: ActionTableService = (
32
+ ctx.obj.get("container").get_container().resolve(ActionTableService)
33
+ )
32
34
 
33
35
  def progress_callback(progress: str) -> None:
34
36
  """Handle progress updates during action table download.
@@ -38,7 +40,7 @@ def conbus_download_actiontable(ctx: Context, serial_number: str) -> None:
38
40
  """
39
41
  click.echo(progress)
40
42
 
41
- def finish_callback(actiontable: ActionTable) -> None:
43
+ def on_finish(actiontable: ActionTable) -> None:
42
44
  """Handle successful completion of action table download.
43
45
 
44
46
  Args:
@@ -62,6 +64,6 @@ def conbus_download_actiontable(ctx: Context, serial_number: str) -> None:
62
64
  service.start(
63
65
  serial_number=serial_number,
64
66
  progress_callback=progress_callback,
65
- finish_callback=finish_callback,
67
+ finish_callback=on_finish,
66
68
  error_callback=error_callback,
67
69
  )
@@ -10,11 +10,12 @@ from xp.cli.utils.decorators import (
10
10
  connection_command,
11
11
  )
12
12
  from xp.cli.utils.serial_number_type import SERIAL
13
- from xp.models.conbus.conbus_autoreport import ConbusAutoreportResponse
14
- from xp.services.conbus.conbus_autoreport_get_service import (
15
- ConbusAutoreportGetService,
16
- )
17
- from xp.services.conbus.conbus_autoreport_set_service import ConbusAutoreportSetService
13
+ from xp.models import ConbusDatapointResponse
14
+ from xp.models.conbus.conbus_writeconfig import ConbusWriteConfigResponse
15
+ from xp.models.telegram.datapoint_type import DataPointType
16
+ from xp.services.conbus.conbus_datapoint_service import ConbusDatapointService
17
+ from xp.services.conbus.write_config_service import WriteConfigService
18
+ from xp.services.telegram.telegram_datapoint_service import TelegramDatapointService
18
19
 
19
20
 
20
21
  @conbus_autoreport.command("get", short_help="Get auto report status for a module")
@@ -33,21 +34,30 @@ def get_autoreport_command(ctx: Context, serial_number: str) -> None:
33
34
  xp conbus autoreport get 0123450001
34
35
  """
35
36
  # Get service from container
36
- service = (
37
- ctx.obj.get("container").get_container().resolve(ConbusAutoreportGetService)
37
+ service: ConbusDatapointService = (
38
+ ctx.obj.get("container").get_container().resolve(ConbusDatapointService)
39
+ )
40
+ telegram_service: TelegramDatapointService = (
41
+ ctx.obj.get("container").get_container().resolve(TelegramDatapointService)
38
42
  )
39
43
 
40
- def on_finish(service_response: ConbusAutoreportResponse) -> None:
44
+ def on_finish(service_response: ConbusDatapointResponse) -> None:
41
45
  """Handle successful completion of auto report status retrieval.
42
46
 
43
47
  Args:
44
48
  service_response: Auto report response object.
45
49
  """
46
- click.echo(json.dumps(service_response.to_dict(), indent=2))
50
+ auto_report_status = telegram_service.get_autoreport_status(
51
+ service_response.data_value
52
+ )
53
+ result = service_response.to_dict()
54
+ result["auto_report_status"] = auto_report_status
55
+ click.echo(json.dumps(result, indent=2))
47
56
 
48
57
  with service:
49
- service.get_autoreport_status(
58
+ service.query_datapoint(
50
59
  serial_number=serial_number,
60
+ datapoint_type=DataPointType.AUTO_REPORT_STATUS,
51
61
  finish_callback=on_finish,
52
62
  )
53
63
 
@@ -70,21 +80,29 @@ def set_autoreport_command(ctx: Context, serial_number: str, status: str) -> Non
70
80
  xp conbus autoreport set 0123450001 on
71
81
  xp conbus autoreport set 0123450001 off
72
82
  """
73
- # Get service from container
74
- service = (
75
- ctx.obj.get("container").get_container().resolve(ConbusAutoreportSetService)
76
- )
77
- status_bool = status.lower() == "on"
78
83
 
79
- def on_finish(service_response: ConbusAutoreportResponse) -> None:
80
- """Handle successful completion of auto report status setting.
84
+ def on_finish(response: "ConbusWriteConfigResponse") -> None:
85
+ """Handle successful completion of light level on command.
81
86
 
82
87
  Args:
83
- service_response: Auto report response object.
88
+ response: Light level response object.
84
89
  """
85
- click.echo(json.dumps(service_response.to_dict(), indent=2))
90
+ click.echo(json.dumps(response.to_dict(), indent=2))
91
+
92
+ service: WriteConfigService = (
93
+ ctx.obj.get("container").get_container().resolve(WriteConfigService)
94
+ )
95
+ telegram_service: TelegramDatapointService = (
96
+ ctx.obj.get("container").get_container().resolve(TelegramDatapointService)
97
+ )
98
+ status_value = True if status == "on" else False
99
+ data_value = telegram_service.get_autoreport_status_data_value(status_value)
86
100
 
87
101
  with service:
88
- service.set_autoreport_status(
89
- serial_number=serial_number, status=status_bool, status_callback=on_finish
102
+ service.write_config(
103
+ serial_number=serial_number,
104
+ datapoint_type=DataPointType.AUTO_REPORT_STATUS,
105
+ data_value=data_value,
106
+ finish_callback=on_finish,
107
+ timeout_seconds=0.5,
90
108
  )
@@ -34,7 +34,7 @@ def send_blink_on_telegram(ctx: Context, serial_number: str) -> None:
34
34
  xp conbus blink on 0012345008
35
35
  """
36
36
 
37
- def finish(service_response: ConbusBlinkResponse) -> None:
37
+ def on_finish(service_response: ConbusBlinkResponse) -> None:
38
38
  """Handle successful completion of blink on command.
39
39
 
40
40
  Args:
@@ -46,7 +46,7 @@ def send_blink_on_telegram(ctx: Context, serial_number: str) -> None:
46
46
  ctx.obj.get("container").get_container().resolve(ConbusBlinkService)
47
47
  )
48
48
  with service:
49
- service.send_blink_telegram(serial_number, "on", finish, 0.5)
49
+ service.send_blink_telegram(serial_number, "on", on_finish, 0.5)
50
50
 
51
51
 
52
52
  @conbus_blink.command("off")
@@ -66,7 +66,7 @@ def send_blink_off_telegram(ctx: Context, serial_number: str) -> None:
66
66
  xp conbus blink off 0012345008
67
67
  """
68
68
 
69
- def finish(service_response: ConbusBlinkResponse) -> None:
69
+ def on_finish(service_response: ConbusBlinkResponse) -> None:
70
70
  """Handle successful completion of blink off command.
71
71
 
72
72
  Args:
@@ -78,7 +78,7 @@ def send_blink_off_telegram(ctx: Context, serial_number: str) -> None:
78
78
  ctx.obj.get("container").get_container().resolve(ConbusBlinkService)
79
79
  )
80
80
  with service:
81
- service.send_blink_telegram(serial_number, "off", finish, 0.5)
81
+ service.send_blink_telegram(serial_number, "off", on_finish, 0.5)
82
82
 
83
83
 
84
84
  @conbus_blink.group("all", short_help="Control blink state for all devices")
@@ -102,7 +102,7 @@ def blink_all_off(ctx: Context) -> None:
102
102
  xp conbus blink all off
103
103
  """
104
104
 
105
- def finish(discovered_devices: ConbusBlinkResponse) -> None:
105
+ def on_finish(discovered_devices: ConbusBlinkResponse) -> None:
106
106
  """Handle successful completion of blink all off command.
107
107
 
108
108
  Args:
@@ -122,7 +122,7 @@ def blink_all_off(ctx: Context) -> None:
122
122
  ctx.obj.get("container").get_container().resolve(ConbusBlinkAllService)
123
123
  )
124
124
  with service:
125
- service.send_blink_all_telegram("off", progress, finish, 0.5)
125
+ service.send_blink_all_telegram("off", progress, on_finish, 0.5)
126
126
 
127
127
 
128
128
  @conbus_blink_all.command("on", short_help="Turn on blinking for all devices")
@@ -140,7 +140,7 @@ def blink_all_on(ctx: Context) -> None:
140
140
  xp conbus blink all on
141
141
  """
142
142
 
143
- def finish(discovered_devices: ConbusBlinkResponse) -> None:
143
+ def on_finish(discovered_devices: ConbusBlinkResponse) -> None:
144
144
  """Handle successful completion of blink all on command.
145
145
 
146
146
  Args:
@@ -160,4 +160,4 @@ def blink_all_on(ctx: Context) -> None:
160
160
  ctx.obj.get("container").get_container().resolve(ConbusBlinkAllService)
161
161
  )
162
162
  with service:
163
- service.send_blink_all_telegram("on", progress, finish, 0.5)
163
+ service.send_blink_all_telegram("on", progress, on_finish, 0.5)
@@ -23,5 +23,7 @@ def show_config(ctx: Context) -> None:
23
23
  \b
24
24
  xp conbus config
25
25
  """
26
- config = ctx.obj.get("container").get_container().resolve(ConbusClientConfig)
26
+ config: ConbusClientConfig = (
27
+ ctx.obj.get("container").get_container().resolve(ConbusClientConfig)
28
+ )
27
29
  click.echo(json.dumps(config.conbus.model_dump(mode="json"), indent=2))
@@ -36,7 +36,9 @@ def send_custom_telegram(
36
36
  xp conbus custom 0012345011 02 E2
37
37
  xp conbus custom 0012345011 17 AA
38
38
  """
39
- service = ctx.obj.get("container").get_container().resolve(ConbusCustomService)
39
+ service: ConbusCustomService = (
40
+ ctx.obj.get("container").get_container().resolve(ConbusCustomService)
41
+ )
40
42
 
41
43
  def on_finish(service_response: "ConbusCustomResponse") -> None:
42
44
  """Handle successful completion of custom telegram.
@@ -45,7 +45,9 @@ def query_datapoint(ctx: Context, serial_number: str, datapoint: DataPointType)
45
45
  xp conbus datapoint query current 0012345011
46
46
  xp conbus datapoint query humidity 0012345011
47
47
  """
48
- service = ctx.obj.get("container").get_container().resolve(ConbusDatapointService)
48
+ service: ConbusDatapointService = (
49
+ ctx.obj.get("container").get_container().resolve(ConbusDatapointService)
50
+ )
49
51
 
50
52
  def on_finish(service_response: ConbusDatapointResponse) -> None:
51
53
  """Handle successful completion of datapoint query.
@@ -83,7 +85,7 @@ def query_all_datapoints(ctx: Context, serial_number: str) -> None:
83
85
  \b
84
86
  xp conbus datapoint all 0123450001
85
87
  """
86
- service = (
88
+ service: ConbusDatapointQueryAllService = (
87
89
  ctx.obj.get("container").get_container().resolve(ConbusDatapointQueryAllService)
88
90
  )
89
91
 
@@ -28,7 +28,7 @@ def send_discover_telegram(ctx: click.Context) -> None:
28
28
  xp conbus discover
29
29
  """
30
30
 
31
- def finish(discovered_devices: ConbusDiscoverResponse) -> None:
31
+ def on_finish(discovered_devices: ConbusDiscoverResponse) -> None:
32
32
  """Handle successful completion of device discovery.
33
33
 
34
34
  Args:
@@ -45,6 +45,8 @@ def send_discover_telegram(ctx: click.Context) -> None:
45
45
  # click.echo(f"Discovered : {serial_number}")
46
46
  pass
47
47
 
48
- service = ctx.obj.get("container").get_container().resolve(ConbusDiscoverService)
48
+ service: ConbusDiscoverService = (
49
+ ctx.obj.get("container").get_container().resolve(ConbusDiscoverService)
50
+ )
49
51
  with service:
50
- service.start(progress, finish, 0.5)
52
+ service.start(progress, on_finish, 0.5)