Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import json
- import httplib2
- #
- # AQE Utility Class
- #
- #
- # Configuration Data
- #
- aqe_feeds = {'1703619548':'EsTjqWQlHyj69kBKBYbtoanldlKxAb7HalVxzW5ef2V5x296'}
- xivelyurl = 'http://api.xively.com/v2/feeds/'
- stream_keys = ('CO','Dust','NO2','Temperature','Humidity')
- class AQEgg(object):
- def __init__(self, host_url, api_key, api_feed):
- self.api_key = api_key
- self.host_url = host_url
- self.api_feed = api_feed
- self.json_headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "application/json", "X-ApiKey": self.api_key}
- self.feed_url = self.host_url + self.api_feed
- def get_json_data(self):
- jsondata = {}
- http = httplib2.Http()
- response, content = http.request(self.feed_url, 'GET', headers=self.json_headers)
- jsondata = json.loads(content)
- if ('OK' in response.reason):
- print(response.status, response.reason)
- return jsondata
- def parse_egg_data(self,datastream_keys, eggdata):
- eggdict = {datastream['id'] : datastream['current_value'] for datastream in eggdata['datastreams'] if (datastream['id'] in datastream_keys)}
- return eggdict
- # Main Loop
- for feed_id in aqe_feeds:
- aqe = AQEgg(xivelyurl, aqe_feeds[feed_id], feed_id)
- aqe_json = aqe.get_json_data()
- aqe_data = aqe.parse_egg_data(stream_keys,aqe_json)
- for key in aqe_data:
- print("%s: %s" % (key, aqe_data[key]))
- #print(" ")
- #print(aqe_json)
- #for datastream in aqe_json['datastreams']:
- # print("{")
- # for key in datastream:
- # print (("\t%s: %s") % (key,datastream[key]))
- # print("}")
- ###############################
Advertisement
Add Comment
Please, Sign In to add comment