昨天講完了 Telegram Bot 的一些基本元件,接著我們就要來處理最基本的文字訊息了。
在 Telegram Bot 中,我們首先需要先寫一個處裡函式,前面我們寫了一個基本的回聲 Bot ,怕各位忘記我再放一次。
import os
import logging
from telegram import Update
from telegram.ext import Updater, Filters, CallbackContext
from telegram.ext import MessageHandler
logging.basicConfig(level=logging.DEBUG)
def message_handler(update: Update, context: CallbackContext):
context.bot.send_message(chat_id=update.message.chat.id, text=update.message.text)
updater = Updater(os.environ["TOKEN"])
updater.dispatcher.add_handler(MessageHandler(filters=Filters.text, callback=message_handler))
if __name__ == "__main__":
updater.start_polling()
updater.idle()
updater.stop()
上方的 message_handler
首先定義了我們要如何處裡傳入的文字訊息,而我們暫時只是簡單的將傳入的文字再回傳給使用者而已。
而我們在下方的 Dispatcher 加入了一個 MessageHandler
,透過 Filters.text 篩選出文字訊息,並指定使用剛剛的 message_handler
處裡我們傳入的文字訊息。
最後我們就可以成功的實現一個回聲機器人了。
那麼就先到這邊,在通訊軟體中,文字訊息是最基本的,因此在最前面先講如何處理。
大家掰~掰~