import paho.mqtt.client as mqtt
import os

# The callback for when the client receives a CONNACK response from the server.
def on_connect(client, userdata, flags, rc):
    print("Connected with result code "+str(rc))

    # Subscribing in on_connect() means that if we lose the connection and
    # reconnect then subscriptions will be renewed.
    client.subscribe("regulator/janovladani")

# The callback for when a PUBLISH message is received from the server.
def on_message(client, userdata, msg):
    print(msg.topic+" "+str(msg.payload))
    if(msg.payload == "rstglinet"):
	print "restartuji"
	os.system("reboot")
    if("t3xt" in msg.payload):
	cast = msg.payload.split("_")
	if len(cast) >1:
	   os.system("echo \"" + cast[1] + "\" > /dev/ttyS1")

client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message

client.connect("emon.solareco.cz", 1883, 60)
#client.connect("localhost", 1883, 60)

# Blocking call that processes network traffic, dispatches callbacks and
# handles reconnecting.
# Other loop*() functions are available that give a threaded interface and a
# manual interface.
client.loop_forever()
