Zhabogram 2.0 β€” транспорт ΠΈΠ· Jabber Π² Telegram

Zhabogram β€” транспорт (мост, шлюз) ΠΈΠ· сСти Jabber (XMPP) Π² ΡΠ΅Ρ‚ΡŒ Telegram, написанный Π½Π° Ruby. ΠŸΡ€Π΅Π΅ΠΌΠ½ΠΈΠΊ tg4xmpp.

  • Зависимости

    • Ruby >= 1.9
    • xmpp4r == 0.5.6
    • tdlib-ruby == 2.0 с скомпилированным tdlib == 1.3
  • ВозмоТности

    • Авторизация Π² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π΅ Telegram
    • Бинхронизация списка Ρ‡Π°Ρ‚ΠΎΠ² с ростСром
    • Бинхронизация статусов ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² с ростСром
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Telegram-ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ²
    • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° VCard с Π°Π²Π°Ρ‚Π°Ρ€ΠΊΠ°ΠΌΠΈ
    • ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ°, ΠΏΡ€ΠΈΡ‘ΠΌ, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ сообщСний
    • ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ†ΠΈΡ‚Π°Ρ‚ ΠΈ пСрСсланных сообщСний
    • ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° ΠΈ ΠΏΡ€ΠΈΡ‘ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сообщСний (ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„ΠΎΡ‚ΠΎ, Π²ΠΈΠ΄Π΅ΠΎ, Π°ΡƒΠ΄ΠΈΠΎ, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², голосовых сообщСний, стикСров, Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ, Π³Π΅ΠΎΠ»ΠΎΠΊΠ°Ρ†ΠΈΠΉ, систСмных сообщСний)
    • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сСкрСтных Ρ‡Π°Ρ‚ΠΎΠ²
    • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΌΠΎΠ΄Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‡Π°Ρ‚ΠΎΠ²/супСргрупп/ΠΊΠ°Π½Π°Π»ΠΎΠ²
    • Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ сСссий ΠΈ автоматичСскоС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Π² ΡΠ΅Ρ‚ΡŒ XMPP
    • ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ истории ΠΈ поиск ΠΏΠΎ сообщСниям
    • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠΌ Telegram
  • Π—Π½Π°Ρ‡ΠΈΠΌΡ‹Π΅ измСнСния Π΄ΠΎ вСрсии 1.0, новости ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ Π±Ρ‹Π»ΠΎ Π½Π° LOR:

    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° SIGINT с ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ΠΌ всСх сСссий
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ (ΠΈ ΠΏΠΎΠ·Π΄Π½Π΅Π΅ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹) ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° iq:jabber:register (рСгистрация ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ), iq:jabber:gateway (поиск ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ²)
    • Π”ΠΎΠ»Π³ΠΈΠ΅ бодания с ΠΏΡ€ΠΎΡ„Π°ΠΉΠ»Π΅Ρ€ΠΎΠΌ Π² Ruby, ΠΏΠΎΠΊΠ° Π½Π΅ поняли, Ρ‡Ρ‚ΠΎ Ρ‚Π΅Ρ‡Ρ‘Ρ‚ tdlib (Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π·Π°ΠΊΡ€Ρ‹Π»ΠΈ Π±Π°Π³ с WONTFIX β€” это Ρ„ΠΈΡ‡Π°)
  • ИзмСнСния Π΄ΠΎ вСрсии 2.0:

    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OTR (Ссли Zhabogram ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ с ΠΎΠ±Π΅ΠΈΡ… сторон β€” Π½Π΅ ΡΠΏΡ€Π°ΡˆΠΈΠ²Π°ΠΉΡ‚Π΅.)
    • ИспользованиС сСриализации YAML вмСсто sqlite3 для сохранСния сСссий.
    • Π£Π±Ρ€Π°Π½ΠΎ автоматичСскоС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ часового пояса Π² связи с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ Π½Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ ΠΊΠ°ΡˆΡƒ
    • Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ запросы Π½Π° Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ (подписку) ΠΎΡ‚ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠ°Π½Π°Π»ΠΎΠ², ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±Ρ‹Π»ΠΎ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ (forwarded) сообщСниС, Π½ΠΎ подписчиком ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹ Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚Π΅ΡΡŒ
  • ИзмСнСния Π² вСрсии 2.0

    • NB! Π‘Π»ΠΎΠΌΠ°Π½Π° обратная ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³-Ρ„Π°ΠΉΠ»Π° ΠΈ Ρ„Π°ΠΉΠ»Π° сСссий (для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… настроСк Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ).
    • Код пСрСписан Π½Π° 80% β€” Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ Π² Ρ€Π°Π·Ρ‹ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠ΅Π΅. ВнутрСнняя Π»ΠΎΠ³ΠΈΠΊΠ° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π² порядок.
    • ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ запросов ΠΊ Telegram ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΎ Π² Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π°
    • Π£Π±Ρ€Π°Π½Ρ‹ jabber:iq:register, jabber:iq:gateway
    • ΠŸΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Π½Ρ‹ /ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ β€” Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ΠΈ Ρ€Π°Π·Π½Ρ‹Π΅ для Ρ‡Π°Ρ‚ΠΎΠ² ΠΈ для самого транспорта (систСмныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ). Для получСния списка ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΡ€ΠΈΡˆΠ»ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ /help.

Для установки потрСбуСтся собствСнный Jabber-сСрвСр. РСкомСндуСтся ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ API ID ΠΈ API HASH Π² Telegram для Π±ΠΎΠ»Π΅Π΅ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Ρ„Π°ΠΉΠ»Π΅ README.md.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: linux.org.ru