コード例 #1
0
def get_specific_sensor_history_data(uuid):
    payload = {'command': 'get_all_claims', 'uuid': uuid}
    response = requests.post(HOST_URL, json=payload)
    claim_list = response.json()
    sensor_data = []
    epoch = []
    device_id = ''
    for tx in claim_list:
        try:
            payload = {'command': 'get_claim_info', 'hash_txn': tx}
            response = requests.post(HOST_URL, json=payload)
            msg = split(response.text)[5]
            msg = msg[11:len(msg) - 1]
            sensor_data.extend(decode(msg)[0])
            epoch.extend(decode(msg)[1])
            device_id = msg.split('|')[4]
        except (IndexError):
            pass
    week_epoch = calendar.timegm(time.gmtime()) - 604800
    history_data = []
    for i in range(0, len(epoch)):
        if epoch[i] > week_epoch:
            history_data.append(sensor_data[i])
    sensor_data_string = ''
    for string in history_data:
        sensor_data_string += string
        sensor_data_string += ','
    json_string = '{"source":"history","feeds":[' + sensor_data_string[
        0:len(sensor_data_string) - 1] + '],"version":"' + time.strftime(
            "%Y-%m-%dT%H:%M:%SZ", time.gmtime()) + '","num_of_records":' + str(
                len(history_data)) + ', "device_id": "' + device_id + '"}'
    return json_string
コード例 #2
0
def get_specific_sensor_latest_data(uuid):
    payload = {'command': 'get_all_claims', 'uuid': uuid}
    response = requests.post(HOST_URL, json=payload)
    claim_list = response.json()
    sensor_data = []
    epoch = []
    device_id = ''
    for tx in claim_list:
        try:
            payload = {'command': 'get_claim_info', 'hash_txn': tx}
            response = requests.post(HOST_URL, json=payload)
            msg = split(response.text)[5]
            msg = msg[11:len(msg) - 1]
            sensor_data.extend(decode(msg)[0])
            epoch.extend(decode(msg)[1])
            device_id = msg.split('|')[4]
        except (IndexError):
            pass
    latest_data_epoch = 0
    latest_data_string = ''
    for i in range(0, len(epoch)):
        if epoch[i] > latest_data_epoch:
            latest_data_epoch = epoch[i]
            latest_data_string = sensor_data[i]

    json_string = '{"source":"latest","feeds":[' + latest_data_string + '],"version":"' + strftime(
        "%Y-%m-%dT%H:%M:%SZ", gmtime()
    ) + '","num_of_records":' + '1' + ', "device_id": "' + device_id + '"}'
    return json_string
コード例 #3
0
def get_specific_sensor_all_data(uuid):
    payload = {'command': 'get_all_claims', 'uuid': uuid}
    response = requests.post(HOST_URL, json=payload)
    claim_list = response.json()
    sensor_data = []
    device_id = ''
    for tx in claim_list:
        try:
            payload = {'command': 'get_claim_info', 'hash_txn': tx}
            response = requests.post(HOST_URL, json=payload)
            msg = split(response.text)[5]
            msg = msg[11:len(msg) - 1]
            sensor_data.extend(decode(msg)[0])
            device_id = msg.split('|')[4]
        except (IndexError):
            pass
    sensor_data_string = ''
    for string in sensor_data:
        sensor_data_string += string
        sensor_data_string += ','
    json_string = '{"source":"all","feeds":[' + sensor_data_string[
        0:len(sensor_data_string) - 1] + '],"version":"' + strftime(
            "%Y-%m-%dT%H:%M:%SZ", gmtime()) + '","num_of_records":' + str(
                len(sensor_data)) + ', "device_id": "' + device_id + '"}'
    return json_string
コード例 #4
0
def get_uuid_list():
    payload = {'command': 'get_all_claims', 'uuid': 'LASSUUIDLIST'}
    response = requests.post(HOST_URL, json=payload)
    claim_list = response.json()
    uuid_list = []
    for tx in claim_list:
        try:
            payload = {'command': 'get_claim_info', 'hash_txn': tx}
            response = requests.post(HOST_URL, json=payload)
            uuid = split(response.text)[5]
            uuid = uuid[11:len(uuid) - 1]
            if uuid not in uuid_list:
                uuid_list.append(uuid)
        except (IndexError):
            pass
    return uuid_list
コード例 #5
0
def get_all_sensor_latest_data():
    uuid_list = get_uuid_list()
    all_latest_data = []
    for uuid in uuid_list:
        payload = {'command': 'get_all_claims', 'uuid': uuid}
        response = requests.post(HOST_URL, json=payload)
        claim_list = response.json()
        sensor_data = []
        epoch = []
        device_id = ''
        for tx in claim_list:
            try:
                payload = {'command': 'get_claim_info', 'hash_txn': tx}
                response = requests.post(HOST_URL, json=payload)
                msg = split(response.text)[5]
                msg = msg[11:len(msg) - 1]
                sensor_data.extend(decode(msg)[0])
                epoch.extend(decode(msg)[1])
                device_id = msg.split('|')[4]
            except (IndexError):
                pass
        latest_data_epoch = 0
        latest_data_string = ''
        for i in range(0, len(epoch)):
            if epoch[i] > latest_data_epoch:
                latest_data_epoch = epoch[i]
                latest_data_string = sensor_data[i]
        if latest_data_string:
            all_latest_data.append(latest_data_string)
    all_latest_data_string = ''
    for string in all_latest_data:
        all_latest_data_string += string
        all_latest_data_string += ','
    json_string = '{"source":"all latest","feeds":[' + all_latest_data_string[
        0:len(all_latest_data_string) - 1] + '],"version":"' + time.strftime(
            "%Y-%m-%dT%H:%M:%SZ", time.gmtime()) + '","num_of_records":' + str(
                len(all_latest_data)) + '}'
    return json_string
コード例 #6
0
ファイル: test.py プロジェクト: DLTcollab/airbox-with-iota
from decode import split
from decode import decode
from uuid_list import get_uuid_list
from specific_sensor_all_data import get_specific_sensor_all_data
from specific_sensor_latest_data import get_specific_sensor_latest_data
from specific_sensor_history_data import get_specific_sensor_history_data
from specific_sensor_date_data import get_specific_sensor_date_data
from all_sensor_latest_data import get_all_sensor_latest_data

print('\n\n\n*****  Test : split()  *****\n')
print('Input (type):\tget_claim_info return value (string)')
print(
    'Output(type):\t[a_part (string), b_part (string), exp_date (string), pic (string), msg (string)]\n'
)
return_value = 'LASSPBUAUAXABBMBOBAB,LASSPBUAUAXABBMBOBAB,,,3|1|PM25|live|8CE7A927|0|120.971042|24.801909|60|WwJioKqdQAJSHToAAmeHTLJDVVUeA0ao'
print(split(return_value))

print('\n\n\n*****  Test : decode()  *****\n')
print('Input (type):\tmsg (string)')
print('Output(type):\t[sensor_data (string), timestamp (string)]\n')
msg = '3|1|PM25|live|8CE7A927|0|120.971042|24.801909|60|WwJioKqdQAJSHToAAmeHTLJDVVUeA0ao'
print(decode(msg))

print('\n\n\n*****  Test : get_uuid_list()  *****\n')
print('Input (type):\tnone ()')
print('Output (type):\tuuid list (list)\n')
print(get_uuid_list())

print('\n\n\n*****  Test : get_specific_sensor_all_data()  *****\n')
print('Input (type):\tuuid (string)')
print('Output (type):\tsensor data (json)\n')