(de)serialize elements of the Telegram TL language
2a22570e — Timothée Floure 4 years ago
Improve documentation (mostly examples) + bump to version 0.2.1
7730ebb4 — Timothée Floure 4 years ago
Add TL.Binary.reverse_endianness/1
a41fd5de — Timothée Floure 4 years ago
Update documentation for flags + bump version to 0.2.0-beta


browse  log 



You can also use your local clone with git send-email.


This library allows you to serialize and deserialize elements of the TL Language. Take a look to the documentation of the TL module for basic usage.

Since it dynamically match maps against TL schemas, it's far from being efficient and is pretty slow. However, it 'just works' the way it is so let's say it's okay for now. A 'static' version directly generated from TL schemas may come later.

The package and its documentation are on hex.pm. It was originally designed to be used by telegram-mt-elixir.


If no configuration is specified, the API layer 57 [1] will be used. Although this library was only tested with layer versions 23 and 57, you can specify a custom source in you config.exs :

config :telegram_tl, tl_path: "/path/to/mtproto.json",
                     api_version: 57,
                     api_path: "/path/to/api-layer-57.json"

[1] : the last documented version (on telegram.org) is API layer 23.