Chat On Telegram From libpurple-Based IM Programs (Pidgin, Etc.) Using The New tdlib-purple

Pidgin Telegram tdlib-purple

tdlib-purple is a new libpurple plugin for Telegram, considered the successor of telegram-purple. With this you can chat on Telegram from chat clients that support libpurple, like Pidgin, Finch, Bitlbee, etc. There are binaries for Linux and Microsoft Windows.

This libpurple plugin supports most Telegram features, from basic things like sending and receiving images and documents, and receiving stickers, to 2FA login, kick users, secret chats (support for this was added recently), and more.

As for things that are missing, tdlib-purple doesn't support video calls, renaming groups / channels, self-destruct timers, you can't delete messages, send or receive polls, you can't send stickers, and you can't interact with bots beyond plain text messages. The application also opens muted chats and doesn't allow muting chats from the interface.

All of this is the at the time I'm writing this article. Some things listed as not supported for now should change in future releases. Keep an eye on these missing features and enhancement lists to see when they are resolved.

You may also like this SkypeWeb plugin for libpurple.

Installing and using tdlib-purple

To use Telegram in libpurple-powered chat clients, you'll need to install tdlib-purple. This can easily be done in Debian, Ubuntu (and Ubuntu-based Linux distributions like Linux Mint, Pop!_OS, etc.), Fedora or openSUSE, by using the official tdlib-purple repositories. There's an Arch Linux AUR package, and Windows binary as well.

Now you're ready to chat on Telegram using the libpurple chat client of your choice. You'll need to authenticate your Telegram account with the chat application. For example using Pidgin, go to Accounts -> Manage Accounts, then click Add to add a new account, and from the Protocol drop-down choose Telegram (tdlib):

add telegram pidgin

Then in the same Add Account dialog add your phone number as the username (don't forget to add the country prefix), enter a local alias, and click Add when you're done. You'll receive a login code on Telegram or as a SMS, which you need to enter in the dialog that pops up:

Telegram libpurple authentication

Once you enter the code, Telegram should be integrated with Pidgin, and you can start chatting right away.

To change the tdlib-purple settings, head to Accounts -> Telegram (tdlib) -> Edit account, and on the Advanced tab you'll find options to set how the file downloads work (inline or as regular file transfers), set the inline auto-download size limit, enable secret chats, and rather or not to show animated stickers.

If you're on Telegram, come join the Linux Uprising channel.