Makarski Bot Connector for Telegram

Changelog

0.3.0

  • New Broadcast feature: send messages to WordPress users with Telegram usernames from a dedicated admin page (Telegram Bot → Broadcast)
  • Per-locale message composition — write separate texts for each language used by your users
  • Message format selector: Plain text, HTML, or MarkdownV2
  • Cron-batched delivery (200 messages/batch, ~20 msg/sec) — safe for large user bases without blocking the site
  • Real-time progress bar with sent/failed counts and estimated time remaining
  • Broadcast history table on the Broadcast page; per-user broadcast history on the user profile page
  • New top-level “Telegram Bot” admin menu with Settings and Broadcast subpages
  • New BotApi method: send_plain_message() — send a message without parse_mode
  • Refactored broadcast admin code into TGBotAdminBroadcast class for consistency

0.2.43

  • Auto-generate webhook secret on plugin activation so the mandatory secret check always has a value
  • Fixed incoming message type detection: reuse already-parsed request object instead of re-calling get_request()

0.2.42

  • Webhook secret is now required: all requests without a valid X-Telegram-Bot-Api-Secret-Token header are rejected
  • Sanitize incoming text fields (message text, caption, callback data) before dispatching to action hooks
  • Validate update_id presence after JSON decode
  • Replaced direct curl in send_multipart_request() with wp_remote_post() + http_api_curl hook

0.2.41

  • Renamed plugin folder and main file to match the approved WordPress.org slug makarski-bot-connector-for-telegram

0.2.40

  • Webhook secret token support (X-Telegram-Bot-Api-Secret-Token header validation)
  • Input sanitization improvements: absint() for chat_id, sanitize_textarea_field() for text in BotApi
  • Core::set_current_user() hardened with get_userdata() check and absint()
  • Added == External Services == section to readme.txt

0.2.30

  • Renamed tgbot_process_multimedia_message to tgbot_message; added deprecated alias for backward compatibility
  • Added tgbot_raw_message hook for advanced use cases
  • Added media_group_id field to normalized message object

0.2.28

  • Fixed PHP 8.5 deprecation: removed curl_close() (no-op since PHP 8.0)
  • Fixed implicit nullable parameter in send_document()

0.2.27

  • Added 11 new BotApi methods: send_chat_action, send_audio, send_voice, send_video, send_animation, forward_message, copy_message, send_location, delete_messages, set_my_commands, refund_star_payment

0.2.26

  • Fixed callback_query commands (inline buttons) not dispatching in polling mode

0.2.25

  • Auto-created user email now uses tg-{chat_id}@{site_domain} instead of {id}@example.com

0.2.22 – 0.2.24

  • Fixed polling reschedule logic: moved to sanitize_callback so Save always applies mode even without settings change
  • Removed debug logging from production code

0.2.18 – 0.2.21

  • Fixed textdomain loading order (PHP notice in WP 6.7+)
  • Fixed finish_request() header order for correct webhook response
  • Fixed polling cron scheduling bugs (namespace, add_option hook, missing cron detection)

0.2.17

  • Fixed polling namespace bug (BotApi → BotApi)
  • Added error logging to wp_schedule_event and polling tick

0.1.0 – 0.2.16

  • Initial implementation: webhook management, polling mode, user auto-creation, Stars payments, command routing, internationalization

Plugin Website
Visit website

Version:
0.3.0
Last Updated
June 9, 2026
Requires
WordPress 6.2
Tested Up To
WordPress 7.0
Requires PHP
8.0

Share Post

Join our newsletter.

Get insights into what’s happening at ChangelogWP right in your inbox. We don’t believe in spam.