with open(rootCAPath, "w") as f: f.write(requests.get( "https://www.symantec.com/content/en/us/enterprise/verisign/roots/VeriSign-Class%203-Public-Primary-Certification-Authority-G5.pem").text) except Exception as e: logger = logging.getLogger('errors') print("error getting certs!!!!") logger.debug("Messenger Error: Certificate and Private Key ENV Variable Missing! %s", e) mqtt_client = AWSIoTMQTTClient(clientId) mqtt_client.configureEndpoint(host, port) mqtt_client.configureCredentials(rootCAPath, privateKeyPath, certificatePath) mqtt_client.on_connect = on_connect mqtt_client.on_message = on_message mqtt_client.on_publish = on_publish mqtt_client.on_disconnect = on_disconnect mqtt_client.configureAutoReconnectBackoffTime(1, 32, 20) mqtt_client.configureOfflinePublishQueueing(-1) # Infinite offline Publish self.in_topicqueueing mqtt_client.configureDrainingFrequency(2) # Draining: 2 Hz mqtt_client.configureConnectDisconnectTimeout(10) # 10 sec mqtt_client.configureMQTTOperationTimeout(5) # 5 sec mqtt_client.connect() mqtt_client.subscribe("babylon/farm_out",1,on_message) while True: print("mqtt still alive!") mqtt_client.publish("babylon/farm_out","test2", 1) sleep(15)