/** * Telegram Bot 桥接层 * * 参考 OpenClaw 的 Chat-First 设计: * - 通过 Telegram 收发消息,作为主交互入口 * - 支持自然语言指令、命令菜单、Inline Keyboard * - 执行结果实时反馈 * - 文件/图片交互(发图 → 上传图床 → AI 配文) * - Heartbeat 主动推送 * * 使用 grammy 框架(TypeScript 原生) */ import type { AgentCore } from "../agent.js"; export interface TelegramBridgeConfig { /** Telegram Bot Token (从 @BotFather 获取) */ token: string; /** 允许的用户 ID 列表(安全控制,为空则允许所有人) */ allowedUsers?: number[]; /** Bot 名称 */ botName?: string; /** 是否启用 Heartbeat */ enableHeartbeat?: boolean; /** Heartbeat 间隔(毫秒),默认 4 小时 */ heartbeatInterval?: number; } export declare class TelegramBridge { private bot; private agent; private config; private heartbeatTimer; private activeChatIds; constructor(agent: AgentCore, config: TelegramBridgeConfig); private setupMiddleware; private setupCommands; private setupMessageHandlers; private handleInstruction; private formatTaskResult; /** * 启动 Heartbeat 定时推送 * 定时向活跃用户推送摘要 */ startHeartbeat(): void; /** 发送 Heartbeat 消息 */ sendHeartbeat(): Promise; /** 向特定 Chat 发送消息(用于外部调用) */ sendMessage(chatId: number, text: string): Promise; /** 启动 Bot */ start(): Promise; /** 停止 Bot */ stop(): Promise; } //# sourceMappingURL=telegram.d.ts.map