1. Tổng quan
Đây là bước quan trọng nhất để cấu hình tracking event vào source code app, cụ thể:
- Cấu hình tracking event: Tích hợp hàm
Mobio.shared.track()để ghi nhận hành vi tương tác của người dùng mobile app. - Quản lý Danh tính: gán các hàm
identify(),login(),logout(),modify()để định danh và liên kết Profile.
Đối tượng sử dụng: Developer iOS.
Sự khác biệt & Mối liên hệ giữa Sự kiện và Danh tính
| Tiêu chí so sánh | Ghi nhận Event Tracking | Quản lý Danh tính |
|---|---|---|
| Vai trò | Ghi nhận mọi hành vi tương tác được cấu hình ở mục event tuỳ biến ở bước Định nghĩa Tracking Event và lấy Code Tracking gắn vào App | Ghi nhận hành vi liên quan đến định danh với các hàm định danh identify(), login(), logout(), modify(). |
| Cơ chế ghi nhận dữ liệu | Có thể ghi nhận liên tục hành vi tương tác ngay cả khi user chưa đăng nhập vào mobile app. Các hành vi tương tác này được ghi nhận vào một Profile ẩn danh. | Khi user thực hiện một hành vi tương tác có chứa thông tin định danh, hệ thống Mobio ghi nhận thông tin định danh và chuyển từ Profile ẩn danh thành Profile định danh. Toàn bộ các hành vi tương tác được ghi nhận trước đó vẫn được giữ nguyên. |
| Cấu hình | Sau khi định nghĩa Tracking Event và lấy Code Tracking gắn vào App, Mobio tự động sinh sẵn hàm tích hợp cho từng event. Admin/Marketer chỉ cần đưa thông tin này để team quản lý app cấu hình trên source code của app. | Không tự sinh code. Developer bắt buộc phải cấu hình thủ công. |
3. Điều kiện tiên quyết (Prerequisite)
- Đã hoàn thành bước: Cài đặt SDK lên Xcode & Khởi tạo với hàm Init.
- Lấy được event code + hàm tích hợp tại bước Định nghĩa Tracking Event và lấy Code Tracking gắn vào App
4. Các bước thực hiện
Bước 1: Cấu hình tracking event
- Lấy thông tin hàm tích hợp và vị trí gắn code trên Mobio ở bước Định nghĩa Tracking Event và lấy Code Tracking gắn vào App.
- Dán đoạn code này vào nơi đặt code đã được quy định, trước khi thay đổi các tham số trong code cho phù hợp và lưu lại.
Mẫu code tham khảo:
track(_ eventKey: String, _ properties: [String : Any]
Trong đó:
eventKey(bắt buộc): Key của event đã được tạo trên Mobio CDP. Mỗi event khi khởi tạo trên Mobio có một eventkey duy nhất.- Kiểu dữ liệu: String
properties(bắt buộc): Các cặp key, value tương ứng của các trường thông tin trong event.
Lưu ý:
Event phải được tạo trước trên Mobio để lấy eventkey. Nếu không, event này sẽ không được ghi nhận vào Mobio.
Ví dụ
- Lấy thông tin hàm tích hợp và vị trí gắn code trên Mobio


Bước 2: Gán hàm quản lý danh tính
Có 4 hàm định danh: Identify(), Login(), Logout() và Modify()
Tham khảo bảng so sánh các hàm định danh sau:
| Tên hàm | Trường hợp sử dụng | Vị trí gắn trên Giao diện App (đề xuất) | Các Tham số |
|---|---|---|---|
| 1. Identify | Khi khách hàng để lại thông tin cá nhân khi submit form, từ landing page… Khi có thông tin định danh và cần chuyển đổi từ Profile ẩn danh sang Profile định danh | Form thu thập thông tin khách hàng tiềm năng, popup đăng ký nhận bản tin. | identityRequest (Dictionary): Chứa tập thông tin định danh. |
| 2. Login | Định danh người dùng và chuyển đối tượng sang trạng thái đăng nhập. | Nút “Đăng nhập” (Bằng Email/Pass), hoặc luồng Auth nhanh qua Apple ID/Google. | identityRequest (Dictionary): Thông tin định danh.identityEvent (Dictionary): Thông tin phương thức sự kiện đăng nhập. |
| 3. Logout | Kết thúc session của know profile hiện tại, chuyển đổi phiên người dùng về Profile ẩn danh. | Nút “Đăng xuất”. | identityEvent (Dictionary): Thông tin sự kiện đăng xuất. |
| 4. Modify | Cập nhật thông tin định danh (Ví dụ: email, SĐT bảo mật) của người dùng hiện tại mà không làm thay đổi trạng thái đăng nhập. | Màn hình cập nhật hồ sơ, màn hình chỉnh sửa cài đặt tài khoản cá nhân. | identityRequest (Dictionary): Thông tin định danh mới. |
Quy trình thực hiện cấu hình
Bước 1: Xác định hàm cần sử dụng
Dựa vào kịch bản sử dụng (Use-case) thực tế trên luồng màn hình của ứng dụng, Developer đối chiếu với Bảng tính năng ở trên để tự chọn hàm định danh.
Bước 2: Tổ chức code cài đặt hàm vào ứng dụng.
Xác định tập các tham số cần truyền phụ thuộc. Đảm bảo cặp key-value phải được định nghĩa và cấu hình trước trên Mobio.
Mẫu cấu hình hàm identify()
// Khai báo tập dữ liệu cần định danh
let identityRequest: [String: Any] = [
"email": "email.khach.hang@example.com", // Đóng vai trò là Key
"customer_id": "123456",
"name": "Nguyễn Văn A" // Thuộc tính mở rộng
]
Mobio.shared.identify(identityRequest) { result, error in
// Logic sau khi API trả kết quả thành công
}
Mẫu cấu hình hàm login()
let identityRequest: [String: Any] = [
"email": "email.khach.hang@example.com",
"customer_id": "123456",
]
let identityEvent: [String: Any] = [
"login_method": "Email", // Khai báo Email, Facebook, SSO, Apple...
"login_action": "manual" // Hành động manual, auto
]
Mobio.shared.login(identityRequest, identityEvent) { result, error in
// Điều hướng màn hình ứng dụng sau khi báo login CDP...
}
Mẫu cấu hình hàm logout()
let identityEvent: [String: Any] = [
"logout_action": "manual", // Giá trị quy định: manual, auto_timeout
]
Mobio.shared.logout(identityEvent) { result, error in
// Cập nhật màn hình về trạng thái chờ
}
Mẫu cấu hình hàm modify()
let identityRequest: [String: Any] = [
"phone_number": "0987123456",
]
Mobio.shared.modify(identityRequest) { result, error in
// Thông báo cập nhật thông tin thành công lên UI
}
Hàm Callback
Trong các hàm định danh phía trên, bạn sẽ bắt gặp hàm IMoIdentityCallback. Sau khi ứng dụng đẩy dữ liệu định danh lên Mobio, hàm Callback giúp App lắng nghe phản hồi xem Mobio đã cập nhật thành công hồ sơ đó hay vừa từ chối do gửi lỗi Data.
public interface IMoIdentityCallbackFunc {
void onIdentitySuccess();
/** * Được gọi khi login thất bại * * @param errorCode Mã lỗi * @param errorMessage Thông điệp lỗi * @param errorCategory Phân loại lỗi (Validation, Network, API, etc.) */void onIdentityFailure(int errorCode, String errorMessage, String errorCategory);
}
5. Quy tắc vận hành
- Giảm tải API Request: không cần phải tạo thêm Event Tracking riêng để cập nhật thông tin định danh như
Tuổi, Giới tính, Quê quán. Nên sử dụng cách tối giản là truyền thẳng các thuộc tính này qua hàmidentify()hoặcmodify(). - Trước khi truyền bất kỳ cặp key-value nào, cần đảm bảo rằng cặp key-value đó đã được định nghĩa trước trên Mobio thông qua bước Định nghĩa Tracking Event và lấy Code Tracking gắn vào App. Nếu không, khi truyền event từ app về Mobio, hàm callback vẫn trả về thành công, nhưng các thông tin truyền vào cặp key-value đó sẽ tự động bị bỏ qua và dữ liệu không được cập nhật lên Mobio.
6. Câu hỏi thường gặp (FAQ)
Chưa có thông tin cho mục này.