Advertisement
2n2u

Untitled

Jun 18th, 2017
25
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.13 KB | None | 0 0
  1. from requests import get, post
  2. import json
  3. import sys
  4.  
  5. entities = ['switch.pc_speakers']
  6. payload = {}
  7. post_url = 'https://hass_url/api/services/switch/toggle'
  8. get_url = 'https://hass_url/api/states/'
  9. headers = {'x-ha-access': 'pw_hass',
  10.            'content-type': 'application/json'}
  11.  
  12. get_internal_url = '/ay?o=1'
  13. speakers_ip = 'http://192.168.1.96'
  14.  
  15. use_hass = False
  16.  
  17. def toggle_state(entity):
  18.     payload['entity_id'] = entity
  19.     json_payload = json.dumps(payload)
  20.     response = post(post_url, headers=headers, data=json_payload)
  21.     return json.loads(response.text)
  22.  
  23.  
  24. def get_state(entity):
  25.     response = get(get_url + entity, headers=headers)
  26.     json_response = json.loads(response.text)
  27.     return json_response
  28.  
  29.  
  30. if sys.argv[1] == 'shutdown':
  31.     if not use_hass:
  32.         get(speakers_ip + get_internal_url)
  33.     else:
  34.         if get_state(entities[0])['state'] == 'on':
  35.             toggle_state(entities[0])
  36. elif sys.argv[1] == 'startup':
  37.     if not use_hass:
  38.         get(speakers_ip + get_internal_url)
  39.     else:
  40.         if get_state(entities[0])['state'] == 'off':
  41.             toggle_state(entities[0])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement