added dweet and reboot
This commit is contained in:
5
controller/dweet.py
Normal file
5
controller/dweet.py
Normal file
@@ -0,0 +1,5 @@
|
||||
from state.dweet_server import DweetServer
|
||||
import config
|
||||
|
||||
server = DweetServer(config.CONTROLLER_ID)
|
||||
server.send_message("I am aliveeee (again)!");
|
||||
@@ -2,6 +2,7 @@ import config
|
||||
from state.server import Server
|
||||
from state.changer import Changer
|
||||
from state.file import File
|
||||
import commands
|
||||
|
||||
def safely_panic():
|
||||
safe_state = {}
|
||||
@@ -32,3 +33,5 @@ def sync():
|
||||
except:
|
||||
print " panicking safely ! "
|
||||
safely_panic()
|
||||
print " rebooting "
|
||||
commands.getoutput('/sbin/shutdown -r now')
|
||||
|
||||
33
controller/state/dweet_server.py
Normal file
33
controller/state/dweet_server.py
Normal file
@@ -0,0 +1,33 @@
|
||||
import json
|
||||
import requests
|
||||
|
||||
|
||||
DWEET_UID = "5410ab1e-319c-4f14-a2e4-04725df69121"
|
||||
|
||||
class DweetServer(object):
|
||||
"Gets state from server and sends it to the server after change"
|
||||
def __init__(self, controller_id=None):
|
||||
self.url_base = "https://dweet.io:443/dweet/quietly/for/%s" % DWEET_UID
|
||||
self.controller_id = controller_id
|
||||
|
||||
def send_message(self, message):
|
||||
result = requests.post(self.full_url(),
|
||||
{
|
||||
'controller_id': self.controller_id,
|
||||
'message': message
|
||||
})
|
||||
return handle_response(result)
|
||||
|
||||
def full_url(self):
|
||||
if self.controller_id is None:
|
||||
raise ClassNotReadyException("Controller id not set!")
|
||||
if self.url_base is None:
|
||||
raise ClassNotReadyException("URL base not set!")
|
||||
return self.url_base
|
||||
|
||||
|
||||
def handle_response(response):
|
||||
if response.status_code != 200:
|
||||
raise ErrorCommunicatingWithServerException("Response not 200!")
|
||||
else:
|
||||
return response.json()
|
||||
@@ -16,8 +16,6 @@ class Server(object):
|
||||
result = requests.post(self.full_url('state/%s') % self.controller_id, local_state)
|
||||
return handle_response(result)
|
||||
|
||||
|
||||
|
||||
def full_url(self, action):
|
||||
if self.controller_id is None:
|
||||
raise ClassNotReadyException("Controller id not set!")
|
||||
|
||||
Reference in New Issue
Block a user