๐ฒ โบ๏ธโบ๏ธโบ๏ธโบ๏ธโบ๏ธ
โบ๏ธโบ๏ธโบ๏ธโบ๏ธ ๐ฒ
๐ฅ๐ฅ๐ฅ๐ฅ๐ฅ๐ฅ๐ฅ๐ฅ
๋ญํค๊ทธ๋จ ๋ค์ด์ค๋ ๊ณต์ ํฉ๋๋ค.
๋ญํค๊ทธ๋จ ๋ค์ด์ค๋ ์ ์ ์๊ฒ ์ ๊ธฐ๋
๊ฐ์ข
๊ธฐ์ ์ ๋ฏผ์ ๋ฐ ๋ฐ์ดํฐ ์์ฒญ์ ๋ํ์ฌ
์ง์ ํ๋จํ์ค ์ ์๋๋ก ํธ์ง์์ด
๋ชจ๋ ๋ํ๋ด์ฉ์ ๊ณต๊ฐํ๊ณ ์์ต๋๋ค.
์๋๋
์ค๋์ ๊ธฐ์ ์ ๋ฏผ์๊ณผ ๊ทธ์ ๋ํ ๋ต๋ณ์
๋๋ค.
์์ ์ด๋ ํธ์ง ์๋ ์ ์ฒด ๋ํ๋ด์ฉ์ ์ ์์นด์ด๋ธ์์๋ ํ์ธ ๊ฐ๋ฅํฉ๋๋ค.
https://t.me/luckydice260408argue
์์ฝํ๋ฉด
์ฃผ์ฅ 1: ๋ด์ ์ฃผ์ฌ์ ๊ฒฐ๊ณผ๋ฅผ ๋ฏธ๋ฆฌ ๋ฐ์๋ณผ ์ ์์ง ์์๊ฐ?
Telegram Bot API sendDice ์๋ต ๊ตฌ์กฐ
๋ด์ด sendDice`๋ฅผ ํธ์ถํ๋ฉด, API ์๋ต์ `Message.dice.value ํ๋์ ์ฃผ์ฌ์ ๊ฒฐ๊ณผ๊ฐ ์ฆ์ ํฌํจ๋ฉ๋๋ค.
์ ์ ์ ํด๋ผ์ด์ธํธ์์ ์ ๋๋ฉ์ด์
์ด ์ฌ์๋๊ธฐ ์ฝ 2.65์ด ์ ์ ๋ด ์๋ฒ๋ ์ด๋ฏธ ๊ฒฐ๊ณผ๋ฅผ ์๊ณ ์์ต๋๋ค.
### PoC ์คํ ๊ฒฐ๊ณผ
Telethon ํด๋ผ์ด์ธํธ๋ก `sendDice`๋ฅผ ํธ์ถํ๊ณ ์๋ต ์๊ฐ์ ์ธก์ ํ์ต๋๋ค:
[Roll 1] value=6(์ง) | API์๋ต์๊ฐ: 523ms
[Roll 2] value=6(์ง) | API์๋ต์๊ฐ: 328ms
[Roll 3] value=5(ํ) | API์๋ต์๊ฐ: 351ms
[Roll 4] value=5(ํ) | API์๋ต์๊ฐ: 331ms
[Roll 5] value=3(ํ) | API์๋ต์๊ฐ: 343ms
API ํธ์ถ ํ ํ๊ท 375ms๋ง์ `dice.value`๊ฐ ๋ฐํ๋ฉ๋๋ค.
์ ์ ํด๋ผ์ด์ธํธ์ ์ฃผ์ฌ์ ์ ๋๋ฉ์ด์
์ ์ฝ 3,000ms์
๋๋ค. ๋ด์ ์ ์ ๋ณด๋ค ~2.65์ด ๋จผ์ *๊ฒฐ๊ณผ๋ฅผ ์๋๋ค.
๋ต๋ณ : sendDice ์๋ต๊ณผ ์ ๋๋ฉ์ด์
์ ์๋ก ๋ค๋ฅธ ๊ฐ๋
์
๋๋ค
Telegram ๊ณต์ ๋ฌธ์์ `sendDice`๋ ๋๋ค ๊ฐ์ ํ์ํ๋ ๋ฉ์๋์ด๋ฉฐ, ์ฑ๊ณต ์ ์ ์ก๋ `Message`๋ฅผ ๋ฐํํฉ๋๋ค. ๋ํ Telegram dice ๋ฌธ์๋ incoming dice๊ฐ server-side์์ randomly generated value์ ํจ๊ป ์ ๋ฌ๋๋ค๊ณ ์ค๋ช
ํฉ๋๋ค. ์ฆ, ์ฃผ์ฌ์ ๊ฒฐ๊ณผ๋ ํ
๋ ๊ทธ๋จ ๊ณต์ ์๋ฒ์์ ๋จผ์ ์ ํด์ง๊ณ , ํด๋ผ์ด์ธํธ๋ ๊ทธ ๊ฐ์ ์ ๋๋ฉ์ด์
์ผ๋ก ํ์ํ๋ ๊ตฌ์กฐ์
๋๋ค. ([Telegram][1])
์ฌ๊ธฐ์ ์ค์ํ ์ ์, ์ ๋๋ฉ์ด์
์ข
๋ฃ ์์ ์ด ๊ฒฐ๊ณผ ์์ฑ ์์ ์ด ์๋๋ผ๋ ๊ฒ์
๋๋ค.
ํด๋ผ์ด์ธํธ ์ ๋๋ฉ์ด์
์ ์ด๋ฏธ ํ์ ๋ ๊ฐ์ ์๊ฐ์ ์ผ๋ก ๋ณด์ฌ์ฃผ๋ ๊ณผ์ ์ผ ๋ฟ์ด๊ณ , ๊ฒฐ๊ณผ๋ฅผ ๋ง๋๋ ๋จ๊ณ๊ฐ ์๋๋๋ค. Telegram ๊ณต์ dice ๋ฌธ์๋ ํด๋ผ์ด์ธํธ๊ฐ specified value์ ๋ง๋ dice animated sticker๋ฅผ ํ์ํด์ผ ํ๋ค๊ณ ์ค๋ช
ํ๊ณ ์์ต๋๋ค. ([Telegram][2])
๋ฐ๋ผ์ `sendDice` ์๋ต์ ๊ธฐ์ค์ผ๋ก โ๋ด๋ง ๋ฏธ๋ฆฌ ์๋ค"๊ณ ๋ณด๋ ์ ์ ์์ฒด๊ฐ ์ ํํ์ง ์์ต๋๋ค.
ํ
๋ ๊ทธ๋จ ์๋ฒ์์ ๋ฉ์์ง๊ฐ ์์ฑ๋์ด ์ ์ก๋๋ ๋์ผํ ์์ ์, ์ ์ ํด๋ผ์ด์ธํธ์ ๋ด์ ๋ชจ๋ ๋์ผํ ์๋ฒ ์ด๋ฒคํธ๋ฅผ ๋ฐ๋ ๊ตฌ์กฐ
์ด๊ณ , ์ฐจ์ด๊ฐ ์๋ค๋ฉด ์ ์ ๋ ์ด๋ฅผ ์ ๋๋ฉ์ด์
์ผ๋ก ๋ณด๊ณ , ๋ด์ ์ฝ๋๋ก ์ฝ๋๋ค๋ ์ ๋ฟ์
๋๋ค. ์ฆ, ์ด๋ ๊ฒฐ๊ณผ ์์ฑ์ ์ ์ ์ด ์๋๋ผ ํ์ธ ๋ฐฉ์์ ์ฐจ์ด์
๋๋ค.
ํ
๋ ๊ทธ๋จ ๊ณต์ api์๋ ๋ช
์๋์์์ง๋ง ์ง์ ์ฌํ์ ์ผ๋ก ๊ฒ์ฆํ๊ณ ์ถ๋ค๋ฉด ์์ด์ด์คํฌ ๋ฑ์ผ๋ก ์ง์ ํจํท์ ์บก์ณํ๊ฑฐ๋ ๋ฆฌ๋
์ค ํด๋ผ์ด์ธํธ ๋ฑ์์ poc์ฝ๋์ ๋์ผํ๊ฒ ํ์ด์ฌ ์ฝ๋๋ฅผ ์์ฑํด๋ณด๋ฉด ์ ์ ์์ต๋๋ค.
์ฌ์ง์ด ์๋ฒ ์ํฉ์ ๋ฐ๋ผ์ ๋ด์ด ๋ฐ๋ ์ฝ๋ฐฑ๋ณด๋ค ์ ์ ํด๋ผ์ด์ธํธ๋ก์ ๊ฒฐ๊ณผ ์ ์ก์ด ๋น ๋ฅผ ๋๋ ์์ต๋๋ค.
์ด ํด์์ Telegram์ `sendDice`๊ฐ ์ ์ก๋ `Message`๋ฅผ ๋ฐํํ๊ณ , dice ๊ฐ์ด ์๋ฒ์ธก์์ ์์ฑ๋ ๊ฐ์ผ๋ก ๋ฉ์์ง์ ํฌํจ๋๋ค๋ ๊ตฌ์กฐ์๋ ๋ถํฉํฉ๋๋ค. ([Telegram][1])
์ด๊ฑด ์์ฃผ ๊ฐ๋จํ ์์๋ก๋ ์ค๋ช
๋ฉ๋๋ค. ํ
๋ ๊ทธ๋จ ์บ์๋ฅผ ์ญ์ ํ ๋ค ๊ณผ๊ฑฐ์ ์ฃผ์ฌ์๋ฅผ ๋ค์ ์ด์ด๋ณด๋ฉด ๊ฐ์ ๊ทธ๋๋ก์ธ๋ฐ ์ ๋๋ฉ์ด์
์ ๋ค์ ์ฒ์๋ถํฐ ์ฌ์๋ฉ๋๋ค. ๊ทธ๋ ๋ค๊ณ ๊ทธ ์ฃผ์ฌ์์ ๊ฒฐ๊ณผ๊ฐ โ์ง๊ธ ์๋ก ์์ฑ๋ ๊ฒ"์ ์๋๋๋ค. ์ฆ, ์ ๋๋ฉ์ด์
์ ๊ฒฐ๊ณผ๊ฐ ์๋๋ผ ํํ์
๋๋ค.
์ฃผ์ฅ 2: ๋ด ๋ฉ์์ง๋ ์์ ๊ฐ๋ฅํ๋ฉฐ ํ์ ์ด ๋จ์ง ์๋๋ค
### Bot API editMessageText
๋ด์ด ์์ ์ด ๋ณด๋ธ ๋ฉ์์ง๋ฅผ `editMessageText`๋ก ์์ ํ๋ฉด:
- (edited) ํ์๊ฐ ๋จ์ง ์์ต๋๋ค**
- ์ ์ ๋ ๋ฉ์์ง๊ฐ ์์ ๋์๋์ง ์ ์ ์์ต๋๋ค
- ์์ ์ด๋ ฅ์ ์กฐํํ๋ API๋ ์กด์ฌํ์ง ์์ต๋๋ค
๋ต๋ณ : ๊ทธ ๋
ผ๋ฆฌ๋ฅผ ๊ทธ๋๋ก ์ธ์ ํ๋ฉด,
์ ์ ์ ํ ํ
์คํธ๋ ๋ฐ๊ฟ ์ ์๋ค
์์ก ์๋ด๋ ๋ฐ๊ฟ ์ ์๋ค
๋ฒ ํ
๋ด์ญ ๋ฌธ๊ตฌ๋ ๋ฐ๊ฟ ์ ์๋ค
์ผ๋ฐ ๊ธฐ๋ก์ฑ ๋ฉ์์ง๋ ๋ฐ๊ฟ ์ ์๋ค
๋ ์์ผ๋ก ๋์์ด ์ด์ด์ง๊ฒ ๋๊ณ ,
๊ฒฐ๊ตญ ์ด๋ค ์๋น์ค๋ "๋ง์๋ง ๋จน์ผ๋ฉด ๋ค ๋ฐ๊ฟ ์ ์๋ ๊ฒ ์๋๋โ๋ ์ฃผ์ฅ๊ณผ ๋ค๋ฅผ ๋ฐ ์์ด์ง๊ธฐ ๋๋ฌธ์
๋๋ค.
๊ทธ ์๊ฐ ์ด๊ฑด ํน์ ๋ฒ๊ทธ๋ ํน์ ๊ฒ์ ๊ตฌ์กฐ๋ฅผ ๊ฒ์ฆํ๋ ์ด์ผ๊ธฐ๊ฐ ์๋๋ผ,
์๋น์ค ์ ์ฒด๋ฅผ ์์ ์กฐ์ํ ์ ์๋ค๊ณ ๊ฐ์ ํ๋ ์ผ๋ฐ๋ก ์ด ๋ฉ๋๋ค.
์ ๋ ์ฒ์๋ถํฐ ๊ทธ ์ ์ ๋ง์๋๋ฆฐ ๊ฒ์
๋๋ค.
๋ค์ ๋งํด,
์ ์ฃผ์ฅ์
"์ฃผ์ฌ์ ์์ฒด๋ฅผ ์ด๋ป๊ฒ ์กฐ์ํ ์ ์๋๊ฐโ์ ๋ํ ๊ธฐ์ ์ ์ฆ๋ช
์ด ์๋๋ผ,
์ผ๋ฐ ๋ฉ์์ง ์์ ๊ฐ๋ฅ์ฑ์ ๊ทผ๊ฑฐ๋ก ๊ฒ์ ์ ์ฒด๊ฐ ๊ณต์ ํ์ง ์์ ์ ์๋ค๊ณ ํด์ํ๋ ์ฃผ์ฅ์
๋๋ค.
ํ์ง๋ง ๊ทธ๋ฐ ํด์์ ๋๋ฌด ๋์ต๋๋ค.
๊ทธ ๊ธฐ์ค๋๋ก๋ผ๋ฉด ์ธ์ ์ด๋ค ๊ฒ์, ์ด๋ค ๋ด, ์ด๋ค ์๋น์ค๋
"ํ
์คํธ๋ฅผ ๋ฐ๊ฟ ์ ์์ผ๋ฉด ๋ถ๊ณต์ ํ ์ ์๋คโ๋ ๋ง ํ๋ง๋๋ก ์ ๋ถ ๋ฌธ์ ์ผ์ ์ ์์ต๋๋ค.
๋ค์ ๋งํ๋ฉด ์ ๋
ผ๋ฆฌ๋ ์ ์ ๊ฐ ์ด๋ค ๊ฑฐ๋์, ์นด์ง๋
ธ, ๋๋ ์๋น์ค๋ก ์
๊ธ์ ํ๋๋ฐ,
๊ทธ ์๋น์ค์์ ์ ์ฉ ์
๊ธ ์ฃผ์๋ฅผ ๋ณ๊ฒฝํด๋ฒ๋ฆฌ๊ณ
์
๊ธ์ด ๋ค์ด์ค์ง ์์๋ค๊ณ ์ฃผ์ฅํ ์๋ ์๋ ๊ฒ ์๋๋?
'๋ณ๊ฒฝ ์ฌ๋ถ๋ ์์์ ์ฐ์ง ์์ผ๋ฉด ์ฆ๋ช
ํ ์ ์์ผ๋ ๊ณต์ ํ์ง ์๋ค'๊ณ ํ๋ ๊ฒ๊ณผ ๋์ผํ ๊ฒ
์
๋๋ค.
๋ฐ๋ผ์ ์ด๊ฑด ๋ฒ๊ทธ๋ฐ์ดํฐ ๋ฌธ๊ตฌ๋ฅผ ์ค์ ๊ธฐ์ ์ ํ์ ๊ธฐ์ค์ผ๋ก ์ฝ์ ๊ฒ์ด ์๋๋ผ,
๋ฌธ๊ตฌ๋ฅผ ๊ฐ์ฅ ๋๊ฒ ํด์ํด์ ์ต์ง๋ก ๋ผ์ ๋ง์ถ๋ ์ฃผ์ฅ์ ๊ฐ๊น๋ค๊ณ ๋ณด๋ ๊ฒ์
๋๋ค.
๊ทธ๋ฆฌ๊ณ "๋
นํํด์ผ ๊ฒ์ฆ ๊ฐ๋ฅํ๋ค๋ ๊ฑด ๊ณต์ ํ์ง ์๋ค๋ ๋ปโ์ด๋ผ๋ ์ฃผ์ฅ์ ๋ํด ๋ต๋ณ์ ๋๋ฆฌ์๋ฉด,
๋ฐ๋๋ก ์คํ๋ผ์ธ ์จ๋ผ์ธ ์นด์ง๋
ธ ๋ชจ๋์์ ๋ด๊ฐ ํ์ ์ ํํ๋๋ฐ
๋๋ฌ๊ฐ ์ง์ด๋ผ๊ณ ์ฃผ์ฅํ๋ค๋ ๊ฐ์ ํ์,
์์ ๋
นํ ์ธ์ ๊ฒ์ฆํ ์ ์๋ ๋ฐฉ๋ฒ์ด ์๋ ๊ณณ์ด ์์๊น์?
๊ฑฐ๋์๋ ๋ง์ฐฌ๊ฐ์ง์
๋๋ค. ๋ฐ์ด๋ธ์ค ๋ฑ ์ฝ์ธ ๊ฑฐ๋์์์ ๋ด๊ฐ 1BTC๋ฅผ ๊ตฌ๋งคํ๋ค๊ณ ์ฃผ๋ฌธ์ ๋ฃ์ด๋ ์ด๋ก ์ ์ผ๋ก ์๋ฒ์์ 10BTC๋ฅผ ๊ตฌ๋งคํ ๊ฒ์ฒ๋ผ ๋ด์ญ์ ์์ (Edit)ํ ์ ์๋ ๊ฒ์ด๊ณ , ์ด๋ ์์์ ์ฐ์ง ์์ผ๋ฉด ์ฆ๋ช
ํ๊ธฐ ์ด๋ ค์ฐ๋ ๋ฐ์ด๋ธ์ค๋ ๊ณต์ ํ์ง ์์ ๊ฒ์ผ๊น์?
๊ทธ๊ฑด ์ด ์์คํ
๋ง์ ๋ฌธ์ ๊ฐ ์๋๋ผ,
๋ํํ ์๋น์ค๋ ์ธํฐํ์ด์ค๊ฐ ์๋ ๊ฑฐ์ ๋ชจ๋ ์์คํ
์์
๋ถ์์ด ๋ฐ์ํ์ ๋ ๋ก๊ทธ, ๊ธฐ๋ก, ์บก์ฒ, ์์ ๊ฐ์ ๋ณด์กฐ ์๋ฃ๋ก ๊ฒ์ฆํ๋ ๊ฒ๊ณผ ๊ฐ์ ์ฐจ์์ ์ด์ผ๊ธฐ์
๋๋ค.
๊ณต์ ์ฑ ๋ฒ๊ทธ ๋ฐ์ดํฐ๋ฅผ ์ ๊ณตํด์ฃผ์ค ๋ ์์ ๊ฐ์ ์ผ๋ฐ๋ก ์ด ์๋ ๋ค์ด์ค ๊ฒ์ ๋ก์ง์ ๊ธฐ์ ๊ฒฐํจ์ ๋ํด ๋
ผํด์ผํ๊ณ ์ฆ๋ช
ํด์ฃผ์
์ผํฉ๋๋ค.
๋ญํค๊ทธ๋จ ๋ค์ด์ค๋ ๊ณต์ ํฉ๋๋ค.
๋ชจ๋ ๊ฒ์ ํ
๋ ๊ทธ๋จ ๊ณต์ ํํ์ด์ง์ ์ด๋ฏธ ๋ช
์๋์ด ์๋ ๋ด์ฉ์
๋๋ค.
์์ธํ ์ฌํญ์ ํ
๋ ๊ทธ๋จ ๊ณต์ ๋ฌธ์์ ๊ณต์ ์ฑ ์๋ด๋ฅผ ์ฐธ๊ณ ๋ฐ๋๋๋ค.
๐ฒ
๐ฒ ๊ด๋ จ ํ
๋ ๊ทธ๋จ ๊ณต์ ๋ฌธ์
https://core.telegram.org/api/dice
https://core.telegram.org/bots/api/#deletemessage
- https://core.telegram.org/api/dice
๐ค๐ค๐ค ๋ค์ด์ค ๊ณต์ ์ฑ 100% ์ฆ๋ช
!
- https://core.telegram.org/api/dice
๐ฒ
ใ ใใ ใใ ใใ ใใ ใใ ใ
๐ฒ
๐ฒ ๊ฒ์ :
https://t.me/Gramdice24_bot
๐ฒ ๋ฌธ์ :
https://t.me/LUCKYGRAM_7