Add customer api endpoint for message exchange
This commit is contained in:
30
api-customer/src/controllers/message_controller.py
Normal file
30
api-customer/src/controllers/message_controller.py
Normal file
@@ -0,0 +1,30 @@
|
||||
import json
|
||||
|
||||
from flask import jsonify, request
|
||||
|
||||
from src.services.mqtt_service import MQTTService
|
||||
|
||||
|
||||
class MessageController:
|
||||
|
||||
_mqtt_service : MQTTService = None
|
||||
_client_id : MQTTService = None
|
||||
|
||||
def __init__(self, client_id : str, service : MQTTService):
|
||||
self._mqtt_service = service
|
||||
self.client_id = client_id
|
||||
|
||||
def _register_routes(self, app):
|
||||
app.add_url_rule("/message/send", view_func=self.send, methods=['POST'])
|
||||
|
||||
def send(self):
|
||||
try :
|
||||
req = request.get_json()
|
||||
msg = req["message"]
|
||||
payload = json.dumps({"content" : msg})
|
||||
print(payload)
|
||||
self._mqtt_service.publish(f"/chat/${self.client_id}/message", payload)
|
||||
return jsonify({"success" : True, "message": "An error occurred"}), 500
|
||||
except Exception as e:
|
||||
print(e)
|
||||
return jsonify({"success" : False, "message" : "An error occurred"}), 500
|
||||
Reference in New Issue
Block a user