Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #
- # some intro python for connecting to xively
- # uses my "read only" api key so I can share data
- #
- # code based on API details from Xively
- #
- import os
- import xively
- import subprocess
- import time
- import datetime
- import requests
- import pylab
- # extract feed_id and api_key from environment variables
- #FEED_ID = os.environ["FEED_ID"]
- #API_KEY = os.environ["API_KEY"]
- #
- FEED_ID = 585978764
- API_KEY = "6zW6qoPCIsFJOcVackY9FUfDhjHWlCxIteHTSRi77RzpXShx"
- DEBUG = False
- # initialize api client
- api = xively.XivelyAPIClient(API_KEY)
- # function to return a datastream object. This either creates a new datastream,
- # or returns an existing one
- def get_datastream(feed,stream_name):
- try:
- datastream = feed.datastreams.get(stream_name)
- if DEBUG:
- print "Found existing datastream"
- return datastream
- except:
- if DEBUG:
- print "Creating new datastream"
- datastream = feed.datastreams.create("load_avg", tags="load_01")
- return datastream
- # main program entry point - runs continuously updating our datastream with the
- # current 1 minute load average
- def xivelyRead(datastream_list):
- print "Getting Xively Data"
- feed = api.feeds.get(FEED_ID)
- for stream_name in datastream_list:
- datastream = get_datastream(feed,stream_name)
- try:
- print ("{0}: {1}".format(stream_name, datastream.current_value))
- except requests.HTTPError as e:
- print("HTTPError({0}): {1}".format(e.errno, e.strerror))
- time.sleep(10)
- sensor_feeds = ["CO","Dust","NO2","Humidity","Temperature"]
- xivelyRead(sensor_feeds)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement