Hướng Dẫn Viết Bot Telegram Cơ Bản Cho Người Mới Bắt Đầu
Telegram là một trong những nền tảng nhắn tin phổ biến nhất thế giới, không chỉ nhờ tính bảo mật cao mà còn bởi khả năng mở rộng mạnh mẽ thông qua các “bot”.
Một bot Telegram có thể làm rất nhiều việc: từ trả lời tự động, gửi thông báo, cập nhật tin tức, cho đến kết nối với các hệ thống hoặc API bên ngoài.
Nếu bạn chưa từng lập trình bot bao giờ, bài viết này sẽ hướng dẫn bạn cách tạo và viết một bot Telegram cơ bản nhất, giúp bot có thể phản hồi tin nhắn của người dùng chỉ trong vài phút.
1. Hiểu nhanh về bot Telegram
Bot Telegram là những tài khoản đặc biệt do người dùng hoặc lập trình viên tạo ra, hoạt động tự động thông qua Telegram Bot API. Khác với tài khoản cá nhân, bot không cần đăng nhập hay lưu tin nhắn, mà hoạt động dựa trên lệnh và dữ liệu do bạn lập trình sẵn.
Bạn có thể lập trình bot để:
- Trả lời tin nhắn theo từ khóa.
- Gửi thông báo từ website hoặc hệ thống khác.
- Quản lý nhóm Telegram (xóa spam, chào thành viên mới…).
- Giao tiếp với API như giá coin, thời tiết, hoặc dữ liệu cá nhân.
2. Tạo bot mới bằng BotFather
Telegram có một bot đặc biệt tên BotFather, được dùng để tạo và quản lý tất cả các bot khác.
Các bước tạo bot:
- Mở Telegram và tìm kiếm @BotFather.
- Gõ lệnh:
/start
- Tiếp theo, gõ:
/newbot
- BotFather sẽ yêu cầu bạn nhập:
- Tên hiển thị của bot (ví dụ: Crypto News Bot).
- Tên người dùng (username) cho bot, phải kết thúc bằng
bot, ví dụ:cryptonews_bot.
- Sau khi hoàn tất, bạn sẽ nhận được một API Token, có dạng:
123456789:ABCdefGhijkLmnopQRstuVWxyz
Token này là “chìa khóa” để bạn kết nối với bot trong mã nguồn. Hãy lưu lại cẩn thận và không chia sẻ cho người khác.
3. Viết bot bằng Python
Python là ngôn ngữ dễ học và được hỗ trợ tốt nhất khi làm bot Telegram. Dưới đây là hướng dẫn đơn giản nhất.
Cài đặt thư viện
Trước tiên, cài Python và thư viện python-telegram-bot:
pip install python-telegram-bot
Tạo file bot.py
Mở trình soạn thảo (VS Code, Notepad++…) và viết đoạn mã sau:
from telegram import Update
from telegram.ext import ApplicationBuilder, CommandHandler, MessageHandler, filters, ContextTypes
TOKEN = "API_TOKEN_CỦA_BẠN"
async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):
await update.message.reply_text("Xin chào! Tôi là bot Telegram đầu tiên của bạn.")
async def echo(update: Update, context: ContextTypes.DEFAULT_TYPE):
await update.message.reply_text(f"Bạn vừa nói: {update.message.text}")
app = ApplicationBuilder().token(TOKEN).build()
app.add_handler(CommandHandler("start", start))
app.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, echo))
print("Bot đang chạy...")
app.run_polling()
Chạy bot
Lưu lại file, sau đó mở terminal và chạy:
python bot.py
Khi bạn thấy dòng thông báo “Bot đang chạy…”, hãy quay lại Telegram và nhắn tin cho bot vừa tạo.
- Gõ
/startđể bot phản hồi lời chào. - Gửi bất kỳ tin nhắn nào, bot sẽ lặp lại nội dung bạn gửi.
Chúc mừng, bạn vừa tạo xong một bot Telegram cơ bản!
4. Mở rộng tính năng cho bot
Sau khi bot của bạn hoạt động, bạn có thể mở rộng thêm nhiều chức năng hơn. Dưới đây là vài ví dụ đơn giản:
Gợi ý: Bạn đang quan tâm đến Bitcoin? Tìm hiểu ngay Bitcoin Toàn Tập Cho Người Mới nhé!
a. Gửi ảnh khi người dùng gõ lệnh /photo
from telegram import InputFile
async def photo(update, context):
await update.message.reply_photo(InputFile("cat.jpg"), caption="Ảnh dễ thương")
app.add_handler(CommandHandler("photo", photo))
b. Thêm nút bấm trong tin nhắn
Bạn có thể thêm các nút bấm để người dùng tương tác:
from telegram import InlineKeyboardMarkup, InlineKeyboardButton
async def menu(update, context):
keyboard = [[InlineKeyboardButton("Xem giá Bitcoin", url="https://www.binance.com")]]
await update.message.reply_text("Chọn hành động:", reply_markup=InlineKeyboardMarkup(keyboard))
app.add_handler(CommandHandler("menu", menu))
5. Gợi ý công cụ và thư viện
| Ngôn ngữ | Thư viện gợi ý | Ghi chú |
|---|---|---|
| Python | python-telegram-bot |
Phổ biến và dễ dùng nhất |
| Node.js | node-telegram-bot-api |
Phù hợp cho lập trình web |
| PHP | php-telegram-bot |
Tốt cho website dùng PHP |
| Go | telebot |
Nhẹ, nhanh, dễ deploy |
6. Triển khai bot hoạt động 24/7
Khi chạy trên máy cá nhân, bot sẽ tắt nếu bạn đóng máy. Để hoạt động liên tục, bạn có thể deploy lên các nền tảng miễn phí hoặc giá rẻ như:
- Render.com
- Railway.app
- Vercel
- VPS riêng
Hoặc dùng ngrok để tạo đường dẫn tạm thời giúp test webhook ngay trên máy tính.
7. Tổng kết
Viết bot Telegram thực ra rất đơn giản. Chỉ với ba bước:
- Tạo bot qua @BotFather để lấy token.
- Dán token vào file Python.
- Chạy
bot.pyvà bắt đầu trò chuyện với bot của bạn.
Từ ví dụ cơ bản này, bạn có thể phát triển lên thành bot quản lý nhóm, bot cảnh báo giá coin, hoặc bot chatbot tự động trả lời.
Nếu bạn yêu thích Telegram và muốn tạo một trợ lý ảo riêng, đây chính là bước khởi đầu tốt nhất.

