Zhabogram 2.0 - Jabber์—์„œ Telegram์œผ๋กœ ์ „์†ก

Zhabogram์€ Ruby๋กœ ์ž‘์„ฑ๋œ Jabber ๋„คํŠธ์›Œํฌ(XMPP)์—์„œ Telegram ๋„คํŠธ์›Œํฌ๋กœ์˜ ์ „์†ก(๋ธŒ๋ฆฌ์ง€, ๊ฒŒ์ดํŠธ์›จ์ด)์ž…๋‹ˆ๋‹ค. tg4xmpp์˜ ํ›„์† ์ œํ’ˆ์ž…๋‹ˆ๋‹ค.

  • ์ข…์†์„ฑ

    • ๋ฃจ๋น„ >= 1.9
    • xmpp4r == 0.5.6
    • tdlib-ruby == tdlib๊ฐ€ ์žˆ๋Š” 2.0 == 1.3์œผ๋กœ ์ปดํŒŒ์ผ๋จ
  • ๊ธฐ๋Šฅ

    • ๊ธฐ์กด ํ…”๋ ˆ๊ทธ๋žจ ๊ณ„์ •์˜ ์Šน์ธ
    • ์ฑ„ํŒ… ๋ชฉ๋ก์„ ๋ช…๋‹จ๊ณผ ๋™๊ธฐํ™”
    • ๋ช…๋‹จ๊ณผ ์—ฐ๋ฝ์ฒ˜ ์ƒํƒœ ๋™๊ธฐํ™”
    • ํ…”๋ ˆ๊ทธ๋žจ ์—ฐ๋ฝ์ฒ˜ ์ถ”๊ฐ€ ๋ฐ ์‚ญ์ œ
    • ์•„๋ฐ”ํƒ€๊ฐ€ ํฌํ•จ๋œ VCard ์ง€์›
    • ๋ฉ”์‹œ์ง€ ๋ณด๋‚ด๊ธฐ, ๋ฐ›๊ธฐ, ํŽธ์ง‘ ๋ฐ ์‚ญ์ œ
    • ๊ฒฌ์  ๋ฐ ์ „๋‹ฌ๋œ ๋ฉ”์‹œ์ง€ ์ฒ˜๋ฆฌ
    • ํŒŒ์ผ ๋ฐ ํŠน์ˆ˜ ๋ฉ”์‹œ์ง€ ๋ณด๋‚ด๊ธฐ ๋ฐ ๋ฐ›๊ธฐ(์‚ฌ์ง„, ๋น„๋””์˜ค, ์˜ค๋””์˜ค, ๋ฌธ์„œ, ์Œ์„ฑ ๋ฉ”์‹œ์ง€, ์Šคํ‹ฐ์ปค, ์• ๋‹ˆ๋ฉ”์ด์…˜, ์œ„์น˜์ •๋ณด, ์‹œ์Šคํ…œ ๋ฉ”์‹œ์ง€ ์ง€์›)
    • ๋น„๋ฐ€์ฑ„ํŒ… ์ง€์›
    • ์ฑ„ํŒ…/์Šˆํผ๊ทธ๋ฃน/์ฑ„๋„ ์ƒ์„ฑ, ๊ด€๋ฆฌ ๋ฐ ์กฐ์ •
    • ์„ธ์…˜ ์ €์žฅ ๋ฐ XMPP ๋„คํŠธ์›Œํฌ ๋กœ๊ทธ์ธ ์‹œ ์ž๋™ ์—ฐ๊ฒฐ
    • ๊ธฐ๋ก ๊ฒ€์ƒ‰ ๋ฐ ๋ฉ”์‹œ์ง€ ๊ฒ€์ƒ‰
    • ํ…”๋ ˆ๊ทธ๋žจ ๊ณ„์ • ๊ด€๋ฆฌ
  • ๋ฒ„์ „ 1.0 ์ด์ „์˜ ์ค‘์š”ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ(LOR์—๋Š” ์—†๋Š” ์†Œ์‹):

    • ๋ชจ๋“  ์„ธ์…˜์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ข…๋ฃŒํ•˜์—ฌ SIGINT ์ฒ˜๋ฆฌ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
    • iq:jabber:register(์‚ฌ์šฉ์ž ๋“ฑ๋ก), iq:jabber:gateway(์—ฐ๋ฝ์ฒ˜ ๊ฒ€์ƒ‰)์— ๋Œ€ํ•œ ์ง€์› ์ถ”๊ฐ€(๋‚˜์ค‘์— ์ œ๊ฑฐ)
    • tdlib๊ฐ€ ๋ˆ„์ถœ๋˜๊ณ  ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค์„ ๊นจ๋‹ฌ์„ ๋•Œ๊นŒ์ง€ Ruby์˜ ํ”„๋กœํŒŒ์ผ๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ ์˜ค๋žœ ์‹œ๊ฐ„์ด ๊ฑธ๋ ธ์Šต๋‹ˆ๋‹ค(๊ฐœ๋ฐœ์ž๋Š” WONTFIX๋กœ ๋ฒ„๊ทธ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ํŠน์ง•์ด๋‹ค)
  • ๋ฒ„์ „ 2.0์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ:

    • OTR ์ง€์› ์ถ”๊ฐ€(Zhabogram์„ ์–‘๋ฉด์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ๋ฌป์ง€ ๋งˆ์„ธ์š”.)
    • sqlite3 ๋Œ€์‹  YAML ์ง๋ ฌํ™”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ธ์…˜์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
    • ์ผ๋ถ€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํ”„๋กœํ† ์ฝœ์„ ๋”ฐ๋ฅด์ง€ ์•Š๊ณ  ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๋Š” ์‚ฌ์‹ค๋กœ ์ธํ•ด ์ž๋™ ์‹œ๊ฐ„๋Œ€ ๊ฐ์ง€๊ฐ€ ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    • ๋ฉ”์‹œ์ง€๊ฐ€ ์ „๋‹ฌ๋˜์—ˆ์ง€๋งŒ ๊ท€ํ•˜๊ฐ€ ๊ตฌ๋…์ž๊ฐ€ ์•„๋‹Œ ๊ณต๊ฐœ ์ฑ„๋„์˜ ์Šน์ธ(๊ตฌ๋…) ์š”์ฒญ์„ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • 2.0 ๋ฒ„์ „์—์„œ ์—…๋ฐ์ดํŠธ

    • ์ฃผ์˜! ๊ตฌ์„ฑ ํŒŒ์ผ๊ณผ ์„ธ์…˜ ํŒŒ์ผ์˜ ํ•˜์œ„ ํ˜ธํ™˜์„ฑ์ด ๊นจ์กŒ์Šต๋‹ˆ๋‹ค(ํ–ฅํ›„ ๊ฐœ๋ณ„ ์„ค์ • ์ง€์›์„ ์œ„ํ•ด).
    • ์ฝ”๋“œ๋Š” 80% ์ •๋„ ์žฌ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ํ›จ์”ฌ ๋” ์ฝ๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค. ๋‚ด๋ถ€ ๋กœ์ง์ด ์ •๋ฆฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    • ํ…”๋ ˆ๊ทธ๋žจ์— ๋Œ€ํ•œ ์š”์ฒญ ์ˆ˜๊ฐ€ XNUMX๋ฐฐ ๊ฐ์†Œํ–ˆ์Šต๋‹ˆ๋‹ค.
    • jabber:iq:register, jabber:iq:gateway๊ฐ€ ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    • ์žฌ์ž‘์„ฑ๋œ /๋ช…๋ น - ์ด์ œ ์ฑ„ํŒ…๊ณผ ์ „์†ก ์ž์ฒด(์‹œ์Šคํ…œ ๊ธฐ๋Šฅ)์— ๋Œ€ํ•ด ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ๋ช…๋ น ๋ชฉ๋ก์„ ์–ป์œผ๋ ค๋ฉด /help ๋ช…๋ น์„ ๋ณด๋‚ด์‹ญ์‹œ์˜ค.

์„ค์น˜ํ•˜๋ ค๋ฉด ์ž์ฒด Jabber ์„œ๋ฒ„๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋ณด๋‹ค ์•ˆ์ •์ ์ธ ์šด์˜์„ ์œ„ํ•ด ํ…”๋ ˆ๊ทธ๋žจ์—์„œ API ID์™€ API HASH๋ฅผ ํš๋“ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ์ง€์นจ์€ README.md ํŒŒ์ผ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : linux.org.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€