예제 #1
0
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
예제 #2
0
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!'
        }
    }
}