initial commit of bin scripts into git
This commit is contained in:
47
sec_light.py
Executable file
47
sec_light.py
Executable file
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/python3
|
||||
|
||||
import sys
|
||||
import requests
|
||||
import json
|
||||
from urllib.parse import quote_plus
|
||||
|
||||
|
||||
def set_netatmo_light(mode):
|
||||
payload = {'grant_type': 'password',
|
||||
'username': "house+netatmo@depaoli.id.au",
|
||||
'password': "rCC$SEaut4%uVjnZ",
|
||||
'client_id': "5dbd517c41a113807a58028d",
|
||||
'client_secret': "pQbSB7n0oNgInEnv0l89mLxaiGkiImln",
|
||||
'scope': 'read_presence access_presence write_presence'}
|
||||
|
||||
try:
|
||||
response = requests.post("https://api.netatmo.com/oauth2/token", data=payload)
|
||||
response.raise_for_status()
|
||||
access_token=response.json()["access_token"]
|
||||
refresh_token=response.json()["refresh_token"]
|
||||
scope=response.json()["scope"]
|
||||
except requests.exceptions.HTTPError as error:
|
||||
print(error.response.status_code, error.response.text)
|
||||
|
||||
try:
|
||||
params = { 'access_token': access_token }
|
||||
response = requests.post("https://api.netatmo.com/api/gethomedata", params=params)
|
||||
response.raise_for_status()
|
||||
data = response.json()["body"]
|
||||
homes = data["homes"]
|
||||
cameras = homes[0]["cameras"]
|
||||
name = cameras[0]["name"]
|
||||
camera_vpn = cameras[0]["vpn_url"]
|
||||
|
||||
config = '{"mode":"'+mode+'"}'
|
||||
command = '/command/floodlight_set_config?config='
|
||||
set_url = camera_vpn + command + quote_plus(config)
|
||||
rsp = requests.post(set_url, data=payload)
|
||||
print(set_url)
|
||||
print(rsp)
|
||||
except requests.exceptions.HTTPError as error:
|
||||
print(error.response.status_code, error.response.text)
|
||||
|
||||
|
||||
set_netatmo_light( sys.argv[1] )
|
||||
|
||||
Reference in New Issue
Block a user