import logging from fastapi import APIRouter, Request from control_backend.schemas.ri_message import SpeechCommand logger = logging.getLogger(__name__) router = APIRouter() @router.post("/command", status_code=202) async def receive_command(command: SpeechCommand, request: Request): # Validate and retrieve data. SpeechCommand.model_validate(command) topic = b"command" pub_socket = request.app.state.endpoints_pub_socket await pub_socket.send_multipart([topic, command.model_dump_json().encode()]) return {"status": "Command received"}