π‘ ν΅μ¬ μμ½: ν
λ κ·Έλ¨ λ΄μΌλ‘ μλ¦Ό λ©μμ§λ₯Ό μ μ‘νλ €λ©΄ Bot Token(μΈμ¦ ν€)κ³Ό Chat ID(μμ μλ³ λ²νΈ)κ° νμμ
λλ€. κ°μΈ μ±ν
λ°© Chat IDλ μμ, κ·Έλ£Ή/μ±λμ -100μΌλ‘ μμνλ μμ ννλ₯Ό κ°μ§λλ€. λ³Έ νμ΄μ§μμλ λ³λ μ½λ©μ΄λ μλ² μ€μΉ μμ΄ λΈλΌμ°μ μμ μ¦μ λ΄ μ 보λ₯Ό κ²μ¦νκ³ , λ΄ Chat IDλ₯Ό μ‘°ννλ©°, μ€μκ° ν
μ€νΈ λ©μμ§κΉμ§ μ μ‘ν μ μμ΅λλ€.
μλ² λͺ¨λν°λ§, ν¬λ‘€λ§ μλ¦Ό, μλ λ§€λ§€ μμ€ν λ± λ€μν μλν νλ‘μ νΈλ₯Ό λ§λ€ λ κ°μ₯ κ°νΈνκ³ νμ€ν μλ¦Ό μλ¨μ΄ λ°λ‘ ν λ κ·Έλ¨(Telegram) λ΄μ λλ€.
ν λ κ·Έλ¨ API μ°λμ νμν λ κ°μ§ ν΅μ¬ μ 보λ λ€μκ³Ό κ°μ΅λλ€.
- λ΄ ν ν° (Bot Token): λ΄μ μ μ΄νλ λΉλ° API μΈμ¦ ν€ (
getMeλ‘ μ ν¨μ± νμΈ κ°λ₯) - μ±ν
λ°© ID (Chat ID): λ©μμ§λ₯Ό μμ ν μ¬μ©μ λλ λ¨μ²΄λ°©μ κ³ μ μλ³ λ²νΈ (
getUpdatesλ‘ μΆμΆ)
μ€λΉλ¨κ³: ν λ κ·Έλ¨ μ± μ€μΉ λ° κ°μ
ν λ κ·Έλ¨ κ³μ μ΄ μκ±°λ κΈ°κΈ°μ μ±μ΄ μ€μΉλμ΄ μμ§ μλ€λ©΄ μλμ 곡μ λ§ν¬λ₯Ό ν΅ν΄ μ±μ μ€μΉνκ³ κ°μ ν΄ μ£ΌμΈμ.
1λ¨κ³: ν λ κ·Έλ¨ λ΄ μμ± λ° ν ν° λ°κΈ
ν λ κ·Έλ¨ κ³΅μ λ΄ κ΄λ¦¬μμΈ @BotFatherλ₯Ό ν΅ν΄ μ λ΄μ λ§λλλ€. μλ λ²νΌμ ν΄λ¦νλ©΄ ν λ κ·Έλ¨ μ±μ΄ μλμΌλ‘ μ΄λ¦¬λ©° BotFather λνμ°½μΌλ‘ μ¦μ μ΄λν©λλ€.
- μ λ²νΌμ λλ¬ BotFather λνμ°½μ λ€μ΄κ° ν νλ¨ [μμ] λλ
/newbotλͺ λ Ήμ΄λ₯Ό μ λ ₯ν©λλ€. - λ΄ μ΄λ¦(Name): μμ λͺ©λ‘μ νμλ λ΄μ μ΄λ¦(μ:
λ΄ μλ² μ리미)μ μ λ ₯ν©λλ€. - λ΄ μ μ λ€μ(Username): μ μΈκ³ κ³ μ μλ³μμ
λλ€. λμ΄ λ°λμ
botλλ_botμΌλ‘ λλμΌ ν©λλ€ (μ:my_server_alert_bot). - μμ±μ΄ μλ£λλ©΄ μλ΄ λ©μμ§μ ν¨κ» μλμ κ°μ νμμ API Tokenμ΄ λ°κΈλ©λλ€:
123456789:ABCdefGhIJKlmNoPQRsTUVwxyZ_1234567
β οΈ μ΄ ν ν°μ λΉλ°λ²νΈμ κ°μΌλ―λ‘ νμΈμκ² λ ΈμΆλμ§ μλλ‘ μμ νκ² λ³΄κ΄νμΈμ.
2λ¨κ³: λ΄ μ 보 κ²μ¦ & Chat ID μ‘°ν & λ©μμ§ μ μ‘
λ°κΈλ°μ λ΄ ν ν°μ μλ μ λ ₯μ°½μ λ£κ³ μμλλ‘ μ§νν΄ λ³΄μΈμ. ν ν°μ΄ μ¬λ°λ₯Έμ§ λ¨Όμ νμΈνκ³ Chat IDλ₯Ό κ°μ Έμ μ€μκ° λ©μμ§ λ°μ‘κΉμ§ μ¦μ ν μ€νΈν μ μμ΅λλ€.
π€ Step 1. λ΄ ν ν° μ λ ₯ & λ΄ μ 보 κ²μ¦
BotFatherμκ² λ°κΈλ°μ λ΄ ν ν°μ μ
λ ₯νκ³ λ΄μ μ μ λμ μ¬λΆ(getMe)λ₯Ό νμΈν©λλ€.
π Step 2. λ΄ Chat ID μ‘°ν
βοΈοΈ Step 3. μ€μκ° λ©μμ§ λ°μ‘ ν μ€νΈ
μ‘°νλ Chat IDλ‘ μλ¦Ό λ©μμ§λ₯Ό μ¦μ μ μ‘νμ¬ μ μ μλμ νμΈν©λλ€.
3λ¨κ³: νλ‘μ νΈ μ°λ μ½λ μμ (Python & cURL)
ν μ€νΈκ° μ μμ μΌλ‘ μλ£λμλ€λ©΄, μλ²λ μλν μ€ν¬λ¦½νΈμ λ°λ‘ μλ μ½λλ₯Ό μ μ©ν μ μμ΅λλ€.
Python μμ μ½λ
import requests
BOT_TOKEN = "μ¬κΈ°μ_λ΄ν ν°_μ
λ ₯"
CHAT_ID = "μ¬κΈ°μ_μ‘°νν_CHAT_ID_μ
λ ₯"
TEXT = "π μλ² μν μ μ: λͺ¨λν°λ§ μλ¦Ό ν
μ€νΈμ
λλ€."
url = f"https://api.telegram.org/bot{BOT_TOKEN}/sendMessage"
data = {
"chat_id": CHAT_ID,
"text": TEXT
}
res = requests.post(url, json=data)
print(res.json())
cURL ν°λ―Έλ ν μ€νΈ
curl -X POST "https://api.telegram.org/bot<λ΄ν ν°>/sendMessage" \
-d "chat_id=<μ±ν
ID>" \
-d "text=μλ
νμΈμ! ν
λ κ·Έλ¨ λ΄ ν
μ€νΈ λ©μμ§μ
λλ€."
μμ£Ό 묻λ μ§λ¬Έ (FAQ)
Q. λ¨μ²΄λ°©μ΄λ μ±λμ Chat IDλ μ΄λ»κ² νμΈνλμ?
λ΄μ ν΄λΉ λ¨μ²΄λ°©μ΄λ μ±λμ μ΄λν ν κ·Έ λ°©μ λ©μμ§λ₯Ό νλ λ¨κΈ°κ³ [μμ λνλ°© λͺ©λ‘ λ° Chat ID κ°μ Έμ€κΈ°]λ₯Ό λλ₯΄λ©΄ -100... νμμ λ§μ΄λμ€(-) λΆνΈκ° λΆμ Chat IDκ° λͺ©λ‘μ λνλ©λλ€.
Q. μ λ ₯ν ν ν°κ³Ό λ©μμ§κ° μ΄ λΈλ‘κ·Έ μλ²μ μ μ₯λλμ?
μλλλ€. λ°©λ¬Έμμ λΈλΌμ°μ μμ 곡μ ν
λ κ·Έλ¨ API μλ²(api.telegram.org)λ‘ μ§μ Fetch μμ²μ 보λ΄λ―λ‘ λΈλ‘κ·Έ μ΄μμλ μ 3μμ μλ²μ μ΄λ€ μ 보λ κΈ°λ‘λκ±°λ μ μ‘λμ§ μμ΅λλ€.
Q. λ΄μ΄ λ³΄λΈ λ©μμ§λ₯Ό μμ νκ±°λ μμ ν μλ μλμ?
λ€, λ©μμ§ λ°μ‘ μ λ°νλλ message_idλ₯Ό νμ©νμ¬ editMessageTextλ deleteMessage API λ©μλλ₯Ό νΈμΆνλ©΄ λ©μμ§λ₯Ό μμ νκ±°λ μμ ν μ μμ΅λλ€.