在AWS IoT设备SDK中,设备在订阅主题后,默认情况下会保持与MQTT代理的持久连接。但是,如果你想在订阅消息后自动断开连接,可以使用以下代码示例:
import time
import boto3
# 创建AWS IoT客户端
iot_client = boto3.client('iot')
# 订阅主题
def subscribe_to_topic(topic):
# 订阅主题
iot_client.subscribe(
topic=topic,
qos=1
)
print('已订阅主题: ' + topic)
# 设定订阅超时时间
time.sleep(5)
# 断开连接
iot_client.disconnect()
print('已断开连接')
# 测试代码
if __name__ == '__main__':
topic = 'your/topic'
subscribe_to_topic(topic)
在上述代码中,我们使用AWS IoT客户端创建了一个与AWS IoT服务的连接。然后,我们定义了一个subscribe_to_topic函数,用于订阅指定的主题。在订阅主题后,我们使用time.sleep方法设定了一个等待时间(这里设定为5秒),然后使用iot_client.disconnect方法断开与AWS IoT服务的连接。
请注意,这只是一个示例代码,你可以根据自己的需求进行修改和扩展。