TF
T-Fluencers Docs
Quay lại SRS

IV. Hệ thống nền & Tác vụ tự động#

32. Cập nhật thông số video định kỳ#

Mục tiêu#

Tự động thu thập và cập nhật lượt xem, tương tác cho video đã gửi.

Cơ chế#

  • Cron job crawl thông số video từ các nền tảng:
    • Crawl YouTube: crawl-content-youtube
    • Crawl TikTok: crawl-content-tiktok + crawl-content-tiktok-self
    • Crawl Facebook: crawl-content-facebook
  • Gọi Social Profile Service (AT-Core) để lấy metadata.
  • Lưu kết quả vào content-analytic-daily.
  • Cập nhật báo cáo: daily, weekly, monthly.
  • Ghi log mỗi lượt crawl vào content-crawl-histories.

Cron đã triển khai#

  • Xóa lịch sử crawl cũ: mỗi 2 ngày
  • Kiểm tra lại analytics: mỗi 4 giờ
  • Audit content analytic: hàng ngày 04:00

33. Tính hoa hồng định kỳ#

Mục tiêu#

Tự động tính toán hoa hồng dựa trên hiệu suất video và cơ cấu thưởng.

Cơ chế#

  1. Backend lấy danh sách thử thách có cơ cấu hoa hồng (CampaignReward).
  2. Lấy video hợp lệ (APPROVED) thuộc các thử thách đó.
  3. So khớp video với reward structure → tính hoa hồng.
  4. Kiểm tra ngân sách trước khi lưu (xem mục 22).
  5. Nếu vượt 100% budget → không lưu hoa hồng.
  6. Ghi log kết quả.

Cron đã triển khai#

  • Cập nhật event analytics daily: qua API trigger
  • Rerun reward theo cấu hình

34. Giám sát ngân sách tự động#

Cơ chế#

  • Cron mỗi 30 phút: kiểm tra ngưỡng budget cho mỗi chiến dịch.
  • Gửi cảnh báo email (SendGrid) khi vượt mốc 75%, 95%, 100%.
  • Tự động chặn submit content khi vượt 95%.
  • Tự động ngừng tính hoa hồng khi vượt 100%.

35. Xử lý nội dung tự động#

Cơ chế#

  • Auto reject content: Tự động từ chối content không hợp lệ (hàng ngày 03:45)
  • Auto reject content not found: Từ chối content không tìm thấy trên nền tảng (hàng ngày 04:30)
  • Warning tag: Tự động gắn cờ cảnh báo cho content vi phạm (hàng ngày 05:30)
  • Content callback queue: Xử lý callback từ nền tảng qua Asynq queue

36. Hàng đợi xử lý bất đồng bộ (Asynq)#

Tác vụ đã triển khai#

  1. action_after_admin_change_status_content — Xử lý hậu cần khi admin đổi trạng thái content
  2. action_submit_content — Xử lý khi content được submit

Cấu hình#

  • Priority queues: Critical (10), Default (3), Schedule (3)
  • Max retry: 5-10 lần
  • Task timeout: 30 phút
  • Task retention: 24 giờ

37. Retry thanh toán & Kiểm tra trạng thái#

Cơ chế#

  • Retry push withdraws to TOS: Mỗi 30 phút, retry đẩy lệnh rút tiền sang AccessTrade TOS
  • Check campaign invoice status: Mỗi 15 phút (prod), kiểm tra trạng thái hóa đơn chiến dịch
  • Check user social status: Mỗi giờ, kiểm tra trạng thái hồ sơ social
  • Check Facebook status: Hàng ngày 01:00, kiểm tra trạng thái Facebook

38. Đánh giá nội dung bằng AI (Vertex AI)#

Mục tiêu#

Sử dụng AI để đánh giá chất lượng nội dung video dựa trên transcript.

Cơ chế#

  1. Video được trích xuất transcript (qua webhook transcript).
  2. Hệ thống gọi Google Vertex AI (Gemini API) để đánh giá transcript.
  3. Đối chiếu nội dung với tiêu chí chiến dịch.
  4. Kết quả: điểm số, độ phù hợp, vấn đề phát hiện, khuyến nghị.
  5. Kết quả AI được lưu phục vụ đối soát (reconciliation checklist).

Phạm vi#

  • Tính năng hiện tại hỗ trợ đánh giá chất lượng nội dung phục vụ quy trình đối soát. Kết quả AI là dữ liệu tham chiếu cho admin, không tự động phê duyệt.

39. Webhook & Tích hợp bên ngoài#

Webhook đã triển khai#

WebhookMô tả
POST /content-callbackCallback khi content được cập nhật từ nền tảng
POST /content-callback/tosCallback từ AccessTrade TOS
POST /content-callback/transcriptCallback khi transcript sẵn sàng
POST /social-profiles/webhookCập nhật hồ sơ social
POST /influencer-profiles/webhook/enrichmentEnrichment profile từ AT-Core
POST /transcripts/webhookCallback transcript

Tích hợp bên ngoài#

Dịch vụMục đích
AT-Core (influence-meter)Enrichment profile, thông số kênh, nhân khẩu học
Service TOS (AccessTrade)eKYC, ký hợp đồng, rút tiền
Google Vertex AIĐánh giá nội dung AI
SendGridGửi email thông báo, cảnh báo
eSMSGửi SMS/OTP
Firebase (FCM)Push notification mobile
TelegramAlert cho admin
MinIOLưu trữ file (avatar, CCCD, export)
Google DriveLưu trữ hợp đồng
ElasticsearchAPM monitoring