telebot.nim
2024.12.17
ไคลเอ็นต์ Async Telegram Bot API นำไปใช้ใน @Nim-Lang
จากเวอร์ชัน 1.0.0 procs ชอบ newMessage
, newPhoto
,.. หายไปแล้ว ให้ใช้ sendMessage
, sendDocument
แทน หากคุณยังคงชอบวิธีส่งสิ่งของแบบเก่าหรือน่าเกลียด เพียงนำเข้า telebot/compat
เพื่อให้เข้ากันได้แบบย้อนหลัง
$ nimble install telebot
import telebot, asyncdispatch, logging, options, strutils
var L = newConsoleLogger (fmtStr = " $levelname, [$time] " )
addHandler (L)
# remember to strip your secret key to avoid HTTP error
const API_KEY = strip ( slurp ( " secret.key " ))
proc updateHandler (b: Telebot , u: Update ): Future [ bool ] {. async .} =
if u.message.isNil:
# return true will make bot stop process other callbacks
return true
var response = u.message
if response.text.len > 0 :
let text = response.text
discard await b. sendMessage (response.chat.id, text, parseMode = " markdown " , disableNotification = true , replyParameters = ReplyParameters (messageId: response.messageId))
let bot = newTeleBot ( API_KEY )
bot. onUpdate (updateHandler)
bot. poll (timeout = 300 )
import telebot, asyncdispatch, options, logging, strutils
# remember to strip your secret key to avoid HTTP error
const API_KEY = strip ( slurp ( " secret.key " ))
proc updateHandler (bot: TeleBot , update: Update ): Future [ bool ] {. async .} =
discard await bot. sendPhoto (response.chat.id, " file:///path/to/photo.jpg " )
let bot = newTeleBot ( API_KEY )
bot. onUpdate (updateHandler)
bot. poll (timeout = 300 )
สำหรับข้อมูลเพิ่มเติม โปรดดูที่หน้า Telegram Bot API อย่างเป็นทางการ