Open malammar opened 1 year ago
Looks like they changed how the device address is configured... Is it possible to find what the actual value is so we can parse it correctly?
@malammar can you add a debug log statement to wyzeapy/services/base_service.py
and share the line in the log?
I have an old debug log from lock_service.py
which might have what you're looking for:
[
{
"available": false,
"raw_dict": {
"mac": "YD_BT1.39aa4f3a9267557ddee4043da924c704",
"first_activation_ts": 1654131355000,
"first_binding_ts": 1654131355000,
"enr": "",
"nickname": "Front Door",
"timezone_name": "America/Los_Angeles",
"product_model": "YD_BT1",
"product_model_logo_url": "",
"product_type": "Lock",
"hardware_ver": "0.0.0.0",
"firmware_ver": "1.0.0",
"user_role": 1,
"binding_user_nickname": "REDACTED",
"conn_state": 1,
"conn_state_ts": 0,
"push_switch": 1,
"device_params": {},
"is_in_auto": 0,
"event_master_switch": 1,
"parent_device_mac": "",
"parent_device_enr": "",
"binding_ts": 1654131355000,
"timezone_gmt_offset": -7.0
}
}
]
@SecKatie
Looking at the output malamar posted there, I feel like they used to have "something.somethingelse.uuid" and they removed one of the somethings.
however, I'm not sure if some versions of the lock still have 3 fields? So maybe it's just worth changing device_uuid = device.mac.split(".")[2] to device_uuid = device.mac.split(".")[-1]
Those changes will need to be here: https://github.com/SecKatie/wyzeapy/blob/bb5323b3a394118bfd7e5fafeb9253984e987617/src/wyzeapy/services/base_service.py#L480 and here: https://github.com/SecKatie/wyzeapy/blob/bb5323b3a394118bfd7e5fafeb9253984e987617/src/wyzeapy/services/base_service.py#L499
I think it was always the last segment of the mac when split by .'s
I have a couple of Wyze Lock Bolts and they seem to be causing an out of range error in this integration:
I don't really need those locks supported but this is impacting updates to my other Wyze devices.