def get_init_mqtt_client(): # Configuration for AWS IoT myMQTTClient = AWSIoTMQTTClient(CLIENT_ID) myMQTTClient.configureEndpoint(ENDPOINT, 8883) myMQTTClient.configureCredentials(ROOT_CA, PRIVATE_KEY, CERTIFICATE_CRT) # myMQTTClient.configureOfflinePublishQueueing(-1) # Infinite offline Publish queueing # myMQTTClient.configureDrainingFrequency(2) # Draining: 2 Hz myMQTTClient.configureConnectDisconnectTimeout(10) # 10 sec myMQTTClient.configureMQTTOperationTimeout(5) # 5 sec myMQTTClient.enableMetricsCollection() return myMQTTClient
UPDATE_TOPIC = "$aws/things/thing" + THING_ID + "/shadow/update" DELTA_TOPIC = "$aws/things/thing" + THING_ID + "/shadow/update/delta" ROOT_CA = CERTIFICATE_PATH + "/rootCA.pem" PRIVATE_KEY = CERTIFICATE_PATH + "/private.key.pem" CERTIFICATE_CRT = CERTIFICATE_PATH + "/certificate.crt.pem" # Configuration for AWS IoT myMQTTClient = AWSIoTMQTTClient(CLIENT_ID) myMQTTClient.configureEndpoint(ENDPOINT, 8883) myMQTTClient.configureCredentials(ROOT_CA, PRIVATE_KEY, CERTIFICATE_CRT) # myMQTTClient.configureOfflinePublishQueueing(-1) # Infinite offline Publish queueing # myMQTTClient.configureDrainingFrequency(2) # Draining: 2 Hz myMQTTClient.configureConnectDisconnectTimeout(10) # 10 sec myMQTTClient.configureMQTTOperationTimeout(5) # 5 sec myMQTTClient.enableMetricsCollection() # Connect to MQTT broker connected = myMQTTClient.connect() print("Connected: ", connected) # Dictionaries and messages for publishing publish_dict = { 'state': { 'reported': { 'device26.69': 29, 'device26.70': 12, 'device27.71': 'Hello World!' } } }