##// END OF EJS Templates
Se corrigio dependencias de .yml acerca de postgres
Se corrigio dependencias de .yml acerca de postgres

File last commit:

r380:34e7637f39b2
r382:53989a0c9888
Show More
mqtt.py
37 lines | 1.3 KiB | text/x-python | PythonLexer
import paho.mqtt.client as mqtt
from radarsys import settings
from radarsys.socketconfig import sio as sio
import numpy as np
def on_connect(mqtt_client, userdata, flags, rc):
if rc == 0:
print('Connected successfully')
mqtt_client.subscribe('atrad/test3')
else:
print('Bad connection. Code:', rc)
def maxima_temp(trs):
np_array = [np.array(i) for i in trs]
temps = [max(i[i<40]) for i in np_array]
return max(temps)
def on_message(mqtt_client, userdata, msg):
print(f'Received message on topic: {msg.topic} with payload: {msg.payload}', flush=True)
trsi = [[],[],[],[]]
mensaje = str(msg.payload)
datos = [i for i in mensaje[21:-1].split("*")]
status=''.join([datos[i][3] for i in [0,1,2,3]])
for trs,i in zip(datos,[0,1,2,3]) :
trsi[i]= [int(i) for i in trs[1:-1].split(",")]
potencias = [trsi[0][34],trsi[0][36],trsi[2][32],trsi[2][34]]
tmax = maxima_temp(trsi)
sio.emit('test', data={'time':mensaje[2:21],'num':trsi[0][0],'pow':potencias,'tmax':str(tmax),'status':status})
client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message
client.username_pw_set(settings.MQTT_USER, settings.MQTT_PASSWORD)
client.connect(
host=settings.MQTT_SERVER,
port=settings.MQTT_PORT,
keepalive=settings.MQTT_KEEPALIVE
)