Bot Telegram giúp theo dõi trạng thái các ứng dụng trên Apple TestFlight và thông báo ngay lập tức khi có slot trống. Phiên bản này được viết bằng Golang để đạt hiệu năng tối ưu, tiết kiệm tài nguyên và hoạt động ổn định 24/7.
- Theo dõi thời gian thực: Tự động kiểm tra các link TestFlight theo chu kỳ cấu hình.
- Thông báo tức thì: Gửi tin nhắn Telegram kèm nút "Tải ngay" khi phát hiện có slot.
- Tối ưu hóa Rate Limit: Cơ chế quét so le (staggered) và tự động dừng khi bị Apple giới hạn (Error 429).
- Tự động dọn dẹp: Phát hiện và xóa bỏ các link TestFlight đã chết hoặc bị gỡ (Error 404).
- Quản lý thông minh: Người dùng có thể tự thêm/xóa ứng dụng theo dõi thông qua giao diện nút bấm tiện lợi.
- Database ổn định: Sử dụng MongoDB với cơ chế đánh chỉ mục (indexing) cho tốc độ truy vấn cực nhanh.
- Go: Phiên bản 1.20 trở lên.
- MongoDB: Đã cài đặt và đang chạy (local hoặc Atlas).
- Bot Token: Lấy từ @BotFather.
-
Clone dự án:
git clone https://github.com/dabeecao/testflight-checker.git cd testflight-checker -
Cấu hình môi trường: Sao chép file mẫu và điền thông tin của bạn:
cp .env.example .env
Chỉnh sửa file
.envvới Token và URI MongoDB của bạn. -
Cài đặt thư viện:
go mod tidy
-
Biên dịch và Chạy: Sử dụng script build có sẵn:
chmod +x build.sh ./build.sh ./testflight-checker
/start: Khởi động bot và xem lời chào./theodoi [URL]: Thêm một ứng dụng TestFlight vào danh sách theo dõi./botheodoi: Xem danh sách ứng dụng đang theo dõi và tùy chọn bỏ theo dõi./kiemtra: Kiểm tra thủ công trạng thái của tất cả ứng dụng đang theo dõi./help: Xem hướng dẫn sử dụng chi tiết.
- Watcher: Chạy trong một goroutine riêng biệt, sử dụng
time.Tickerđể quản lý chu kỳ. - Scraper: Sử dụng
htmlquery(XPath) để bóc tách dữ liệu từ Apple. Có User-Agent iPhone hiện đại để tránh bị block. - Graceful Shutdown: Bot lắng nghe tín hiệu
SIGINT,SIGTERMđể đóng kết nối DB và dừng an toàn.
Nếu bạn thấy bot hữu ích, hãy ủng hộ tác giả tại: dabeecao.org#donate ❤️
Phát triển bởi @dabeecao