Code Telegram Chatbot

 Những thứ mà tôi học được:

1. ConversationHandler: Cái này có thể cho mình custom workflow làm việc. Ví dụ như việc order đồ ăn chẳng hạn: Step 1 => Step 2 => ...

- Khi làm việc với cái này thì cần định nghĩa ra các state để xác định xem đang ở bước nào (sử dụng enum chẳng hạn)

- Tiếp theo là định nghĩa ra callback. Ví dụ khi người dùng nhấn /order thì hiện ra InlineKeyboard, khi mà ấn vào một nút ở keyboard nó sẽ gọi đến một hàm xử lý logic (hàm này gọi là callback) 

- Khi mà kết thúc một workflow làm việc thì sẽ sử dụng ConservationHandler.END

2. func(update: Update, context: ContextTypes)

- Đây là cấu trúc cơ bản của một hàm tương tác với telegram API, update sẽ nhận những thông tin liên quan đến tin nhắn

- Một vài cái cơ bản có thể nhận: message, file, image, callback (query = update.callback_query), effective_user (thông tin của user)

- Một vài cái cơ bản mà update có thể gửi: edit_text (text sẽ được thay thế), reply_text, send_text, send_imgs, ....

- context có thể được dùng để truyền qua lại dữ liệu trong workflow. Ví dụ khi một người dùng đặt Burgur thì có thể gán context.user_data["item"] = "Burgur"

- context cũng có thể gửi tin nhắn chủ động chứ không phải là reply 

3. BotCommand

- Đây là nơi để khai báo các /start, /order, ...

- Có thể set command theo scope (ví dụ chỉ admin)

- app = ApplicationBuilder().set_handler()

- Thằng nào được khai báo trước mà match thì sẽ được lấy

Nhận xét

Bài đăng phổ biến từ blog này

TÚM CÁI VÁY

Kì 2023.2 ở HUST

Học quân sự ở HUST có gì vui ?