Implement controllers
This commit is contained in:
@@ -21,10 +21,6 @@ local_broker_port = int(os.environ.get("LOCAL_BROKER_PORT", 1883))
|
||||
api_broker_address = os.environ.get("API_BROKER_ADDRESS", "127.0.0.1")
|
||||
api_broker_port = int(os.environ.get("API_BROKER_PORT", 1883))
|
||||
|
||||
@app.route('/')
|
||||
def hello_world():
|
||||
return 'Hello World!'
|
||||
|
||||
if __name__ == '__main__':
|
||||
local_broker = MQTTService(
|
||||
local_broker_address,
|
||||
@@ -45,26 +41,4 @@ if __name__ == '__main__':
|
||||
forwarder = MQTTForwarder(client_id, local_broker, api_broker)
|
||||
forwarder.start(f"/customer/telemetry/#", f"/board-mate/{client_id}/telemetry")
|
||||
|
||||
"""config = Configuration(
|
||||
host="https://192.168.15.120:8000",
|
||||
)
|
||||
config.verify_ssl = False
|
||||
|
||||
with ApiClient(config) as api_client:
|
||||
client_api = ClientApi(api_client)
|
||||
|
||||
new_client = ClientDto(
|
||||
name=StrictStr("Alice Example"),
|
||||
username=StrictStr("alice123"),
|
||||
)
|
||||
|
||||
try:
|
||||
# 5. Call the endpoint
|
||||
response = client_api.create(client_dto=new_client)
|
||||
print("Success:", response.success)
|
||||
print("Message:", response.message)
|
||||
print("Data:", response.data)
|
||||
except ApiException as e:
|
||||
print(f"Exception when calling ClientApi->create: {e}")"""
|
||||
|
||||
app.run(host="0.0.0.0", port=5000, debug=True)
|
||||
|
||||
34
api-customer/src/controllers/AuthController.py
Normal file
34
api-customer/src/controllers/AuthController.py
Normal file
@@ -0,0 +1,34 @@
|
||||
from board_mate.auth import *
|
||||
from flask import jsonify, request
|
||||
from pydantic import StrictStr
|
||||
|
||||
|
||||
class AuthController:
|
||||
def __init__(self, app):
|
||||
self._register_routes(app)
|
||||
self.config = Configuration(host="https://192.168.15.120:8000")
|
||||
self.config.verify_ssl = False
|
||||
|
||||
def _register_routes(self, app):
|
||||
app.add_url_rule("/client/auth", view_func=self.auth, methods=['POST'])
|
||||
|
||||
def auth(self):
|
||||
try:
|
||||
received_data = request.get_json()
|
||||
with ApiClient(self.config) as client:
|
||||
auth_api = AuthApi(client)
|
||||
|
||||
auth_request = AuthRequestDto(
|
||||
username=StrictStr(received_data["username"]),
|
||||
key=StrictStr(received_data["key"]),
|
||||
)
|
||||
|
||||
response = auth_api.login(auth_request_dto=auth_request)
|
||||
print("Success:", response.success)
|
||||
print("Message:", response.message)
|
||||
print("Data:", response.data)
|
||||
return jsonify(response), 200
|
||||
except Exception as e:
|
||||
print(f"Exception when calling AuthAPI->login: {e}")
|
||||
return jsonify(response), 500
|
||||
|
||||
33
api-customer/src/controllers/ClientController.py
Normal file
33
api-customer/src/controllers/ClientController.py
Normal file
@@ -0,0 +1,33 @@
|
||||
from board_mate.client import Configuration, ApiClient, ClientApi, ClientDto, ApiException
|
||||
from flask import jsonify
|
||||
from pydantic import StrictStr
|
||||
|
||||
|
||||
class GameController:
|
||||
def __init__(self, app):
|
||||
self._register_routes(app)
|
||||
self.config = Configuration(host="https://192.168.15.120:8000")
|
||||
self.config.verify_ssl = False
|
||||
|
||||
def _register_routes(self, app):
|
||||
app.add_url_rule("/client/create", view_func=self.create, methods=['POST'])
|
||||
|
||||
def create(self):
|
||||
with ApiClient(self.config) as api_client:
|
||||
client_api = ClientApi(api_client)
|
||||
|
||||
new_client = ClientDto(
|
||||
name=StrictStr("Alice Example"),
|
||||
username=StrictStr("alice123"),
|
||||
)
|
||||
|
||||
try:
|
||||
response = client_api.create(client_dto=new_client)
|
||||
print("Success:", response.success)
|
||||
print("Message:", response.message)
|
||||
print("Data:", response.data)
|
||||
return jsonify(response), 200
|
||||
except ApiException as e:
|
||||
print(f"Exception when calling ClientApi->create: {e}")
|
||||
return jsonify(response), 500
|
||||
|
||||
Reference in New Issue
Block a user