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 — [ это фича ](
https://github.com/tdlib/td/issues/148 ) ) Изменения до версии 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.
Ссылка:
https://www.linux.org.ru/news/opensource/15155442