Skip to content

Repository files navigation

TTool

TTool is an Xposed/LSPosed module for Telegram Android variants. It injects a TTool entry into Telegram's main chat-list top-right options menu, lets the user select cached groups, channels, and contacts, then creates and forwards a bot-owned inline-keyboard message.

Supported Telegram Packages

  • org.telegram.messenger
  • org.telegram.messenger.beta
  • org.telegram.messenger.web

Current Flow

  1. Open Telegram's main chat list.
  2. Tap the top-right options menu.
  3. Tap TTool.
  4. Select recipients by category: groups, channels, contacts.
  5. Enter a Bot Token, message text, button text, and either a URL or callback_data.
  6. The bot sends one source message with inline keyboard to the current Telegram user.
  7. The module resolves the local Telegram message id for that bot message.
  8. The current Telegram account forwards that bot message to the selected recipients.

This avoids relying on user-account MTProto inline keyboards, which can appear locally but are not reliably delivered as real inline keyboards to recipients.

Bot Requirements

  • The current Telegram account must have started the bot, otherwise Bot API cannot send the source DM.
  • URL buttons work without a bot backend.
  • Callback buttons require a bot backend to handle callback queries.
  • Forwarding to targets depends on the current Telegram account's normal permission to send or forward into those chats.

Build

This project currently does not include a Gradle wrapper. Build it with a local Gradle installation compatible with Android Gradle Plugin 9.0.1.

gradle :app:assembleDebug :app:assembleRelease

The generated APKs are:

  • app/build/outputs/apk/debug/app-debug.apk
  • app/build/outputs/apk/release/app-release.apk

Signing

The app is configured with a v2+v3 APK signature in app/build.gradle.kts.

  • Keystore: app/ttool-release.jks
  • Alias: xiaoming123
  • Store password: xiaoming123
  • Key password: xiaoming123
  • v1: disabled
  • v2: enabled
  • v3: enabled
  • v4: disabled

Notes

  • CODEX.md contains the implementation plan, Telegram source research, and design decisions.
  • The old direct SendMessagesHelper inline-keyboard path is kept only as research/debug code. The production path is Bot API seed message plus user-account forwarding.
  • The recipient picker reads Telegram's cached dialog lists through reflection, so Telegram should be opened and allowed to load the chat list before using TTool.

About

Telegram for Android内联键盘消息群发模块

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages