Telegram đang là một phần mềm nổi tiếng và phổ biến nhất hiện nay. Nó được nhiều công ty tin tưởng làm phần mềm chat chính. Đối với devops hay sysadmin, chúng ta có thể sẽ cần gửi các thông báo hoặc cảnh báo về hệ thống lên Telegram. Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách gửi các tin nhắn đó bằng các thư viện và cách đơn giản nhất.
Tạo Telegram bot
Bước 1: Chat với BotFather để tạo một bot
- Tại ô Search của Telegram chọn BotFather
- Chat
/newbot
vào khung chat với BotFather - Nhập tên cho bot. Ở đây mình chọn là test_bot
- Chọn username cho bot. Ở đây mình chọn là
TenCuaBot
Quá trình tạo bot diễn ra như sau:

Sau khi hoàn tất bạn sẽ nhận được 1 token, và ở ví dụ này của mình sẽ là: Part00000:Part1111111111111111-Part22222222222222
Bước 2: Thêm bot vào group:
- Chọn group cần thêm
- Chọn Add member → @your_bot. Ở ví dụ này của mình sẽ là @test_bot
- Khởi động bot bằng cách chat với bot trong room. Ở ví dụ này của mình sẽ là
/my_id @TenCuaBot
Bước 3: Lấy chat_id
Để lấy được chat_id bạn truy cập vào url sau:
https://api.telegram.org/bot[TOKEN]/getUpdates
Ví dụ https://api.telegram.org/botPart00000:Part1111111111111111-Part22222222222222/getUpdates
Tại reponse trả về kiểu json, bạn chú ý đến key có tên là result.chat.id có id bắt đầu bằng dấu -
đó chính là chat_id của bạn. Hãy note lại token có được ở Bước 1 và chat_id này nhé. Ở ví dụ này chat_id của mình là -123456789123
Gửi cảnh báo tới Telegram qua API
Sử dụng luôn chính trình duyệt của bạn với method GET của http với cú pháp sau:
https://api.telegram.org/bot[TOKEN]/sendMessage?chat_id=[CHAT_ID]&text=[MY_MESSAGE_TEXT]
Gửi cảnh báo sử dụng curl
Nếu bạn muốn gửi cảnh báo bằng câu lệnh như curl bạn có thể tham khảo:
curl -X POST "https://api.telegram.org/bot[TOKEN]/sendMessage" -d "chat_id=[CHAT_ID]&text=[MY_MESSAGE_TEXT]"
Gửi cảnh báo sử dụng thư viện python-telegram-bot của python
Có rất nhiều thư việc của python hỗ trợ việc gửi message lên telegram. Sau đây mình sẽ sử dụng một thư viện dễ dùng và đơn giản nhất của python.
Cài đặt thư viện:
pip install python-telegram-bot
Sau đây là 1 đoạn code mẫu bạn có thể tham khảo:
import telegram import random def send_test_message(): try: random_number = random.randint(0, 1000) telegram_notify = telegram.Bot("[TOKEN]") message = "`Số random là {}`".format(random_number) telegram_notify.send_message(chat_id="[CHAT_ID]", text=message, parse_mode='Markdown') except Exception as ex: print(ex) send_test_message()
Tổng kết
Bạn đã tìm hiểu các cách có thể gửi tin nhắn lên Telegram. Nếu có bất kì thắc mắc hoặc câu hỏi gì, xin để lại bình luận.