Zhabogram 2.0 - transportasyon mula sa Jabber hanggang Telegram

Ang Zhabogram ay isang transportasyon (tulay, gateway) mula sa Jabber network (XMPP) patungo sa Telegram network, na nakasulat sa Ruby. Kapalit ng tg4xmpp.

  • Dependencies

    • Ruby >= 1.9
    • xmpp4r == 0.5.6
    • tdlib-ruby == 2.0 na may tdlib == 1.3 na pinagsama-sama
  • Mga Kakayahan

    • Awtorisasyon sa isang umiiral na Telegram account
    • Pag-synchronize ng listahan ng mga chat sa roster
    • Pag-synchronize ng mga status ng contact sa roster
    • Pagdaragdag at pagtanggal ng mga contact sa Telegram
    • Suporta para sa VCard na may mga avatar
    • Pagpapadala, pagtanggap, pag-edit at pagtanggal ng mga mensahe
    • Pinoproseso ang mga quote at ipinasa na mensahe
    • Pagpapadala at pagtanggap ng mga file at espesyal na mensahe (suporta para sa mga larawan, video, audio, mga dokumento, voice message, sticker, animation, geolocation, mga mensahe ng system)
    • Lihim na suporta sa chat
    • Paglikha, pamamahala at pag-moderate ng mga chat/supergroup/channel
    • Nagse-save ng mga session at awtomatikong kumokonekta kapag nagla-log in sa XMPP network
    • Pagkuha ng kasaysayan at paghahanap ng mga mensahe
    • Pamamahala ng Telegram account
  • Mga makabuluhang pagbabago bago ang bersyon 1.0, balita tungkol sa kung saan ay wala sa LOR:

    • Nagdagdag ng pagpoproseso ng SIGINT na may tamang pagsasara ng lahat ng session
    • Idinagdag (at inalis sa ibang pagkakataon) suporta para sa iq:jabber:register (pagrehistro ng user), iq:jabber:gateway (contact search)
    • Mahabang pakikibaka sa profiler sa Ruby hanggang sa napagtanto namin na ang tdlib ay tumutulo (isinara ng mga developer ang bug gamit ang WONTFIX - ito ay isang tampok)
  • Mga pagbabago sa bersyon 2.0:

    • Nagdagdag ng suporta sa OTR (kung ginagamit ang Zhabogram sa magkabilang panig, huwag magtanong.)
    • Paggamit ng YAML serialization sa halip na sqlite3 upang i-save ang mga session.
    • Inalis ang awtomatikong time zone detection dahil sa katotohanan na ang ilang mga kliyente ay hindi sumusunod sa protocol at nagpapadala ng gulo
    • Inayos ang mga kahilingan para sa awtorisasyon (subscription) mula sa mga pampublikong channel kung saan ipinasa ang mensahe, ngunit kung saan hindi ka subscriber
  • Mga pagbabago sa bersyon 2.0

    • NB! Nasira ang backward compatibility ng config file at session file (upang suportahan ang mga indibidwal na setting sa hinaharap).
    • Ang code ay muling isinulat ng 80% - ngayon ito ay mas nababasa. Ang panloob na lohika ay naiayos na.
    • Ang bilang ng mga kahilingan sa Telegram ay nabawasan ng tatlong beses
    • Inalis ang jabber:iq:register, jabber:iq:gateway
    • Rewritten /commands - iba na sila ngayon para sa mga chat at para sa transport mismo (system functions). Para makakuha ng listahan ng mga command, ipadala ang /help command.

Kakailanganin mo ang iyong sariling Jabber server para sa pag-install. Inirerekomenda na kunin ang API ID at API HASH sa Telegram para sa mas matatag na operasyon. Ang mga detalyadong tagubilin ay matatagpuan sa README.md file.

Pinagmulan: linux.org.ru

Magdagdag ng komento