telebot.nim
2024.12.17
Implémentation du client API Async Telegram Bot dans @Nim-Lang
À partir de la version 1.0.0, les procs comme newMessage
, newPhoto
,.. ont disparu, utilisez sendMessage
, sendDocument
à la place. Si vous préférez toujours l'ancienne manière d'envoyer des messages, importez simplement telebot/compat
pour une compatibilité ascendante.
$ 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 )
Pour plus d'informations, veuillez vous référer à la page officielle de l'API Telegram Bot