Hermes
Simulation Orchestration Platform for Aerospace
Loading...
Searching...
No Matches
hermes.server.websocket Namespace Reference

Classes

class  ServerConfig
class  ClientState
class  HermesServer

Variables

 log = structlog.get_logger()
 CommandHandler = Callable[[ClientState, Command], Coroutine[Any, Any, ServerMessage | None]]

Detailed Description

WebSocket server for Hermes telemetry and control.

This module provides the HermesServer class that enables external clients
(like Daedalus) to connect, receive telemetry, and send control commands.

Architecture:
    ┌─────────────────────────────────────────┐
    │              HermesServer               │
    ├─────────────────────────────────────────┤
    │  ┌─────────────┐    ┌────────────────┐  │
    │  │   Clients   │    │   Telemetry    │  │
    │  │   (set)     │    │   Encoder      │  │
    │  └─────────────┘    └────────────────┘  │
    │         │                   │           │
    │         ▼                   ▼           │
    │  ┌─────────────────────────────────────┐│
    │  │        Shared Memory                ││
    │  └─────────────────────────────────────┘│
    └─────────────────────────────────────────┘

Variable Documentation

◆ CommandHandler

hermes.server.websocket.CommandHandler = Callable[[ClientState, Command], Coroutine[Any, Any, ServerMessage | None]]

◆ log

hermes.server.websocket.log = structlog.get_logger()