casambi-bt-revamped 0.3.6.dev10__tar.gz → 0.3.6.dev12__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.
- {casambi_bt_revamped-0.3.6.dev10/src/casambi_bt_revamped.egg-info → casambi_bt_revamped-0.3.6.dev12}/PKG-INFO +1 -1
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/setup.cfg +1 -1
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_client.py +18 -5
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12/src/casambi_bt_revamped.egg-info}/PKG-INFO +1 -1
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/LICENSE +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/README.md +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/pyproject.toml +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/__init__.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_cache.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_casambi.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_client_android_parser.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_constants.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_discover.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_encryption.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_keystore.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_network.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_operation.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_unit.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/errors.py +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/py.typed +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/casambi_bt_revamped.egg-info/SOURCES.txt +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/casambi_bt_revamped.egg-info/dependency_links.txt +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/casambi_bt_revamped.egg-info/requires.txt +0 -0
- {casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/casambi_bt_revamped.egg-info/top_level.txt +0 -0
{casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_client.py
RENAMED
|
@@ -551,10 +551,22 @@ class CasambiClient:
|
|
|
551
551
|
# Process based on message type
|
|
552
552
|
if message_type == 0x08 or message_type == 0x10: # Switch/button events
|
|
553
553
|
switch_events_found += 1
|
|
554
|
-
#
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
554
|
+
# Extract button ID based on message type
|
|
555
|
+
if message_type == 0x08:
|
|
556
|
+
# Type 0x08: button is in upper nibble of flags byte
|
|
557
|
+
button = (flags >> 4) & 15
|
|
558
|
+
else: # message_type == 0x10
|
|
559
|
+
# Type 0x10: button is the parameter field
|
|
560
|
+
button = parameter
|
|
561
|
+
|
|
562
|
+
# For type 0x10 messages, we need to pass additional data beyond the declared payload
|
|
563
|
+
if message_type == 0x10:
|
|
564
|
+
# Extend to include at least 10 bytes from message start for state byte
|
|
565
|
+
extended_end = min(oldPos + 11, len(data))
|
|
566
|
+
full_message_data = data[oldPos:extended_end]
|
|
567
|
+
else:
|
|
568
|
+
full_message_data = data
|
|
569
|
+
self._processSwitchMessage(message_type, flags, button, payload, full_message_data, oldPos, packet_seq, raw_packet, android_switch_event)
|
|
558
570
|
elif message_type == 0x29:
|
|
559
571
|
# This shouldn't happen due to check above, but just in case
|
|
560
572
|
self._logger.debug(f"Ignoring embedded type 0x29 message")
|
|
@@ -615,6 +627,7 @@ class CasambiClient:
|
|
|
615
627
|
elif message_type == 0x10:
|
|
616
628
|
# Type 0x10: The state byte is at position 9 (0-indexed) from message start
|
|
617
629
|
# This applies to all units, not just unit 31
|
|
630
|
+
# full_data for type 0x10 is the message data starting from position 0
|
|
618
631
|
state_pos = 9
|
|
619
632
|
if len(full_data) > state_pos:
|
|
620
633
|
state_byte = full_data[state_pos]
|
|
@@ -627,7 +640,7 @@ class CasambiClient:
|
|
|
627
640
|
elif state_byte == 0x0c:
|
|
628
641
|
event_string = "button_release_after_hold"
|
|
629
642
|
else:
|
|
630
|
-
self._logger.debug(f"Type 0x10:
|
|
643
|
+
self._logger.debug(f"Type 0x10: Unknown state byte 0x{state_byte:02x} at message pos {state_pos}")
|
|
631
644
|
# Fallback: check if extra_data starts with 0x12 (indicates release)
|
|
632
645
|
if len(extra_data) >= 1 and extra_data[0] == 0x12:
|
|
633
646
|
event_string = "button_release"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_casambi.py
RENAMED
|
File without changes
|
|
File without changes
|
{casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_constants.py
RENAMED
|
File without changes
|
{casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_discover.py
RENAMED
|
File without changes
|
{casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_encryption.py
RENAMED
|
File without changes
|
{casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_keystore.py
RENAMED
|
File without changes
|
{casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_network.py
RENAMED
|
File without changes
|
{casambi_bt_revamped-0.3.6.dev10 → casambi_bt_revamped-0.3.6.dev12}/src/CasambiBt/_operation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|