def __init__(self, log=None, config=None): threading.Thread.__init__(self) self.log = log self.config = config #Get values from config self.mysensor_ip = self.config.get('config', 'mysensor_ip') self.mysensor_port = self.config.get('config', 'mysensor_port') self.http_ip = self.config.get('config', 'http_ip') self.http_port = self.config.get('config', 'http_port') self.mqtt_ip = self.config.get('config', 'mqtt_ip') self.mqtt_port = self.config.get('config', 'mqtt_port') self.serial_port = self.config.get('config', 'serial_port') self.serial_baudrate = self.config.get('config', 'serial_baudrate') self.base_topic = self.config.get('config', 'mqtt_topic') # Constants self.BUFFER_SIZE = 48 #Variables s = None client = None self.ser = serial.Serial(self.serial_port, self.serial_baudrate, timeout=1) #open serial interface self.log.info("Start up: Listening on :" + self.serial_port + " using baudrate: " + self.serial_baudrate) self.ser.close() self.ser.open() print("Using Serial port %s at baudrate %s" % (self.serial_port, self.serial_baudrate)) #Give Arduino time to start up. sleep(5) self.client = mqtt.Client(protocol=3) self.client.on_message = self.on_message self.client.on_connect = self.on_connect #self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.mysensor = MySensor(self.log, self.config, self.ser, self.client)
def __init__(self, log=None, config=None): threading.Thread.__init__(self) self.log=log self.config=config #Get values from config self.mysensor_ip = self.config.get('config','mysensor_ip') self.mysensor_port = self.config.get('config','mysensor_port') self.http_ip = self.config.get('config','http_ip') self.http_port = self.config.get('config','http_port') self.mqtt_ip = self.config.get('config','mqtt_ip') self.mqtt_port = self.config.get('config','mqtt_port') self.serial_port = self.config.get('config','serial_port') self.serial_baudrate = self.config.get('config','serial_baudrate') self.base_topic = self.config.get('config','mqtt_topic') # Constants self.BUFFER_SIZE = 48 #Variables s = None client = None self.ser = serial.Serial(self.serial_port,self.serial_baudrate,timeout=1) #open serial interface self.log.info("Start up: Listening on :" + self.serial_port +" using baudrate: "+ self.serial_baudrate) self.ser.close() self.ser.open() print("Using Serial port %s at baudrate %s" % (self.serial_port, self.serial_baudrate)) #Give Arduino time to start up. sleep(5) self.client = mqtt.Client(protocol=3) self.client.on_message = self.on_message self.client.on_connect = self.on_connect #self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.mysensor = MySensor(self.log,self.config,self.ser,self.client)
class mspmqtt(threading.Thread): def __init__(self, log=None, config=None): threading.Thread.__init__(self) self.log = log self.config = config #Get values from config self.mysensor_ip = self.config.get('config', 'mysensor_ip') self.mysensor_port = self.config.get('config', 'mysensor_port') self.http_ip = self.config.get('config', 'http_ip') self.http_port = self.config.get('config', 'http_port') self.mqtt_ip = self.config.get('config', 'mqtt_ip') self.mqtt_port = self.config.get('config', 'mqtt_port') self.serial_port = self.config.get('config', 'serial_port') self.serial_baudrate = self.config.get('config', 'serial_baudrate') self.base_topic = self.config.get('config', 'mqtt_topic') # Constants self.BUFFER_SIZE = 48 #Variables s = None client = None self.ser = serial.Serial(self.serial_port, self.serial_baudrate, timeout=1) #open serial interface self.log.info("Start up: Listening on :" + self.serial_port + " using baudrate: " + self.serial_baudrate) self.ser.close() self.ser.open() print("Using Serial port %s at baudrate %s" % (self.serial_port, self.serial_baudrate)) #Give Arduino time to start up. sleep(5) self.client = mqtt.Client(protocol=3) self.client.on_message = self.on_message self.client.on_connect = self.on_connect #self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.mysensor = MySensor(self.log, self.config, self.ser, self.client) #mqtt def on_connect(self, client, userdata, flags, rc): print("Connected with result code " + str(rc)) self.client.subscribe(self.base_topic + "#") #mqtt def on_message(self, client, userdata, msg): self.mysensor.processMqttMessage(msg) print(msg.topic + " " + str(msg.payload)) #def on_publish(self,client, userdata, msg): # print(msg.topic+" "+str(msg.payload)) def run(self): #check if we can handle reconnect in some why. #self.s.settimeout( 5.0) #self.s.setsockopt( socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1) #self.s.connect((self.mysensor_ip, int(self.mysensor_port))) self.client.connect(self.mqtt_ip, int(self.mqtt_port), 60) self.client.loop_start() self.client.publish(self.base_topic, "startup") while 1: print self.mysensor.loop()
class mspmqtt(threading.Thread): def __init__(self, log=None, config=None): threading.Thread.__init__(self) self.log=log self.config=config #Get values from config self.mysensor_ip = self.config.get('config','mysensor_ip') self.mysensor_port = self.config.get('config','mysensor_port') self.http_ip = self.config.get('config','http_ip') self.http_port = self.config.get('config','http_port') self.mqtt_ip = self.config.get('config','mqtt_ip') self.mqtt_port = self.config.get('config','mqtt_port') self.serial_port = self.config.get('config','serial_port') self.serial_baudrate = self.config.get('config','serial_baudrate') self.base_topic = self.config.get('config','mqtt_topic') # Constants self.BUFFER_SIZE = 48 #Variables s = None client = None self.ser = serial.Serial(self.serial_port,self.serial_baudrate,timeout=1) #open serial interface self.log.info("Start up: Listening on :" + self.serial_port +" using baudrate: "+ self.serial_baudrate) self.ser.close() self.ser.open() print("Using Serial port %s at baudrate %s" % (self.serial_port, self.serial_baudrate)) #Give Arduino time to start up. sleep(5) self.client = mqtt.Client(protocol=3) self.client.on_message = self.on_message self.client.on_connect = self.on_connect #self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.mysensor = MySensor(self.log,self.config,self.ser,self.client) #mqtt def on_connect(self,client, userdata, flags, rc): print("Connected with result code "+str(rc)) self.client.subscribe(self.base_topic+"#") #mqtt def on_message(self,client, userdata, msg): self.mysensor.processMqttMessage(msg) print(msg.topic+" "+str(msg.payload)) #def on_publish(self,client, userdata, msg): # print(msg.topic+" "+str(msg.payload)) def run(self): #check if we can handle reconnect in some why. #self.s.settimeout( 5.0) #self.s.setsockopt( socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1) #self.s.connect((self.mysensor_ip, int(self.mysensor_port))) self.client.connect(self.mqtt_ip, int(self.mqtt_port), 60) self.client.loop_start() self.client.publish(self.base_topic,"startup") while 1 : print self.mysensor.loop()