Skip to content

About

bot telegram crawl tin tuc cua hcmus

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

🐳 HCMUS News Telegram Bot 🐳

golangmascot

Typing SVG

telegram  go  gemini  status-bot-active

what

tinh nang thong bao tin moi cua bot discord duoc tach ra mot phien ban cho telegram va nang cap hon.

0. How to use

click here (for users)

1. Advanced features

  • Bot crawl tin tức của HCMUS và gửi thông báo đến user thông qua Telegram.
  • New feature: Tóm tắt nội dung chính của bài viết bằng Gemini, giúp nắm nhanh thông tin trước khi đọc tiếp.
  • Quét tin tức mới 10 phút/lần, gửi ngay tới user khi có tin mới.
  • Tập trung vào 1 feature chính là thông báo tin mới (không tích hợp quá nhiều tính năng như bot discord).
  • Sử dụng goroutines, channel và worker pool của Go để xử lý đồng thời, tăng hiệu suất.

Lưu ý: Bot chỉ hỗ trợ private chat (chat riêng/cá nhân), không hỗ trợ group chat.

2. News Sources

Category URL
Thông tin dành cho sinh viên https://hcmus.edu.vn/category/dao-tao/dai-hoc/thong-tin-danh-cho-sinh-vien
Tin tức chung - HCMUS https://hcmus.edu.vn/category/tin-tuc/
Lịch thi - Phòng khảo thí https://ktdbcl.hcmus.edu.vn/index.php/cong-tac-kh-o-thi/l-ch-thi-h-c-ky
Thông báo - Phòng khảo thí https://ktdbcl.hcmus.edu.vn/index.php/thong-bao
Khoa CNTT - FIT@HCMUS https://www.fit.hcmus.edu.vn/tin-tuc
CLC/APCS - CTĐA@HCMUS https://www.ctda.hcmus.edu.vn/vi/thong-bao/

Note: Chương trình chính quy CNTT sài chung với khoa CNTT

ảnh meme của Gopher:

source image: https://github.com/nlepage/gophers

3. Telegram commands

Command

/start - Giới thiệu và hướng dẫn sử dụng bot
/subscribe - Đăng ký nhận thông báo
/unsubscribe - Hủy nhận thông báo

command-preview
golangmascot
Factos 1:

maybe toi se xoa tinh nang nay ben bot discord va chi phat trien them ben nay (neu co thoi gian) (🐳)

4. Demo

Click here to see demo
PC/Laptop Mobile
Thông báo

5. Tech stack

Factos 2:

t thay code bang golang suong hon js (i'm addicted to golang lol xD)

6. Run (for dev)

click here (if u want to run it locally)

B1. Đảm bảo đã cài Go 1.26.1 thông qua: https://go.dev/doc/install

brew install go # for homebrew (macOS)

go version # check version

B2. Clone repo này về và di chuyển vào thư mục:

git clone https://github.com/cuogne/NewsTeleBot.git

cd NewsTeleBot

B3. chạy file setup.sh đã được thiết lập sẳn trong repo để setup:

bash setup.sh

shell trên giúp bạn cài đặt các dependency cần thiết của Go, tạo file .env dựa theo mẫu .env.example và thiết lập hot reload.

B4. Sau khi chạy xong, bạn sẽ có file .env trong thư mục với các biến môi trường cần thiết.

TELEGRAM_BOT_TOKEN=your_telegram_bot_token
SUPABASE_URL=your_supabase_url
GEMINI_API_KEY=your_gemini_api_key
GEMINI_MODELS=add_your_gemini_models_here_separated_by_commas

Thay các token trong file .env vừa được tạo bằng token của bạn, cách lấy như sau:

  • Telegram Bot Token: Cài đặt Telegram theo link bên trên, tạo bot trên Telegram bằng cách nhắn tin với BotFather, gõ /newbot và làm theo hướng dẫn để lấy token và dán vào .env.

  • Supabase URL: Login và tạo project trên Supabase, dán script tạo database trong db/database.sql vào SQL Editor và run nó, sau đó chọn Connect và lấy URL trong Session pooler.

  • Gemini API Key: tạo tài khoản trên Google AI Studio, chọn Get API Key và lấy key.

  • Gemini Models (tùy chọn): list model Gemini dùng để tóm tắt, phân tách bằng dấu phẩy. Ví dụ: gemini-3.5-flash-lite,gemini-3.7-flash,gemini-3.6-flash.

Bạn có thể check các model Gemini có sẵn tại https://ai.google.dev/gemini-api/docs/models và thêm vào các model tương thích với nhu cầu của bạn.

B5. Run bot:

go run ./cmd/bot # chạy trực tiếp

make run # chạy bằng Makefile, lệnh như chạy trực tiếp

make dev # chạy ở chế độ dev, có hot reload (sử dụng air)

go build -o ./bin/bot ./cmd/bot # build thành binary

Hoặc run thông qua docker:

docker build -t hcmus-news-tele-bot .
docker run -d --env-file .env --name tele-bot --restart unless-stopped hcmus-news-tele-bot

Check logs và stats:

docker logs -f tele-bot
docker stats tele-bot

golangmascot

About

bot telegram crawl tin tuc cua hcmus

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages