File size: 599 Bytes
09f1b19
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
"""Multi-channel protocol router."""

from __future__ import annotations

from jenaai.core.module import BaseModule


class Module(BaseModule):
    """Routes messages across channels via the event bus."""

    async def start(self) -> None:
        await self.event_bus.publish(
            "system.log",
            {"message": "MCP handler online", "module": self.metadata.name},
        )

    async def route(self, channel: str, payload: dict) -> None:
        await self.event_bus.publish(
            f"mcp.{channel}",
            {"payload": payload, "module": self.metadata.name},
        )