def parse_xbee_rf_data(data):
if DEBUG:
print data
node_addr = binascii.b2a_hex(data['source_addr_long']) + binascii.b2a_hex((data['source_addr']))
readings = re.findall("{.*?}", data['rf_data']) # returns a list of K-V pair matches
payload = {'node': node_addr}
for reading in readings:
item_dict = json.loads(reading)
for k, v in item_dict.iteritems():
sensor_name = k.encode('utf-8')
sensor_value = v.encode('utf-8')
if sensor_name == "temp:":
sensor_name = "temp"
payload['sensor'] = sensor_name
payload['val'] = sensor_value
# now pass the payload to the RequestBuilder and send it
print payload
if PRODUCTION:
sendHTTPPost(payload)
评论列表
文章目录