in generateTelemetry.py [0:0]
def main(profile, vin):
#Set Config path
CONFIG_PATH = 'config.ini'
payloadhandler = payloadHandler(CONFIG_PATH)
#c = Cognito(profile)
#m = ConnectedMobility(profile, stackname)
config = Config(CONFIG_PATH)
config_parameters = config.get_section('SETTINGS')
#ENDPOINT = config_parameters['IOT_ENDPOINT']
i = IOT(profile,"", "", CONFIG_PATH)
ENDPOINT = i.iotEndpoint
CLIENT_ID = vin
PATH_TO_CERT = "{}/{}".format(config_parameters['SECURE_CERT_PATH'].format(unique_id=CLIENT_ID), config_parameters['PROD_CERT'])
PATH_TO_KEY = "{}/{}".format(config_parameters['SECURE_CERT_PATH'].format(unique_id=CLIENT_ID), config_parameters['PROD_KEY'])
PATH_TO_ROOT = "{}/{}".format(config_parameters['ROOT_CERT_PATH'], config_parameters['ROOT_CERT'])
event_loop_group = io.EventLoopGroup(1)
host_resolver = io.DefaultHostResolver(event_loop_group)
client_bootstrap = io.ClientBootstrap(event_loop_group, host_resolver)
test_MQTTClient = mqtt_connection_builder.mtls_from_path(
endpoint=ENDPOINT,
cert_filepath=PATH_TO_CERT,
pri_key_filepath=PATH_TO_KEY,
client_bootstrap=client_bootstrap,
ca_filepath=PATH_TO_ROOT,
client_id=CLIENT_ID,
clean_session=False,
on_connection_interrupted=on_connection_interrupted,
on_connection_resumed=on_connection_resumed,
keep_alive_secs=6)
print("Connecting with Prod certs to {} with client ID '{}'...".format(ENDPOINT, CLIENT_ID))
connect_future = test_MQTTClient.connect()
connect_future.result()
print("Connected with production certificates to the endpoint")
tripId = uuid.uuid4().hex
print("Generating Trip ID of {}".format(tripId))
latLongDict = payloadhandler.generateLatLongFromCSV()
print("Begin publishing trip data. Will publish {} payloads".format(len(latLongDict)))
startCoords = next(iter(latLongDict))
endCoords = list(latLongDict)[-1]
startTime = payloadhandler.getTimestampMS()
for i in latLongDict:
payload = payloadhandler.getPayload( i, tripId, CLIENT_ID)
payloadhandler.publishPayload(test_MQTTClient, payload, CLIENT_ID)
print("Successfully published coordinates {} of {}".format(i, len(latLongDict)))
time.sleep(1)
trippayload = payloadhandler.getTripPayload(startTime, startCoords, endCoords, tripId, CLIENT_ID)
payloadhandler.publishTripPayload(test_MQTTClient, trippayload, CLIENT_ID)
print("Trip data published sucessfully")
exit()