add alert endpoint
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2021-06-12 21:07:43 +02:00
parent 22f4ed3c8d
commit 06597d46a5
2 changed files with 25 additions and 10 deletions

View File

@@ -1,4 +1,6 @@
#!/usr/bin/env python3
import json
from flask_restful import Resource
from mqtt_flask_instance import mqtt
import config
@@ -23,7 +25,7 @@ class DeviceOfflineResrouce(Resource):
:param deviceid: ID of device
:return:
"""
mqtt.publish(f"{config.MQTT_COMMAND_TOPIC}/{deviceid}", {"command": "offline"})
mqtt.publish(f"{config.MQTT_COMMAND_TOPIC}/{deviceid}", json.dumps({"command": "offline"}))
class DeviceOnlineResrouce(Resource):
@@ -36,7 +38,7 @@ class DeviceOnlineResrouce(Resource):
:param deviceid: ID of device
:return:
"""
mqtt.publish(f"{config.MQTT_COMMAND_TOPIC}/{deviceid}", {"command": "online"})
mqtt.publish(f"{config.MQTT_COMMAND_TOPIC}/{deviceid}", json.dumps({"command": "online"}))
class SensorOfflineResource(Resource):
@@ -50,7 +52,7 @@ class SensorOfflineResource(Resource):
:param sensorid: ID of sensor
:return:
"""
mqtt.publish(f"{config.MQTT_COMMAND_TOPIC}/{deviceid}/{sensorid}", {"command": "offline"})
mqtt.publish(f"{config.MQTT_COMMAND_TOPIC}/{deviceid}/{sensorid}", json.dumps({"command": "offline"}))
class SensorOnlineResource(Resource):
@@ -64,4 +66,17 @@ class SensorOnlineResource(Resource):
:param sensorid: ID of sensor
:return:
"""
mqtt.publish(f"{config.MQTT_COMMAND_TOPIC}/{deviceid}/{sensorid}", {"command": "online"})
mqtt.publish(f"{config.MQTT_COMMAND_TOPIC}/{deviceid}/{sensorid}", json.dumps({"command": "online"}))
class AlertResource(Resource):
"""
Force alert on device
"""
def post(self, deviceid: str):
"""
Shut down a sensor of a device
:param deviceid: ID of device
:return:
"""
mqtt.publish(f"{config.MQTT_COMMAND_TOPIC}/{deviceid}", json.dumps({"command": "doAlert"}))