Skip to content

Commit d218022

Browse files
committed
add on disconnect callback
1 parent 1a50199 commit d218022

9 files changed

+68
-4
lines changed

samples/mqtt/mqtt5_aws_websocket.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ def on_lifecycle_attempting_connect(lifecycle_attempting_connect_data: mqtt5.Lif
7676
# Callback for the lifecycle event Connection Success
7777
def on_lifecycle_connection_success(lifecycle_connect_success_data: mqtt5.LifecycleConnectSuccessData):
7878
connack_packet = lifecycle_connect_success_data.connack_packet
79-
print("Lifecycle Connection Success with reason_code:{}\n".format(
79+
print("Lifecycle Connection Success with reason code:{}\n".format(
8080
repr(connack_packet.reason_code)))
8181
connection_success_event.set()
8282

@@ -87,6 +87,12 @@ def on_lifecycle_connection_failure(lifecycle_connection_failure: mqtt5.Lifecycl
8787
lifecycle_connection_failure.exception))
8888

8989

90+
# Callback for the lifecycle event Disconnection
91+
def on_lifecycle_disconnection(lifecycle_disconnect_data: mqtt5.LifecycleDisconnectData):
92+
print("Lifecycle Disconnected with reason code:{}".format(
93+
lifecycle_disconnect_data.disconnect_packet.reason_code if lifecycle_disconnect_data.disconnect_packet else "None"))
94+
95+
9096
if __name__ == '__main__':
9197
print("\nStarting MQTT5 Websocket Sample\n")
9298
message_count = args.input_count
@@ -107,6 +113,7 @@ def on_lifecycle_connection_failure(lifecycle_connection_failure: mqtt5.Lifecycl
107113
on_lifecycle_attempting_connect=on_lifecycle_attempting_connect,
108114
on_lifecycle_connection_success=on_lifecycle_connection_success,
109115
on_lifecycle_connection_failure=on_lifecycle_connection_failure,
116+
on_lifecycle_disconnection=on_lifecycle_disconnection,
110117
client_id=args.input_clientId)
111118

112119

samples/mqtt/mqtt5_custom_auth_signed.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ def on_lifecycle_attempting_connect(lifecycle_attempting_connect_data: mqtt5.Lif
8686
# Callback for the lifecycle event Connection Success
8787
def on_lifecycle_connection_success(lifecycle_connect_success_data: mqtt5.LifecycleConnectSuccessData):
8888
connack_packet = lifecycle_connect_success_data.connack_packet
89-
print("Lifecycle Connection Success with reason_code:{}\n".format(
89+
print("Lifecycle Connection Success with reason code:{}\n".format(
9090
repr(connack_packet.reason_code)))
9191
connection_success_event.set()
9292

@@ -97,6 +97,12 @@ def on_lifecycle_connection_failure(lifecycle_connection_failure: mqtt5.Lifecycl
9797
lifecycle_connection_failure.exception))
9898

9999

100+
# Callback for the lifecycle event Disconnection
101+
def on_lifecycle_disconnection(lifecycle_disconnect_data: mqtt5.LifecycleDisconnectData):
102+
print("Lifecycle Disconnected with reason code:{}".format(
103+
lifecycle_disconnect_data.disconnect_packet.reason_code if lifecycle_disconnect_data.disconnect_packet else "None"))
104+
105+
100106
if __name__ == '__main__':
101107

102108
# Create MQTT5 Client with a custom authorizer
@@ -114,6 +120,7 @@ def on_lifecycle_connection_failure(lifecycle_connection_failure: mqtt5.Lifecycl
114120
on_lifecycle_attempting_connect=on_lifecycle_attempting_connect,
115121
on_lifecycle_connection_success=on_lifecycle_connection_success,
116122
on_lifecycle_connection_failure=on_lifecycle_connection_failure,
123+
on_lifecycle_disconnection=on_lifecycle_disconnection,
117124
client_id=args.input_clientId)
118125

119126

samples/mqtt/mqtt5_custom_auth_unsigned.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ def on_lifecycle_attempting_connect(lifecycle_attempting_connect_data: mqtt5.Lif
7979
# Callback for the lifecycle event Connection Success
8080
def on_lifecycle_connection_success(lifecycle_connect_success_data: mqtt5.LifecycleConnectSuccessData):
8181
connack_packet = lifecycle_connect_success_data.connack_packet
82-
print("Lifecycle Connection Success with reason_code:{}\n".format(
82+
print("Lifecycle Connection Success with reason code:{}\n".format(
8383
repr(connack_packet.reason_code)))
8484
connection_success_event.set()
8585

@@ -90,6 +90,12 @@ def on_lifecycle_connection_failure(lifecycle_connection_failure: mqtt5.Lifecycl
9090
lifecycle_connection_failure.exception))
9191

9292

93+
# Callback for the lifecycle event Disconnection
94+
def on_lifecycle_disconnection(lifecycle_disconnect_data: mqtt5.LifecycleDisconnectData):
95+
print("Lifecycle Disconnected with reason code:{}".format(
96+
lifecycle_disconnect_data.disconnect_packet.reason_code if lifecycle_disconnect_data.disconnect_packet else "None"))
97+
98+
9399
if __name__ == '__main__':
94100

95101
# Create MQTT5 Client with a custom authorizer
@@ -104,6 +110,7 @@ def on_lifecycle_connection_failure(lifecycle_connection_failure: mqtt5.Lifecycl
104110
on_lifecycle_attempting_connect=on_lifecycle_attempting_connect,
105111
on_lifecycle_connection_success=on_lifecycle_connection_success,
106112
on_lifecycle_connection_failure=on_lifecycle_connection_failure,
113+
on_lifecycle_disconnection=on_lifecycle_disconnection,
107114
client_id=args.input_clientId)
108115

109116

samples/mqtt/mqtt5_pkcs11_connect.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,16 @@ def on_lifecycle_connection_success(lifecycle_connect_success_data: mqtt5.Lifecy
7272
global future_connection_success
7373
future_connection_success.set_result(lifecycle_connect_success_data)
7474

75+
# Callback for the lifecycle event Connection Failure
76+
def on_lifecycle_connection_failure(lifecycle_connection_failure: mqtt5.LifecycleConnectFailureData):
77+
print("Lifecycle Connection Failure with exception:{}".format(
78+
lifecycle_connection_failure.exception))
79+
80+
# Callback for the lifecycle event Disconnection
81+
def on_lifecycle_disconnection(lifecycle_disconnect_data: mqtt5.LifecycleDisconnectData):
82+
print("Lifecycle Disconnected with reason code:{}".format(
83+
lifecycle_disconnect_data.disconnect_packet.reason_code if lifecycle_disconnect_data.disconnect_packet else "None"))
84+
7585

7686
if __name__ == '__main__':
7787
print("\nStarting MQTT5 pkcs11 connect Sample\n")
@@ -99,6 +109,8 @@ def on_lifecycle_connection_success(lifecycle_connect_success_data: mqtt5.Lifecy
99109
ca_filepath=args.input_ca,
100110
on_lifecycle_stopped=on_lifecycle_stopped,
101111
on_lifecycle_connection_success=on_lifecycle_connection_success,
112+
on_lifecycle_connection_failure=on_lifecycle_connection_failure,
113+
on_lifecycle_disconnection=on_lifecycle_disconnection,
102114
client_id=args.input_clientId)
103115

104116
print("MQTT5 Client Created")

samples/mqtt/mqtt5_x509.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ def on_lifecycle_attempting_connect(lifecycle_attempting_connect_data: mqtt5.Lif
7878
# Callback for the lifecycle event Connection Success
7979
def on_lifecycle_connection_success(lifecycle_connect_success_data: mqtt5.LifecycleConnectSuccessData):
8080
connack_packet = lifecycle_connect_success_data.connack_packet
81-
print("Lifecycle Connection Success with reason_code:{}\n".format(
81+
print("Lifecycle Connection Success with reason code:{}\n".format(
8282
repr(connack_packet.reason_code)))
8383
connection_success_event.set()
8484

@@ -89,6 +89,12 @@ def on_lifecycle_connection_failure(lifecycle_connection_failure: mqtt5.Lifecycl
8989
lifecycle_connection_failure.exception))
9090

9191

92+
# Callback for the lifecycle event Disconnection
93+
def on_lifecycle_disconnection(lifecycle_disconnect_data: mqtt5.LifecycleDisconnectData):
94+
print("Lifecycle Disconnected with reason code:{}".format(
95+
lifecycle_disconnect_data.disconnect_packet.reason_code if lifecycle_disconnect_data.disconnect_packet else "None"))
96+
97+
9298
if __name__ == '__main__':
9399
print("\nStarting MQTT5 X509 PubSub Sample\n")
94100
message_count = args.input_count
@@ -107,6 +113,7 @@ def on_lifecycle_connection_failure(lifecycle_connection_failure: mqtt5.Lifecycl
107113
on_lifecycle_attempting_connect=on_lifecycle_attempting_connect,
108114
on_lifecycle_connection_success=on_lifecycle_connection_success,
109115
on_lifecycle_connection_failure=on_lifecycle_connection_failure,
116+
on_lifecycle_disconnection=on_lifecycle_disconnection,
110117
client_id=args.input_clientId)
111118

112119

samples/service_clients/fleet_provisioning_basic.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,10 @@ def on_lifecycle_connection_success(event: mqtt5.LifecycleConnectSuccessData):
4040
def on_lifecycle_connection_failure(event: mqtt5.LifecycleConnectFailureData):
4141
initial_connection_success.set_exception(Exception("Failed to connect"))
4242

43+
def on_lifecycle_disconnection(event: mqtt5.LifecycleDisconnectData):
44+
print("Lifecycle Disconnected with reason code:{}".format(
45+
event.disconnect_packet.reason_code if event.disconnect_packet else "None"))
46+
4347
stopped = Future()
4448
def on_lifecycle_stopped(event: mqtt5.LifecycleStoppedData):
4549
stopped.set_result(True)
@@ -58,6 +62,8 @@ def on_lifecycle_stopped(event: mqtt5.LifecycleStoppedData):
5862
clean_session=True,
5963
keep_alive_secs=1200,
6064
on_lifecycle_connection_success=on_lifecycle_connection_success,
65+
on_lifecycle_connection_failure=on_lifecycle_connection_failure,
66+
on_lifecycle_disconnection=on_lifecycle_disconnection,
6167
on_lifecycle_stopped=on_lifecycle_stopped)
6268

6369
mqtt5_client.start()

samples/service_clients/fleet_provisioning_csr.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,10 @@ def on_lifecycle_connection_success(event: mqtt5.LifecycleConnectSuccessData):
4545
def on_lifecycle_connection_failure(event: mqtt5.LifecycleConnectFailureData):
4646
initial_connection_success.set_exception(Exception("Failed to connect"))
4747

48+
def on_lifecycle_disconnection(event: mqtt5.LifecycleDisconnectData):
49+
print("Lifecycle Disconnected with reason code:{}".format(
50+
event.disconnect_packet.reason_code if event.disconnect_packet else "None"))
51+
4852
stopped = Future()
4953
def on_lifecycle_stopped(event: mqtt5.LifecycleStoppedData):
5054
stopped.set_result(True)
@@ -63,6 +67,8 @@ def on_lifecycle_stopped(event: mqtt5.LifecycleStoppedData):
6367
clean_session=True,
6468
keep_alive_secs=1200,
6569
on_lifecycle_connection_success=on_lifecycle_connection_success,
70+
on_lifecycle_connection_failure=on_lifecycle_connection_failure,
71+
on_lifecycle_disconnection=on_lifecycle_disconnection,
6672
on_lifecycle_stopped=on_lifecycle_stopped)
6773

6874
mqtt5_client.start()

samples/service_clients/jobs.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,10 @@ def on_lifecycle_connection_success(event: mqtt5.LifecycleConnectSuccessData):
137137
def on_lifecycle_connection_failure(event: mqtt5.LifecycleConnectFailureData):
138138
initial_connection_success.set_exception(Exception("Failed to connect"))
139139

140+
def on_lifecycle_disconnection(event: mqtt5.LifecycleDisconnectData):
141+
print("Lifecycle Disconnected with reason code:{}".format(
142+
event.disconnect_packet.reason_code if event.disconnect_packet else "None"))
143+
140144
stopped = Future()
141145
def on_lifecycle_stopped(event: mqtt5.LifecycleStoppedData):
142146
stopped.set_result(True)
@@ -150,6 +154,8 @@ def on_lifecycle_stopped(event: mqtt5.LifecycleStoppedData):
150154
clean_session=True,
151155
keep_alive_secs=1200,
152156
on_lifecycle_connection_success=on_lifecycle_connection_success,
157+
on_lifecycle_connection_failure=on_lifecycle_connection_failure,
158+
on_lifecycle_disconnection=on_lifecycle_disconnection,
153159
on_lifecycle_stopped=on_lifecycle_stopped)
154160

155161
mqtt5_client.start()

samples/service_clients/shadow.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,10 @@ def on_lifecycle_connection_success(event: mqtt5.LifecycleConnectSuccessData):
9898
def on_lifecycle_connection_failure(event: mqtt5.LifecycleConnectFailureData):
9999
initial_connection_success.set_exception(Exception("Failed to connect"))
100100

101+
def on_lifecycle_disconnection(event: mqtt5.LifecycleDisconnectData):
102+
print("Lifecycle Disconnected with reason code:{}".format(
103+
event.disconnect_packet.reason_code if event.disconnect_packet else "None"))
104+
101105
stopped = Future()
102106
def on_lifecycle_stopped(event: mqtt5.LifecycleStoppedData):
103107
stopped.set_result(True)
@@ -111,6 +115,8 @@ def on_lifecycle_stopped(event: mqtt5.LifecycleStoppedData):
111115
clean_session=True,
112116
keep_alive_secs=1200,
113117
on_lifecycle_connection_success=on_lifecycle_connection_success,
118+
on_lifecycle_connection_failure=on_lifecycle_connection_failure,
119+
on_lifecycle_disconnection=on_lifecycle_disconnection,
114120
on_lifecycle_stopped=on_lifecycle_stopped)
115121

116122
mqtt5_client.start()

0 commit comments

Comments
 (0)