-
Notifications
You must be signed in to change notification settings - Fork 0
/
lectorMQTT.py
59 lines (48 loc) · 1.42 KB
/
lectorMQTT.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import serial
import paho.mqtt.client as mqtt
#ARDUINO
puerto = serial.Serial('/dev/ttyACM0', 9600)
entradas = 0
salidas = 0
total = 0;
def conexionExitosa (client, userdata, flags, rc):
#print("Conectados con exito a ioticos.org")
client.subscribe("TM")
client.publish("TM", "Se ha conectado")
def informe ():
cliente.publish('TM', "-----REPORTE-----")
cliente.publish('TM','Total entradas: ' + str(entradas))
cliente.publish('TM','Total salidas: ' + str(salidas))
cliente.publish('TM','Personas dentro: ' + str(total))
cliente.publish('TM',"-----------------\n")
#MQTT
cliente = mqtt.Client()
#cliente.connect("localhost", 1883, 60)
######
cliente.on_connect = conexionExitosa
cliente.username_pw_set("okvhngmo", "9cMFCvD33apD")
cliente.connect("tailor.cloudmqtt.com", 15541, 60)
while True:
cliente.publish("TM","Hola")
lectura = puerto.readline()
#print(lectura)
valor = lectura.rstrip()
#print(valor)
#print(lectura.rstrip('\n'))
if valor == b'1':
print("Notificando entrada...")
#cliente.connect("tailor.cloudmqtt.com", 15541, 60)
cliente.publish("TM", "Se ha detectado una entrada")
entradas += 1;
total += 1;
informe()
else:
if valor == b'0':
if total != 0:
print("Notificando salida...")
#cliente.connect("localhost", 1883, 60)
#cliente.connect("tailor.cloudmqtt.com", 15541, 60)
cliente.publish("TM", "Se ha detectado una salida")
salidas += 1;
total -= 1;
informe()