PHPackages                             bootdesk/chat-sdk-adapter-telegram - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. bootdesk/chat-sdk-adapter-telegram

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

bootdesk/chat-sdk-adapter-telegram
==================================

Telegram adapter for bootdesk/chat-sdk-core

0.4.44(2w ago)0166MITPHPPHP &gt;=8.2

Since Jun 4Pushed 1w agoCompare

[ Source](https://github.com/bootdesk/chat-sdk-adapter-telegram)[ Packagist](https://packagist.org/packages/bootdesk/chat-sdk-adapter-telegram)[ RSS](/packages/bootdesk-chat-sdk-adapter-telegram/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (24)Versions (38)Used By (0)

bootdesk/chat-sdk-adapter-telegram
==================================

[](#bootdeskchat-sdk-adapter-telegram)

Telegram adapter for the laravel-bootdesk multi-platform messaging framework.

Install
-------

[](#install)

```
composer require bootdesk/chat-sdk-adapter-telegram
```

Requires a PSR-18 HTTP client (`guzzlehttp/guzzle`, `symfony/http-client`, etc.) and a PSR-17 factory (`nyholm/psr7` bundled).

Configuration
-------------

[](#configuration)

VariableDescriptionExample`bot_token`Telegram Bot Token (from @BotFather)`123456:ABC-DEF...``http_client`PSR-18 HTTP client instance`new GuzzleHttp\Client``secret_token`Webhook secret token`my-secret...````
use BootDesk\ChatSDK\Telegram\TelegramAdapter;

$adapter = new TelegramAdapter(
    botToken: env('TELEGRAM_BOT_TOKEN'),
    httpClient: new \GuzzleHttp\Client,
    secretToken: env('TELEGRAM_SECRET_TOKEN'),
);
```

### Laravel

[](#laravel)

The `ChatServiceProvider` auto-binds `Psr\Http\Client\ClientInterface` to `GuzzleHttp\Client`. Add to `config/chat.php`:

```
'telegram' => [
    'bot_token'    => env('TELEGRAM_BOT_TOKEN'),
    'secret_token' => env('TELEGRAM_SECRET_TOKEN'),
],
```

Quick Example
-------------

[](#quick-example)

```
// Post a message to a chat
$adapter->postMessage('telegram:123456789', 'Hello from laravel-bootdesk!');

// Post in a topic forum
$adapter->postMessage('telegram:-100123456789:42', 'Topic message');
```

Thread ID Format
----------------

[](#thread-id-format)

FormatDescription`telegram:{chatId}`Direct message or group chat`telegram:{chatId}:{messageThreadId}`Topic within a forumWebhook
-------

[](#webhook)

Telegram sends updates via webhook. Verify requests using the `secret_token` parameter set during webhook registration.

Custom Keyboards
----------------

[](#custom-keyboards)

Pass keyboard value objects via `PostableMessage::$metadata['reply_markup']`:

```
use BootDesk\ChatSDK\Core\PostableMessage;
use BootDesk\ChatSDK\Telegram\Keyboard\KeyboardButton;
use BootDesk\ChatSDK\Telegram\Keyboard\ReplyKeyboardMarkup;

// Custom reply keyboard with location request
$thread->post(new PostableMessage(
    content: 'Choose an option:',
    metadata: [
        'reply_markup' => new ReplyKeyboardMarkup(
            keyboard: [
                [new KeyboardButton('Help')],
                [new KeyboardButton('Share Location', requestLocation: true)],
                [new KeyboardButton('Share Contact', requestContact: true)],
            ],
            resizeKeyboard: true,
            oneTimeKeyboard: true,
        ),
    ],
));
```

### Types

[](#types)

Value objectTelegram API equivalent`ReplyKeyboardMarkup`Custom reply keyboard`InlineKeyboardMarkup`Inline keyboard (standalone)`ForceReply`Force reply`ReplyKeyboardRemove`Remove custom keyboard`KeyboardButton`text / request\_location / request\_contact / request\_poll / web\_app`InlineKeyboardButton`text / callback\_data / url / web\_app`WebAppInfo`urlMetadata `reply_markup` takes precedence over the card-generated inline keyboard. Raw arrays also accepted for power users.

### Reply-to-Message

[](#reply-to-message)

```
$thread->post(new PostableMessage(
    content: 'Reply to this',
    replyToMessageId: '42',
));
```

Feature Matrix
--------------

[](#feature-matrix)

FeatureSupportedPost messages✓Edit messages✓Delete messages✓Reactions✓Reply keyboards✓Inline keyboards✓Force reply✓Typing indicator✓Fetch messages✓Fetch thread info✓Fetch channel info✓Get user✓Open DM✓Stream✓Reply-to-message✓Stickers (send/receive)✓Animations (send/receive)✓Video notes (send/receive)✓Notes
-----

[](#notes)

Supports inline keyboards, custom reply keyboards, force reply, bot commands, group chats, and topic forums.

Documentationn
--------------

[](#documentationn)

Full API documentation:

License
-------

[](#license)

MIT

###  Health Score

44

—

FairBetter than 90% of packages

Maintenance97

Actively maintained with recent releases

Popularity15

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~1 days

Total

37

Last Release

14d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/3874705?v=4)[Vin](/maintainers/tryvin)[@tryvin](https://github.com/tryvin)

---

Top Contributors

[![tryvin](https://avatars.githubusercontent.com/u/3874705?v=4)](https://github.com/tryvin "tryvin (1 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/bootdesk-chat-sdk-adapter-telegram/health.svg)

```
[![Health](https://phpackages.com/badges/bootdesk-chat-sdk-adapter-telegram/health.svg)](https://phpackages.com/packages/bootdesk-chat-sdk-adapter-telegram)
```

###  Alternatives

[tempest/framework

The PHP framework that gets out of your way.

2.2k34.4k16](/packages/tempest-framework)[typo3/cms

TYPO3 CMS is a free open source Content Management Framework initially created by Kasper Skaarhoj and licensed under GNU/GPL.

1.2k1.9M122](/packages/typo3-cms)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

751291.4k46](/packages/civicrm-civicrm-core)[getbrevo/brevo-php

Official Brevo provided RESTFul API V3 php library

1003.9M50](/packages/getbrevo-brevo-php)[flow-php/flow

PHP ETL - Extract Transform Load - Data processing framework

85036.3k](/packages/flow-php-flow)[typo3/cms-core

TYPO3 CMS Core

3713.2M5.2k](/packages/typo3-cms-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
