Brutus: Bot Theo Dõi Hàng PS5 & Xbox Điều Khiển Qua Discord — Viết Bằng C#

Brutus Là Gì?

Brutus là một stock monitoring bot mã nguồn mở viết bằng C# (.NET), được phát triển bởi ogxd trên GitHub. Điểm khác biệt cốt lõi của Brutus so với các công cụ theo dõi hàng tồn kho thông thường là: toàn bộ hoạt động được điều khiển trực tiếp qua Discord bằng lệnh text — không cần chạm vào code hay file cấu hình sau khi deploy.

Bot theo dõi các URL sản phẩm (PS5, Xbox Series X, GPU…) và gửi cảnh báo lên kênh Discord khi phát hiện thay đổi trạng thái hàng. Dự án cũng được gắn tag azure, cho thấy kiến trúc được thiết kế để deploy lên đám mây Microsoft Azure — giúp bot chạy 24/7 mà không cần máy tính cá nhân luôn bật.

Brutus có 23 commit trên GitHub, viết hoàn toàn bằng C# (100%) và tích hợp CI/CD qua GitHub Actions.


Tại Sao Cần Bot Điều Khiển Qua Discord?

Trong giai đoạn khan hiếm hàng công nghệ (PS5, Xbox Series X, RTX 30xx…), người dùng thường cần:

  • Chạy bot 24/7 — nhưng không thể để máy tính cá nhân luôn bật
  • Điều chỉnh linh hoạt — thêm sản phẩm mới, tạm dừng theo dõi, đổi URL nhanh
  • Nhận thông báo ngay lập tức — trên điện thoại qua Discord push notification

Brutus giải quyết tất cả: deploy lên Azure chạy nền liên tục, còn bạn ngồi đâu cũng quản lý được qua Discord từ điện thoại.


Tính Năng Cốt Lõi

🎮 Điều Khiển Hoàn Toàn Qua Discord

Không cần SSH, không cần chỉnh file config sau khi triển khai. Tất cả được thực hiện bằng lệnh chat trực tiếp trong kênh Discord.

📋 Hệ Thống Job (Công Việc Theo Dõi)

Brutus tổ chức việc theo dõi theo từng “job” — mỗi job tương ứng một sản phẩm cần theo dõi. Bạn có thể quản lý nhiều sản phẩm song song, mỗi cái với URL và điều kiện kiểm tra riêng.

🔍 Kiểm Tra Theo Biểu Thức (Expression Check)

Mỗi job có thể cấu hình biểu thức kiểm tra (includes) — bot sẽ so khớp nội dung trang web với biểu thức đó để xác định trạng thái hàng, thay vì chỉ kiểm tra trạng thái thô.

⏸️ Tạm Dừng & Tiếp Tục Linh Hoạt

Từng job có thể pause và resume riêng lẻ — hữu ích khi bạn muốn dừng theo dõi một sản phẩm tạm thời mà không xóa cấu hình.

📢 Thông Báo Lên Kênh Discord

Khi phát hiện hàng, Brutus gửi alert trực tiếp vào kênh Discord đã cấu hình — và Discord sẽ push notification đến điện thoại của bạn ngay lập tức.

☁️ Thiết Kế Cho Azure / Đám Mây

Tag azure trong dự án cho thấy Brutus được thiết kế để chạy trên Azure — không cần máy tính cá nhân luôn hoạt động. Deploy một lần, bot tự chạy nền liên tục.


Các Lệnh Discord Của Brutus

Toàn bộ điều khiển thực hiện qua prefix !brutus:

LệnhChức năng
!brutus statusXem trạng thái hiện tại của bot
!brutus jobsLiệt kê tất cả job đang đăng ký
!brutus job add MY_JOBThêm và khởi động job mới
!brutus job remove MY_JOBXóa một job
!brutus job set MY_JOB url URLĐặt URL cần theo dõi cho job
!brutus job set MY_JOB includes EXPRESSIONĐặt biểu thức kiểm tra nội dung trang
!brutus job pause MY_JOBTạm dừng một job
!brutus job start MY_JOBTiếp tục job đang bị dừng

Cấu trúc lệnh nhất quán, dễ nhớ và có thể thực hiện hoàn toàn từ điện thoại qua app Discord.


Yêu Cầu Hệ Thống & Triển Khai

Thành phầnYêu cầu
Nền tảng phát triển.NET SDK, Visual Studio hoặc VS Code
Ngôn ngữC# (.NET)
DiscordBot token từ Discord Developer Portal
Hosting (khuyên dùng)Microsoft Azure (App Service hoặc Azure Functions)
CI/CDGitHub Actions (đã tích hợp sẵn)

Hướng Dẫn Bắt Đầu

Bước 1: Clone Repository

bash

git clone https://github.com/ogxd/brutus.git

Bước 2: Mở Solution

Mở file brutus.sln trong Visual Studio hoặc IDE hỗ trợ .NET.

Bước 3: Tạo Discord Bot Token

  1. Vào Discord Developer Portal
  2. Tạo ứng dụng mới → vào mục Bot → lấy Token
  3. Mời bot vào server Discord của bạn với quyền đọc/gửi tin nhắn

Bước 4: Cấu Hình

Điền Discord bot token và kênh Discord muốn nhận thông báo vào cấu hình của ứng dụng.

