Skip to content

feat(telegram): enable message_reaction + callback_query in allowedUpdates#2544

Open
smith-vosburg wants to merge 1 commit into
nanocoai:channelsfrom
vosburg-auto:channels-allowed-updates-reactions
Open

feat(telegram): enable message_reaction + callback_query in allowedUpdates#2544
smith-vosburg wants to merge 1 commit into
nanocoai:channelsfrom
vosburg-auto:channels-allowed-updates-reactions

Conversation

@smith-vosburg
Copy link
Copy Markdown

@smith-vosburg smith-vosburg commented May 18, 2026

Type of Change

  • Feature skill - adds a channel or integration (source code changes + SKILL.md)
  • Utility skill - adds a standalone tool (code files in .claude/skills/<name>/, no source changes)
  • Operational/container skill - adds a workflow or agent skill (SKILL.md only, no source changes)
  • Fix - bug fix or security fix to source code
  • Simplification - reduces or simplifies source code
  • Documentation - docs, README, or CONTRIBUTING changes only

Description

Without explicitly setting allowedUpdates, Telegram excludes update types it considers "advanced" from the polling response by default, including message_reaction (added in Bot API 7.0, Feb 2024) and callback_query. Once any explicit list is provided, all wanted types must be enumerated.

This passes longPolling.allowedUpdates with the existing default pair (message, edited_message) plus callback_query and message_reaction. The Chat SDK's processReaction handler is already wired end-to-end — this commit just asks Telegram to deliver the events. callback_query is added pre-emptively so future inline-keyboard adopters don't need another config edit.

Behavior for groups that don't consume reactions or callback queries is unchanged — they simply receive update types they ignore (same as today they receive edited_message updates that most don't act on).

Diff

// src/channels/telegram.ts, around line 205 inside createTelegramAdapter({ ... })
longPolling: {
  allowedUpdates: ['message', 'edited_message', 'callback_query', 'message_reaction'],
},

Test plan

  • Re-run /add-telegram skill, observe groups created on this branch receive 👍/👎 reaction events via the existing processReaction handler
  • Confirm groups with reactions disabled still ignore the events (no behavior change for non-consumers)
  • Verify edited_message and message baseline behavior unchanged

🤖 Generated with Claude Code

…dates

Without explicitly setting `allowedUpdates`, Telegram excludes update
types it considers "advanced" from the polling response by default,
including `message_reaction` (added in Bot API 7.0, Feb 2024) and
`callback_query`. Once any explicit list is provided, all wanted types
must be enumerated.

This passes `longPolling.allowedUpdates` with the existing default pair
(`message`, `edited_message`) plus `callback_query` and `message_reaction`.
The Chat SDK's `processReaction` handler is already wired end-to-end —
this commit just asks Telegram to deliver the events. `callback_query`
is added pre-emptively so future inline-keyboard adopters don't need
another config edit.

Behavior for groups that don't consume reactions or callback queries is
unchanged — they simply receive update types they ignore (same as today
they receive `edited_message` updates that most don't act on).

Co-Authored-By: Claude Opus 4.7 <[email protected]>
@github-actions github-actions Bot added the follows-guidelines PR was created using the current contributing template label May 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

follows-guidelines PR was created using the current contributing template

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant