Zhabogram 2.0 — bridge from Jabber to Telegram

Zhabogram — a bridge (gateway) from the Jabber (XMPP) network to the Telegram network, written in Ruby. The successor to tg4xmpp.

  • Dependencies

    • Ruby >= 1.9
    • xmpp4r == 0.5.6
    • tdlib-ruby == 2.0 with compiled tdlib == 1.3
  • Capabilities

    • Authorization in an existing Telegram account
    • Syncing chat list with roster
    • Syncing contact statuses with roster
    • Adding and removing Telegram contacts
    • Support for VCard with avatars
    • Sending, receiving, editing, and deleting messages
    • Handling quotes and forwarded messages
    • Sending and receiving files and special messages (support for photos, videos, audio, documents, voice messages, stickers, animations, locations, system messages)
    • Support for secret chats
    • Creating, managing, and moderating chats/supergroups/channels
    • Session preservation and automatic reconnection when logging into XMPP
    • Retrieving history and searching through messages
    • Managing Telegram account
  • Notable changes before version 1.0, news of which was not available on LOR:

    • Added handling of SIGINT with proper closure of all sessions
    • Support for iq:jabber:register (user registration), iq:jabber:gateway (contact search) added (and later removed)
    • Long struggles with the profiler in Ruby until we understood that tdlib was leaking (developers closed the bug with WONTFIX — it's a feature)
  • Changes before version 2.0:

    • Added support for OTR (if Zhabogram is used on both sides — don't ask.)
    • Using YAML serialization instead of sqlite3 for saving sessions.
    • Automatic time zone detection removed due to some clients not following the protocol and sending junk
    • Authorization (subscription) requests from public channels, from which a forwarded message was sent, but you are not a subscriber, have been fixed
  • Changes in version 2.0

    • NB! Backward compatibility of config file and session file is broken (to support individual settings in the future).
    • Code rewritten 80% — it is now significantly more readable. Internal logic has been tidied up.
    • Number of requests to Telegram reduced by three times
    • Removed jabber:iq:register, jabber:iq:gateway
    • Commands rewritten — now they are different for chats and for the transport itself (system functions). To get the list of commands, send the command /help.

To install, you will need your own Jabber server. It is recommended to obtain the API ID and API HASH from Telegram for more stable operation. A detailed guide can be found in the README.md file.

Source: linux.org.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster