Try it from the starter
Terminal
get_menu.
Use your own bot
Configure a Telegram sender in Flow Messaging, then setFLOW_MESSAGING_KEY and
FLOW_MESSAGING_TELEGRAM_SENDER in your runtime. The starter’s fm.channels() includes Telegram.
For a custom entry point, pass channels: [fm.telegram()] to buildAgent, call
await agent.resume() and start fm.start(agent, { cursorFile }).
See the adapter guide
for the connection options.
What changes on Telegram
- The agent writes Markdown; the adapter sends it as Telegram’s HTML. Inline keyboards take up to ten buttons.
- Photos can carry captions and a keyboard. Telegram has no carousel, so a carousel goes as its text, then one message per card in order: the card’s photo with its text as caption and its buttons under it. A card with buttons needs a text, or the carousel is refused before anything is sent.
- Bot read receipts are not available.
- The channel address is the Telegram user id, not a verified phone number.
resolve if an authenticated Telegram
identity should map to an account in your product. Keep shared trial bots for testing;
use your own sender for customer conversations.