Zhabogram 2.0 - Жабберээс Telegram руу тээвэрлэх

Zhabogram нь Ruby хэл дээр бичигдсэн Jabber сүлжээнээс (XMPP) Telegram сүлжээ рүү тээвэрлэх (гүүр, гарц) юм. 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

сэтгэгдэл нэмэх