Zhabogram 2.0 — un transporte de Jabber a Telegram

Zhabogram — un puente (puente, compuerta) de la red Jabber (XMPP) a la red Telegram, escrito en Ruby. Sucesor de tg4xmpp.

  • Dependencias

    • Ruby >= 1.9
    • xmpp4r == 0.5.6
    • tdlib-ruby == 2.0 con tdlib compilado == 1.3
  • Funcionalidades

    • Autenticación en una cuenta existente de Telegram
    • Sincronización de la lista de chats con el roster
    • Sincronización del estado de los contactos con el roster
    • Agregar y eliminar contactos de Telegram
    • Soporte de VCard con avatares
    • Envío, recepción, edición y eliminación de mensajes
    • Manejo de citas y mensajes reenviados
    • Envío y recepción de archivos y mensajes especiales (soporte para fotos, videos, audios, documentos, mensajes de voz, stickers, animaciones, ubicaciones, mensajes del sistema)
    • Soporte para chats secretos
    • Creación, gestión y moderación de chats/supergrupos/canales
    • Guardado de sesiones y reconexión automática al ingresar a la red XMPP
    • Obtención de historial y búsqueda en mensajes
    • Gestión de la cuenta de Telegram
  • Cambios significativos hasta la versión 1.0, de la cual no hubo noticias en LOR:

    • Se añadió el manejo de SIGINT para cerrar correctamente todas las sesiones
    • Se añadió (y luego eliminado) el soporte para iq:jabber:register (registro de usuarios), iq:jabber:gateway (búsqueda de contactos)
    • Largas luchas con el profiler en Ruby, hasta que nos dimos cuenta de que había una fuga en tdlib (los desarrolladores cerraron el bug con WONTFIX — es una característica)
  • Cambios hasta la versión 2.0:

    • Se añadió el soporte para OTR (si Zhabogram se utiliza de ambos lados — no preguntes.)
    • Uso de serialización YAML en lugar de sqlite3 para guardar sesiones.
    • Se eliminó la detección automática de la zona horaria debido a que algunos clientes no siguen el protocolo y envían datos distorsionados.
    • Se corrigieron las solicitudes de autorización (suscripción) de los canales públicos, de los cuales se había enviado (reenviado) un mensaje, pero de los cuales no eres suscriptor.
  • Cambios en la versión 2.0

    • ¡NB! La compatibilidad hacia atrás de los archivos de configuración y de sesión se ha roto (para soportar configuraciones individuales en el futuro).
    • El código ha sido reescrito en un 80% — ahora es mucho más legible. La lógica interna ha sido ordenada.
    • Se ha reducido el número de solicitudes a Telegram a un tercio
    • Se eliminaron jabber:iq:register, jabber:iq:gateway
    • Se reescribieron /comandos — ahora son diferentes para chats y para el transporte en sí (funciones del sistema). Para recibir la lista de comandos, envía el comando /help.

Para la instalación se requerirá un propio servidor Jabber. Se recomienda obtener el API ID y el API HASH en Telegram para un funcionamiento más estable. Instrucciones detalladas se pueden encontrar en el archivo README.md.

Fuente: linux.org.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster