mirror of
https://github.com/Andre0512/pyhOn.git
synced 2024-12-22 10:45:31 +00:00
Fix missing update when using same client_id
This commit is contained in:
parent
33f34e1c20
commit
1583e6beaa
|
@ -1,5 +1,6 @@
|
||||||
import json
|
import json
|
||||||
import logging
|
import logging
|
||||||
|
import secrets
|
||||||
from typing import TYPE_CHECKING
|
from typing import TYPE_CHECKING
|
||||||
|
|
||||||
from awscrt import mqtt5
|
from awscrt import mqtt5
|
||||||
|
@ -27,6 +28,17 @@ def on_lifecycle_connection_success(
|
||||||
"Lifecycle Connection Success: %s", str(lifecycle_connect_success_data)
|
"Lifecycle Connection Success: %s", str(lifecycle_connect_success_data)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def on_lifecycle_attempting_connect(lifecycle_attempting_connect_data):
|
||||||
|
_LOGGER.info("Lifecycle Attempting Connect - %s", lifecycle_attempting_connect_data)
|
||||||
|
|
||||||
|
|
||||||
|
def on_lifecycle_connection_failure(lifecycle_connection_failure_data):
|
||||||
|
_LOGGER.info("Lifecycle Connection Failure - %s", lifecycle_connection_failure_data)
|
||||||
|
|
||||||
|
|
||||||
|
def on_lifecycle_disconnection(lifecycle_disconnect_data):
|
||||||
|
_LOGGER.info("Lifecycle Disconnection - %s", lifecycle_disconnect_data)
|
||||||
|
|
||||||
|
|
||||||
def on_publish_received(data: mqtt5.PublishReceivedData) -> None:
|
def on_publish_received(data: mqtt5.PublishReceivedData) -> None:
|
||||||
if not (data and data.publish_packet and data.publish_packet.payload):
|
if not (data and data.publish_packet and data.publish_packet.payload):
|
||||||
|
@ -40,9 +52,7 @@ def on_publish_received(data: mqtt5.PublishReceivedData) -> None:
|
||||||
for parameter in payload["parameters"]:
|
for parameter in payload["parameters"]:
|
||||||
appliance.attributes["parameters"][parameter["parName"]].update(parameter)
|
appliance.attributes["parameters"][parameter["parName"]].update(parameter)
|
||||||
appliance.notify()
|
appliance.notify()
|
||||||
_LOGGER.debug("%s - %s", topic, payload)
|
_LOGGER.info("%s - %s", topic, payload)
|
||||||
else:
|
|
||||||
_LOGGER.debug("%s - %s", topic, payload)
|
|
||||||
|
|
||||||
|
|
||||||
async def create_mqtt_client(api: "HonAPI") -> mqtt5.Client:
|
async def create_mqtt_client(api: "HonAPI") -> mqtt5.Client:
|
||||||
|
@ -52,9 +62,12 @@ async def create_mqtt_client(api: "HonAPI") -> mqtt5.Client:
|
||||||
auth_authorizer_signature=await api.load_aws_token(),
|
auth_authorizer_signature=await api.load_aws_token(),
|
||||||
auth_token_key_name="token",
|
auth_token_key_name="token",
|
||||||
auth_token_value=api.auth.id_token,
|
auth_token_value=api.auth.id_token,
|
||||||
client_id=const.MOBILE_ID,
|
client_id=f"{const.MOBILE_ID}_{secrets.token_hex(8)}",
|
||||||
on_lifecycle_stopped=on_lifecycle_stopped,
|
on_lifecycle_stopped=on_lifecycle_stopped,
|
||||||
on_lifecycle_connection_success=on_lifecycle_connection_success,
|
on_lifecycle_connection_success=on_lifecycle_connection_success,
|
||||||
|
on_lifecycle_attempting_connect=on_lifecycle_attempting_connect,
|
||||||
|
on_lifecycle_connection_failure=on_lifecycle_connection_failure,
|
||||||
|
on_lifecycle_disconnection=on_lifecycle_disconnection,
|
||||||
on_publish_received=on_publish_received,
|
on_publish_received=on_publish_received,
|
||||||
)
|
)
|
||||||
client.start()
|
client.start()
|
||||||
|
|
Loading…
Reference in a new issue