Add Telegram messenger as alternative to phone calls#16
Open
alexfilatov wants to merge 4 commits intoZeframLou:mainfrom
Open
Add Telegram messenger as alternative to phone calls#16alexfilatov wants to merge 4 commits intoZeframLou:mainfrom
alexfilatov wants to merge 4 commits intoZeframLou:mainfrom
Conversation
a6fa020 to
da0d725
Compare
- Add TelegramBotProvider for Bot API integration - Implement sendMessage, getUpdates, deleteWebhook methods - Add retry logic with exponential backoff for transient errors - Smart retry: skip client errors (4xx) except rate limits (429) - Export provider from providers/index.ts
- Manage text-based conversations via Telegram Bot API - Long-polling for user responses with configurable timeout - Support for multiple concurrent chat sessions - Background command polling for /verbose, /help commands - Broadcast mode for one-way streaming messages - Listen mode for receiving tasks from user
- Add index-telegram.ts as stdio MCP server for Telegram mode - Implement tools: broadcast, send_message, continue_chat, notify_user, end_chat, listen_for_commands - Verbose mode: encourage liberal broadcast usage - Listen mode: optional tool for receiving tasks via Telegram - Update plugin.json with callme-telegram MCP server config - Add marketplace.json category
- Add Telegram quick start guide (Option A in README) - Document MCP server config for ~/.claude.json - Add environment variables: BOT_TOKEN, CHAT_ID, VERBOSE, LISTEN - Update .env.example with Telegram configuration - Explain verbose mode (streaming) and listen mode (remote control)
da0d725 to
4ce259c
Compare
xicv
pushed a commit
to xicv/call-me
that referenced
this pull request
Feb 24, 2026
…m docs Merge community PRs ZeframLou#29 (Cloudflare Tunnel) and ZeframLou#16 (Telegram messenger) with fixes, plus documentation for issues ZeframLou#14, ZeframLou#15, ZeframLou#21, ZeframLou#25. Cloudflare Tunnel (PR ZeframLou#29): - Tunnel abstraction layer with TunnelProvider interface (ngrok + cloudflare) - Deferred MCP initialization for fast handshake, fixes orphaned processes (ZeframLou#14) - Explicit CALLME_ALLOW_UNSIGNED_WEBHOOKS replaces implicit ngrok bypass (ZeframLou#15, ZeframLou#21) - Extract audio-utils.ts, webhook-security.ts with proper TypeScript interfaces - Fix memory leak in waitForHangup, add cleanupCallState helper - 55 unit tests (up from 15) Telegram mode (PR ZeframLou#16): - Free text-based alternative to phone calls via Telegram Bot API - Separate MCP server entry point (index-telegram.ts) - Tools: send_message, continue_chat, notify_user, end_chat, broadcast - Fix JSON syntax errors in plugin.json and package.json Documentation: - Multi-platform support: Gemini CLI, OpenCode config examples (ZeframLou#25) - Improved troubleshooting for Twilio auth errors (ZeframLou#15) and marketplace install (ZeframLou#13) - Updated .env.example with tunnel, security, and Telegram options
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds Telegram as an alternative communication channel alongside the existing phone call functionality. Users can now choose between:
Changes
New Files
server/src/providers/telegram.ts- Telegram Bot API providerserver/src/telegram-chat.ts- Chat manager with long-polling for user responsesserver/src/index-telegram.ts- MCP server entry point for Telegram modeModified Files
server/package.json- Addedstart:telegramanddev:telegramscriptsserver/src/providers/index.ts- Export Telegram provider.claude-plugin/plugin.json- Addedcallme-telegramMCP server.claude-plugin/marketplace.json- Added Telegram plugin option.env.example- Added Telegram configuration optionsREADME.md- Added Telegram quick start guide and tools documentationTelegram Tools
send_messagecontinue_chatnotify_userend_chatSetup (2 minutes)
/newbot→ copy token~/.claude/settings.json:{ "env": { "CALLME_TELEGRAM_BOT_TOKEN": "your-token", "CALLME_TELEGRAM_CHAT_ID": "your-id" } }/plugin install callme@callme-telegramBenefits
Test Plan