casambi-bt-revamped 0.3.6.dev5__py3-none-any.whl → 0.3.6.dev7__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.
CasambiBt/_client.py CHANGED
@@ -600,16 +600,12 @@ class CasambiClient:
600
600
  # Expected pattern: [unit_id_echo][0x12 or similar][0x00]
601
601
  unit_id_echo = extra_data[0]
602
602
  if unit_id_echo != unit_id:
603
- # Special case: 0x1f (31) appears to be a broadcast/group indicator
604
- if unit_id_echo == 0x1f:
605
- self._logger.debug(
606
- f"Ignoring broadcast/group event from unit {unit_id} (unit_id_echo=0x1f)"
607
- )
608
- return # Don't process this as a switch event
609
- else:
610
- self._logger.warning(
611
- f"Extra data validation failed: unit_id_echo {unit_id_echo} != unit_id {unit_id}"
612
- )
603
+ # If unit_id_echo doesn't match, this might be an internal protocol message
604
+ # Log it for debugging but don't process as a regular switch event
605
+ self._logger.debug(
606
+ f"Ignoring internal protocol message: unit_id={unit_id}, unit_id_echo={unit_id_echo}"
607
+ )
608
+ return # Don't process this as a switch event
613
609
 
614
610
  event_string = "unknown"
615
611
 
@@ -661,6 +657,13 @@ class CasambiClient:
661
657
  self._logger.warning(f"Unit ID mismatch: current={unit_id}, android={android_switch_event['unit_id']}")
662
658
  if android_switch_event['button'] != button:
663
659
  self._logger.warning(f"Button mismatch: current={button}, android={android_switch_event['button']}")
660
+
661
+ # Extract controlling unit if present
662
+ controlling_unit = None
663
+ if message_type == 0x10 and len(extra_data) >= 1:
664
+ unit_id_echo = extra_data[0]
665
+ if unit_id_echo != unit_id:
666
+ controlling_unit = unit_id_echo
664
667
 
665
668
  self._dataCallback(
666
669
  IncommingPacketType.SwitchEvent,
@@ -672,6 +675,7 @@ class CasambiClient:
672
675
  "event": event_string,
673
676
  "flags": flags,
674
677
  "extra_data": extra_data,
678
+ "controlling_unit": controlling_unit,
675
679
  "packet_sequence": packet_seq,
676
680
  "raw_packet": b2a(raw_packet) if raw_packet else None,
677
681
  "decrypted_data": b2a(full_data),
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: casambi-bt-revamped
3
- Version: 0.3.6.dev5
3
+ Version: 0.3.6.dev7
4
4
  Summary: Enhanced Casambi Bluetooth client library with switch event support
5
5
  Home-page: https://github.com/rankjie/casambi-bt
6
6
  Author: rankjie
@@ -1,7 +1,7 @@
1
1
  CasambiBt/__init__.py,sha256=TW445xSu5PV3TyMjJfwaA1JoWvQQ8LXhZgGdDTfWf3s,302
2
2
  CasambiBt/_cache.py,sha256=KZ2xbiHAHXUPa8Gw_75Nw9NL4QSY_sTWHbyYXYUDaB0,3865
3
3
  CasambiBt/_casambi.py,sha256=gLLkhEcObgapqTx5Mk7WRClyG29UyfZYZCCIhhOg4H4,23101
4
- CasambiBt/_client.py,sha256=KqmwUKUiH2NVSIpLVEL_61eCfmgLLjvd3a2pS73onQU,28124
4
+ CasambiBt/_client.py,sha256=1YO2nXbKFY2Fj-ePvQ-GObNA-D15vj96PAUne59iFVs,28298
5
5
  CasambiBt/_client_android_parser.py,sha256=1lVkVYMO0Nhh9_nkNwgb68hlCS_uD8WxYQDir5hOdHs,7744
6
6
  CasambiBt/_constants.py,sha256=_AxkG7Btxl4VeS6mO7GJW5Kc9dFs3s9sDmtJ83ZEKNw,359
7
7
  CasambiBt/_discover.py,sha256=H7HpiFYIy9ELvmPXXd_ck-5O5invJf15dDIRk-vO5IE,1696
@@ -12,8 +12,8 @@ CasambiBt/_operation.py,sha256=-BuC1Bvtg-G-zSN_b_0JMvXdHZaR6LbTw0S425jg96c,842
12
12
  CasambiBt/_unit.py,sha256=YiQWoHmMDWHHo4XAjtW8rHsBqIqpmp9MVdv1Mbu2xw4,17043
13
13
  CasambiBt/errors.py,sha256=0JgDjaKlAKDes0poWzA8nrTUYQ8qdNfBb8dfaqqzCRA,1664
14
14
  CasambiBt/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
- casambi_bt_revamped-0.3.6.dev5.dist-info/licenses/LICENSE,sha256=TAIIitFxpxEDi6Iju7foW4TDQmWvC-IhLVLhl67jKmQ,11341
16
- casambi_bt_revamped-0.3.6.dev5.dist-info/METADATA,sha256=39lfO89rhByMMsDjA2NRLtotWWkRLwxPpfPQJrvhYik,3049
17
- casambi_bt_revamped-0.3.6.dev5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
18
- casambi_bt_revamped-0.3.6.dev5.dist-info/top_level.txt,sha256=uNbqLjtecFosoFzpGAC89-5icikWODKI8rOjbi8v_sA,10
19
- casambi_bt_revamped-0.3.6.dev5.dist-info/RECORD,,
15
+ casambi_bt_revamped-0.3.6.dev7.dist-info/licenses/LICENSE,sha256=TAIIitFxpxEDi6Iju7foW4TDQmWvC-IhLVLhl67jKmQ,11341
16
+ casambi_bt_revamped-0.3.6.dev7.dist-info/METADATA,sha256=B00ynXU5EItL1_0bbG9Dwmde6F3d96bFTWF4rMc73Gc,3049
17
+ casambi_bt_revamped-0.3.6.dev7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
18
+ casambi_bt_revamped-0.3.6.dev7.dist-info/top_level.txt,sha256=uNbqLjtecFosoFzpGAC89-5icikWODKI8rOjbi8v_sA,10
19
+ casambi_bt_revamped-0.3.6.dev7.dist-info/RECORD,,