#telegram-api #mt-proto #telegram #api

grammers-mtsender

A sender implementation using the Mobile Transport Protocol

9 releases (breaking)

Uses new Rust 2024

0.8.1 Nov 4, 2025
0.7.0 Sep 17, 2024
0.5.1 May 3, 2024
0.5.0 Nov 18, 2023
0.1.0 Jan 31, 2020

#1183 in Network programming

Download history 381/week @ 2025-09-26 300/week @ 2025-10-03 298/week @ 2025-10-10 1498/week @ 2025-10-17 967/week @ 2025-10-24 1028/week @ 2025-10-31 709/week @ 2025-11-07 349/week @ 2025-11-14 411/week @ 2025-11-21 460/week @ 2025-11-28 269/week @ 2025-12-05 279/week @ 2025-12-12 434/week @ 2025-12-19 491/week @ 2025-12-26 657/week @ 2026-01-02 769/week @ 2026-01-09

2,384 downloads per month
Used in 6 crates (3 directly)

MIT/Apache

515KB
8K SLoC

This library serves to abstract the connection to Telegram's servers.

The Sender is the base building block that manages a single network connection, the transport state, and the MTP state, as well as taking care of buffering messages before sending them off in a single container.

To interact with the API, it is often needed to create more than one connection, for either migrations during sign in or media downloads. To that end, the SenderPool is the one that manages any number of Sender. This will commonly be the entry point to using this library.

Generally, there will be a single SenderPool instance per client, although many tasks can share access to the same SenderPool via multiple SenderPoolHandles.


grammers-mtsender

This library contains a sender using the Mobile Transport Protocol, which is capable of connecting to Telegram, sending and receiving messages through the network.

Dependencies

~5–24MB
~290K SLoC