Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import datetime
- import urllib, urllib2, os, pwd ## added pwd
- import simplejson as json ## changed
- client_id = "user"
- client_secret = "secret"
- username = "user"
- password = "password"
- basename = "https://apiflowerpower.parrot.com"
- oauth_bearer = {}
- def api_json(url, params, method='GET', headers={}):
- request = URLRequest(basename+url, params, method, headers=headers)
- request.add_header('Accept-Language', 'en_us')
- result = urllib2.urlopen(request)
- result_string = result.read()
- return json.loads(result_string)
- def URLRequest(url, params, method="GET", headers={}):
- if method == "POST":
- return urllib2.Request(url, headers=headers, data=urllib.urlencode(params))
- else:
- return urllib2.Request(url + "?" + urllib.urlencode(params),headers=headers)
- def test_api_and_dump_to_json(key, url):
- json_data = api_json(url, {}, headers=oauth_bearer, method='GET')
- dump = json.dumps(json_data, indent=4, sort_keys=True)
- data = ('"instruction_key":', dump["locations"]['air_temperature']['instruction_key'],"testoutput")
- # first get OAuth token
- result = api_json('/user/v1/authenticate', {'grant_type':'password','client_id':client_id,'client_secret':client_secret,'username':username, 'password':password}, method='POST')
- access_token = result['access_token']
- oauth_bearer = {'Authorization':'Bearer '+access_token}
- # user data : sync (garden_locations and sensors) and statuses.
- for key,url in (
- ('api-1.28-status','/sensor_data/v1/garden_locations_status'),
- ):
- test_api_and_dump_to_json(key,url)
- indigo.server.log(data,"testoutput")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement