feat(broker+cli): multi-tenant telegram bridge with 4 entry points
- DB: mesh.telegram_bridge table + migration - Broker: telegram-bridge.ts (Grammy bot + WS pool + routing) - Broker: telegram-token.ts (JWT connect tokens) - Broker: POST /tg/token endpoint + bridge boot on startup - CLI: claudemesh connect/disconnect telegram commands - Spec: docs/telegram-bridge-spec.md Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
16
packages/db/migrations/0016_telegram-bridge.sql
Normal file
16
packages/db/migrations/0016_telegram-bridge.sql
Normal file
@@ -0,0 +1,16 @@
|
||||
CREATE TABLE IF NOT EXISTS mesh.telegram_bridge (
|
||||
id text PRIMARY KEY NOT NULL,
|
||||
chat_id bigint NOT NULL,
|
||||
chat_type text DEFAULT 'private',
|
||||
chat_title text,
|
||||
mesh_id text NOT NULL REFERENCES mesh.mesh(id) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||
member_id text REFERENCES mesh.member(id),
|
||||
pubkey text NOT NULL,
|
||||
secret_key text NOT NULL,
|
||||
display_name text DEFAULT 'telegram',
|
||||
active boolean DEFAULT true,
|
||||
created_at timestamp DEFAULT now() NOT NULL,
|
||||
disconnected_at timestamp
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS telegram_bridge_chat_mesh_idx ON mesh.telegram_bridge (chat_id, mesh_id);
|
||||
Reference in New Issue
Block a user