feat(initial_handler.py): add handler for TELEMETRY/INTIIAL msgs
This commit is contained in:
@@ -0,0 +1,33 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
"""Initial telemetry handler."""
|
||||||
|
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
|
from typing import TYPE_CHECKING
|
||||||
|
|
||||||
|
from judas_protocol import Message
|
||||||
|
|
||||||
|
from judas_server.backend.handler.base_handler import BaseHandler
|
||||||
|
|
||||||
|
if TYPE_CHECKING:
|
||||||
|
from judas_server.backend import BackendServer
|
||||||
|
from judas_server.backend.client import Client
|
||||||
|
|
||||||
|
|
||||||
|
class InitialTelemetryHandler(BaseHandler):
|
||||||
|
"""Handles the initial telemetry message from a client."""
|
||||||
|
|
||||||
|
def __init__(self, backend_server: BackendServer) -> None:
|
||||||
|
"""Initialize the handler."""
|
||||||
|
super().__init__(backend_server)
|
||||||
|
|
||||||
|
def handle(self, client: Client, message: Message) -> None:
|
||||||
|
"""Handle the initial telemetry message."""
|
||||||
|
self.logger.debug(
|
||||||
|
f"Handling initial telemetry message from {client}..."
|
||||||
|
)
|
||||||
|
|
||||||
|
client.initial_telemetry = message.payload
|
||||||
|
self.backend_server.known_clients[client.id]["initial_telemetry"] = ( # type: ignore
|
||||||
|
message.payload
|
||||||
|
)
|
||||||
Reference in New Issue
Block a user