Bước 5: Deploy

  • Chạy local: Build và chạy project trực tiếp từ Visual Studio
  • Chạy trên Azure: Deploy lên Azure App Service để bot hoạt động 24/7 mà không cần máy tính cá nhân

Bước 6: Thêm Job Đầu Tiên

Sau khi bot online, gõ trong kênh Discord:

!brutus job add PS5_SONY
!brutus job set PS5_SONY url https://url-trang-ban-ps5.com/ps5
!brutus job set PS5_SONY includes "Thêm vào giỏ hàng"

Cấu Trúc Dự Án

brutus/                 — Mã nguồn chính
  (Discord bot logic, job manager, web scraper)
.github/workflows/      — CI/CD pipeline GitHub Actions
brutus.sln              — Visual Studio solution file
icon.png                — Icon dự án
README.md               — Tài liệu ngắn gọn

So Sánh Brutus Với Các Bot Tương Tự

Tiêu chíBrutusAusStockCheckerPS5 Finder GERPS5 Stock Bot (ParrotGaming)
Ngôn ngữC#C# (.NET 5)C#Python
Điều khiểnDiscord commandsFile YAMLGiao diệnTự động hoàn toàn
Thông báoDiscordEmail + beepChưa rõDiscord
HostingAzure (cloud)Máy cá nhânMáy cá nhânMáy cá nhân
Thị trườngBất kỳ URLÚcĐứcNhiều nước
Tính linh hoạt URLCao (bất kỳ URL)Cố định 9 shopCố định shop ĐứcCố định retailer

Ưu điểm nổi bật của Brutus: Tính linh hoạt tối đa về URL (theo dõi bất kỳ trang web nào) kết hợp với điều khiển từ xa qua Discord và thiết kế cloud-native cho Azure.


Câu Hỏi Thường Gặp (FAQ)

Brutus có miễn phí không? Có, mã nguồn mở trên GitHub. Tuy nhiên nếu deploy lên Azure, bạn sẽ phải trả phí Azure theo mức sử dụng (có tier miễn phí cho lưu lượng nhỏ).

Brutus chỉ theo dõi PS5 và Xbox không? Không. Brutus có thể theo dõi bất kỳ URL nào — bạn tự nhập URL và biểu thức kiểm tra. PS5 và Xbox chỉ là các ví dụ phổ biến.

Tôi cần biết lập trình để dùng không? Cần hiểu cơ bản về C#/.NET để build và deploy, cùng kiến thức tạo Discord bot. Sau khi deploy xong, điều khiển hàng ngày chỉ qua lệnh Discord — không cần động đến code.

Tại sao dùng Azure thay vì máy tính cá nhân? Azure giúp bot chạy 24/7 ổn định mà không phụ thuộc vào máy tính của bạn có đang bật hay không. Với sản phẩm khan hiếm, mỗi phút bot offline đều có thể là cơ hội bỏ lỡ.

Brutus có tự động mua hàng không? Dựa trên tài liệu hiện có, Brutus tập trung vào theo dõi và cảnh báo — gửi thông báo Discord khi có hàng, còn việc mua thì bạn tự làm. Đây là điểm khác biệt quan trọng so với các auto-buy bot.

GitHub Actions được dùng làm gì trong dự án này? CI/CD pipeline tự động build và kiểm tra code mỗi khi có thay đổi — giúp đảm bảo chất lượng và hỗ trợ quy trình deploy tự động lên Azure.


Lưu Ý Về Đạo Đức & Pháp Lý

Brutus được đặt tên rõ ràng là “scalper bot” — công cụ có thể được dùng theo nhiều mục đích khác nhau. Một số điểm cần lưu ý:

  • Theo dõi hàng tồn kho để mua cho bản thân là hoàn toàn hợp lý và hợp pháp
  • Sử dụng để thu mua số lượng lớn nhằm bán lại giá cao (scalping thương mại) vi phạm điều khoản của hầu hết nhà bán lẻ và bị cộng đồng phản đối
  • Một số quốc gia đang xem xét hoặc đã có luật hạn chế hành vi scalping bằng bot đối với hàng tiêu dùng thiết yếu
  • Người dùng tự chịu trách nhiệm về cách sử dụng công cụ

Kết Luận

Brutus nổi bật trong nhóm công cụ theo dõi hàng tồn kho nhờ kiến trúc cloud-native với Azure và hệ thống điều khiển qua Discord — hai tính năng hiếm gặp ở các dự án cùng loại. Việc quản lý nhiều job theo dõi song song từ điện thoại, không cần máy tính cá nhân luôn bật, là lợi thế thực tế rõ ràng.

Dù tài liệu còn tối giản, kiến trúc kỹ thuật của dự án thể hiện tư duy xây dựng hệ thống đúng hướng: linh hoạt về URL mục tiêu, điều khiển từ xa, và thiết kế để mở rộng.

Xem mã nguồn tại: github.com/ogxd/brutus


Bài viết được tổng hợp từ thông tin công khai trên GitHub repository của tác giả ogxd. Do tài liệu dự án ngắn gọn, một số thông tin kỹ thuật về kiến trúc Azure được suy luận từ tags và cấu trúc code của dự án.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

0
    0
    Tạo wiki game yêu thích
    Giỏ game trốngTrở lại trang
    Lên đầu trang