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,48 @@
---
ref_id: "marketing/omr_execution_flow"
parent_card: "marketing/marketing_campaign"
title: "Chi tiết Luồng thực thi OMR (OMR Execution Flow)"
domain: "marketing"
ref_type: "process_detail"
tags: ["OMR", "batch", "schedule", "execution", "targeting"]
---
# Chi tiết Luồng thực thi OMR (OMR Execution Flow)
## Thuộc về
marketing/marketing_campaign — Card mô tả tổng quan về OneMarketing Request (OMR). Reference này đi sâu vào quy trình xử lý nội bộ của OMR Batch Job khi nó được chạy, từ lúc lập lịch đến lúc xuất ra kết quả (Tin nhắn hoặc Trigger Giao dịch).
## Chi tiết
### Cấu hình Lịch trình (Run Schedule)
Nếu OMR được thiết lập chạy theo lịch (`Schedule`), người dùng có thể cấu hình các tần suất sau:
- **One time**: Chạy một lần duy nhất vào một Ngày và Giờ cố định.
- **Daily**: Chạy lặp lại mỗi N ngày (VD: 3 ngày 1 lần) vào Giờ cố định.
- **Weekly**: Chạy mỗi N tuần vào các Ngày cụ thể trong tuần (Ví dụ: Thứ 2 và Thứ 5 hàng tuần).
- **Monthly**: Chạy mỗi N tháng. Hỗ trợ 2 tùy chọn:
- Option 1: Chạy vào các ngày cố định trong tháng (Ví dụ: Ngày 15 và 30). Hỗ trợ tùy chọn tự động lùi về "Ngày cuối cùng của tháng" nếu tháng đó không đủ ngày (VD: tháng 2).
- Option 2: Chạy vào tuần thứ tự (Ví dụ: Thứ Hai của tuần đầu tiên trong tháng).
- **Annually**: Chạy mỗi N năm vào một Ngày và Tháng cố định.
### Luồng thực thi của OMR Batch Job
Batch Job của OMR (thường chạy song song với hệ thống Loyalty) hoạt động theo trình tự sau:
1. **Quét OMR hiệu lực (Scan Effective Requests)**:
- Batch Job so sánh Ngày xử lý hệ thống (Processing Date) với khoảng thời gian `Effective Date From/To` của tất cả OMR.
- Từ danh sách OMR đang có hiệu lực, Job đối chiếu với `Run Schedule` để xác định chính xác OMR nào có lịch chạy trùng với ngày/giờ hiện tại.
2. **Xác định Khách hàng mục tiêu (Targeting)**:
- Đối với các OMR được chọn, hệ thống đọc điều kiện `Targeting Method`.
- Nếu là **OMR Criteria**: Quét toàn bộ CSDL khách hàng (hoặc dựa trên bảng Transaction Log) để xuất ra danh sách (Audience) thoả mãn điều kiện (AND/OR/NOT).
- Nếu là **Upload file**: Sử dụng trực tiếp danh sách CIF/Account ID từ file đã tải lên.
3. **Thực thi Hành động (Action Execution)**:
- **Với Notification**: Duyệt qua danh sách Audience, kiểm tra quy tắc `Frequency Capping`. Nếu khách hàng chưa vượt quá số lượng tin nhắn cho phép, tiến hành gửi `Message template` đến khách hàng qua các kênh tích hợp.
- **Với Trigger Campaign Rule**: Duyệt qua danh sách Audience, hệ thống tự động sinh ra một Batch Giao dịch ảo mang mã `OLS Transaction Code` đã cấu hình và đẩy vào hệ thống Campaign Engine để kích toán thưởng.
### Tương tác với Transaction Log
Đặc biệt, OMR Batch Job có thể được cấu hình để trích xuất (extract) giao dịch trực tiếp từ bảng Transaction Log. Thay vì quét toàn bộ hồ sơ khách hàng, OMR lấy các giao dịch (batch events) để tìm ra tập khách hàng mục tiêu một cách tối ưu nhất.