Kết nối một bot Telegram
Tạo bot bằng @BotFather, dán token vào console, rồi kiểm tra webhook mà máy chủ tự đăng ký giúp bạn cho kênh Telegram vừa dựng.
Telegram là kênh ngoài ít thao tác nhất: một token từ @BotFather là toàn bộ phần khai báo, phần webhook do máy chủ tự lo.
Mục tiêu
Một kênh Telegram nhận được tin khách nhắn cho bot, cùng một đường dẫn bạn gửi cho khách để họ mở cuộc trò chuyện.
Trước khi bắt đầu
- Một tài khoản được phép ghi trên kênh — chi tiết ở Vai trò và quyền theo tính năng.
- Một tài khoản Telegram để nói chuyện với @BotFather, là dịch vụ của bên thứ ba.
- Địa chỉ công khai của máy chủ phải là địa chỉ Telegram gọi tới được. Đây là việc của người triển khai, xem callout dưới.
Telegram chỉ nhận HTTPS ở cổng 443, 80, 88 hoặc 8443, và không đăng ký được
một địa chỉ localhost. Địa chỉ đó nằm ở biến môi trường API_PUBLIC_URL,
thuộc phần vận hành và mô tả trong tệp README.md của bản cài đặt. Trên máy
phát triển hãy dùng một tunnel công khai.
Các bước
Mở ứng dụng Telegram, nhắn cho @BotFather và gửi lệnh /newbot.
Đặt tên hiển thị và username cho bot. BotFather trả lại một token dạng
123456789:AAE...; giữ nó kín như một mật khẩu.
Về console, ở cột trái bấm Kênh, bấm Thêm Kênh, rồi chọn ô Telegram.
Điền Tên kênh và dán token vào ô Bot token.

Bật Bật lời chào kênh nếu muốn bot tự chào khách, rồi bấm Tạo tiện ích.
Màn Thành công! hiện khối Chia sẻ cho khách hàng kèm đường dẫn t.me
và mã QR. Giữ lại đường dẫn đó, vì Telegram không có mã nhúng nào.
Bấm Đi đến Kênh, mở kênh vừa tạo và chọn tab Cấu hình Telegram.
Ở mục Webhook, đọc thẻ trạng thái. Đã đăng ký nghĩa là Telegram đã nhận địa chỉ của máy chủ.
Mỗi khi địa chỉ công khai của máy chủ thay đổi, quay lại đây và bấm Đăng ký lại webhook.
Kiểm chứng
Tab Cấu hình Telegram hiển thị Tên bot và Bot ID đúng như BotFather đã cấp, còn thẻ webhook đọc Đã đăng ký kèm thời điểm đăng ký.
Mở đường dẫn t.me của bot trên một máy khác, bấm bắt đầu rồi gửi một câu. Câu
đó phải hiện trong hàng đợi Trò chuyện trong vài giây, và câu trả lời từ
console phải về tới Telegram.
Sự cố thường gặp
| Hiện tượng | Nguyên nhân | Cách xử lý |
|---|---|---|
| Tạo kênh thất bại ngay khi bấm | Token sai, có khoảng trắng thừa, hoặc đã bị thu hồi | Xin token mới từ @BotFather rồi dán lại |
| Thẻ webhook là Thất bại, kèm câu của Telegram | Địa chỉ công khai không phải HTTPS ở cổng Telegram chấp nhận | Nhờ người triển khai sửa API_PUBLIC_URL, rồi bấm Đăng ký lại webhook |
| Thẻ là Chưa đăng ký | Kênh đã tạo nhưng lần đăng ký đầu chưa chạy xong | Bấm Đăng ký lại webhook |
| Khách nhắn mà không có gì về | Webhook vẫn trỏ địa chỉ cũ sau khi máy chủ đổi địa chỉ | Bấm Đăng ký lại webhook rồi thử lại |
| Gửi hỏng: khách hàng đã chặn bot | Khách đã chặn từ phía Telegram | Không xử lý được từ console; liên hệ khách bằng kênh khác |
| Gửi hỏng: bot không nhắn trước được | Telegram cấm bot mở cuộc trò chuyện | Gửi đường dẫn t.me để khách nhắn trước |
| Không tìm thấy ô để đổi token | Token được mã hoá ở máy chủ và không gửi xuống trình duyệt | Nối lại bot bằng một kênh mới |