chore: remove legacy specification documents and internal rules file

This commit is contained in:
2026-07-27 18:28:46 +07:00
parent 4534e4ecb8
commit 911d5be3b2
151 changed files with 26567 additions and 7922 deletions

View File

@@ -0,0 +1,76 @@
---
card_id: "marketing/frequency_capping"
title: "Giới hạn Tần suất (Frequency Capping)"
domain: "marketing"
related_cards:
- "marketing/marketing_campaign"
- "marketing/marketing_message"
- "targeting/segmentation"
tags: ["marketing", "capping", "limit", "notification", "spam"]
---
# Giới hạn Tần suất (Frequency Capping)
## Mô tả ngắn
Frequency Capping là cấu hình giới hạn số lượng tin nhắn tối đa được phép gửi đến một khách hàng thông qua một kênh liên lạc cụ thể (SMS, Email, Push Notification) trong một khoảng thời gian nhất định. Mục đích là để bảo vệ trải nghiệm khách hàng, tránh tình trạng spam và tối ưu hóa chi phí gửi tin nhắn của hệ thống OneMarketing.
## Thuật ngữ liên quan
- **Notification Channel**: Kênh gửi thông báo (SMS, Email, Push Notifications).
- **Capping Period**: Chu kỳ giới hạn (Daily, Weekly, Monthly).
- **Whitelist**: Danh sách khách hàng ngoại lệ, được phép bỏ qua các quy tắc giới hạn tần suất chung.
## Cấu trúc dữ liệu (Data Schema)
### Thông tin giới hạn chung
| Field Name | Description | Constraints / Rules |
|---|---|---|
| Frequency Cap Id | Mã định danh cấu hình giới hạn tần suất | Bắt buộc. |
| Notification Channel | Kênh thông báo áp dụng giới hạn (SMS, Email, Push Notifications) | Bắt buộc. Chỉ được có 1 cấu hình hiệu lực cho 1 kênh tại 1 thời điểm. |
| Effective Date From / To | Thời gian cấu hình có hiệu lực | Bắt buộc. |
| Description | Mô tả cấu hình | Không bắt buộc. |
### Cấu hình chu kỳ (Period Units)
*Một cấu hình có thể bao gồm nhiều chu kỳ (Period Unit) khác nhau.*
| Field Name | Description | Constraints / Rules |
|---|---|---|
| Capping Period | Chu kỳ áp dụng giới hạn: Daily (Hàng ngày), Weekly (Hàng tuần), Monthly (Hàng tháng) | Bắt buộc. Không được cấu hình trùng chu kỳ trong cùng 1 channel. |
| Maximum number | Số lượng tin nhắn tối đa được phép gửi cho 1 khách hàng trong chu kỳ | Bắt buộc. Lớn hơn 0. |
### Danh sách ngoại lệ (Whitelist)
| Field Name | Description | Constraints / Rules |
|---|---|---|
| Include Whitelist | Cờ đánh dấu có áp dụng ngoại lệ cho tệp khách hàng đặc biệt hay không | Mặc định OFF. |
| Customer list | Danh sách khách hàng đặc biệt được bỏ qua giới hạn tần suất (nhận được nhiều tin nhắn hơn bình thường) | Bắt buộc nếu Include Whitelist = ON. Lookup từ hệ thống phân tập (Segmentation). |
## Cách hoạt động (How It Works)
- **Cấu hình**: Quản trị viên thiết lập số lượng thông báo tối đa cho từng kênh (VD: SMS tối đa 1 tin/ngày, 3 tin/tuần). Các cấu hình này được áp dụng chung cho tất cả chiến dịch Marketing (OMR) trên toàn hệ thống.
- **Theo dõi**: Hệ thống tự động theo dõi (track) số lượng tin nhắn mà mỗi khách hàng đã nhận được trên từng kênh và trên từng chu kỳ (ngày, tuần, tháng).
- **Kiểm tra trước khi gửi**: Khi một chiến dịch Marketing (`marketing/marketing_campaign`) chuẩn bị gửi tin nhắn cho khách hàng:
- Hệ thống kiểm tra số lượng tin đã gửi trong kỳ so với giới hạn cấu hình.
- Nếu đã đạt hoặc vượt ngưỡng giới hạn (Maximum number) → tin nhắn sẽ KHÔNG được gửi đi cho khách hàng đó.
- Nếu chưa đạt ngưỡng → tin nhắn được gửi và hệ thống cộng dồn bộ đếm.
- **Ngoại lệ (Whitelist)**: Nếu khách hàng nằm trong "Customer list" của Whitelist, hệ thống sẽ bỏ qua kiểm tra giới hạn và cho phép gửi tin bình thường, đảm bảo các tin nhắn quan trọng đến được nhóm khách VIP hoặc nhóm nội bộ.
## Mối quan hệ với modules khác
- **Marketing Campaign (OMR)**: OMR là nơi phát sinh yêu cầu gửi tin nhắn, Frequency Capping đóng vai trò như một màng lọc cuối cùng chặn tin nhắn nếu vi phạm giới hạn.
- **Marketing Message**: Nội dung được gửi đi qua các kênh (SMS/Email/Push), chịu sự kiểm soát của Frequency Capping.
- **Segmentation**: Nguồn cung cấp danh sách khách hàng để cấu hình vào mục Whitelist (Customer list).
## Ví dụ thực tế
**Tránh spam SMS hàng ngày:**
- Cấu hình Kênh = SMS.
- Period Unit 1: Daily = Tối đa 2 tin/ngày.
- Period Unit 2: Weekly = Tối đa 5 tin/tuần.
Nếu một khách hàng đã nhận 2 SMS quảng cáo vào buổi sáng, thì bất kỳ chiến dịch Marketing nào định gửi thêm SMS thứ 3 trong ngày hôm đó cho họ sẽ bị hệ thống tự động chặn lại.
**Ngoại lệ cho nhân viên (Whitelist):**
- Trong lúc testing, team marketing cấu hình Include Whitelist = ON và chọn danh sách "Nhân viên nội bộ". Dù giới hạn là 1 tin/ngày, các nhân viên trong danh sách này vẫn có thể nhận 10 tin/ngày để kiểm thử tính năng gửi tin của OMR mà không bị chặn.