added dweet and reboot

This commit is contained in:
Senad Uka
2016-06-08 09:16:44 +02:00
parent f9defb8e2a
commit f8a8284944
4 changed files with 41 additions and 2 deletions

5
controller/dweet.py Normal file
View 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)!");

View File

@@ -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')

View 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()

View File

@@ -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!")