Activation offline
Chạy campaign offline tại booth, cửa hàng, trường học, TTTM: thiết bị đăng ký với điểm activation, vận hành một ngày sự kiện, định danh người chơi tại chỗ và chạy tiếp khi mất mạng.
Mục tiêu
| Mục tiêu | Chỉ số đo | Ngưỡng MVP |
| Booth không đứng vì mất mạng | Số phút thiết bị không cho chơi do mất mạng | 0 phút, trong hạn mức offline |
| Không mất dữ liệu người chơi | Lead / phiên chơi offline đồng bộ thành công | 100% trong 15 phút sau khi có mạng lại |
| Dựng booth không cần IT | Thời gian nhân viên booth ghép 1 thiết bị | ≤ 3 phút, không gõ cấu hình tay |
| Không trao vượt quà tại điểm | Quà vật lý trúng vượt tồn điểm | 0 — theo Kho quà BR-QUA-04 |
Ngoài phạm vi
- Tạo campaign, điểm activation, lịch, cơ cấu giải — xem Campaign.
- Nhập, điều chuyển, đối soát quà — xem Kho quà; trang này chỉ mô tả bước đối soát diễn ra ở booth.
- Luật game, phòng chơi, ghép điện thoại vào phòng — xem Khung game, Chế độ chơi.
Mô hình triển khai tại booth
| Kiosk đứng | TV + điện thoại người chơi | iPad nhân viên |
| Màn | Cảm ứng 32–55", đứng 1080×1920 | Ngang 1920×1080, không cảm ứng, xem 3–5 m | iPad / điện thoại của nhân viên |
| Người chơi thao tác ở | Màn kiosk (+ nút arcade nếu có) | Điện thoại của mình, quét QR trên TV | — |
| Nhận quà vật lý | QR ≥ 320px trên kiosk | QR trên điện thoại | Quét QR, xác nhận giao |
| Chạy khi mất mạng | Có — trong hạn mức offline | Không với game điều khiển bằng điện thoại (cần mạng realtime) | Quét trao quà offline, đồng bộ sau |
| Game mẫu phù hợp | Mô hình B: game 1, 2 | Mô hình C, D: game 3–6, 9, 10; TV bảng điểm cho game 7 | Mọi game |
Mô hình và game mẫu theo 10 game mẫu. Một điểm activation có thể ghép nhiều kiosk, nhiều TV và nhiều iPad.
Vai trò & quyền
| Vai trò | Đăng ký / huỷ thiết bị | Mở / đóng ca | Cấp thêm lượt | Trao quà | Xem trạng thái đồng bộ | Cấp hạn mức offline |
| Quản trị hệ thống | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Quản lý campaign | ✓ (campaign mình) | Xem | — | — | ✓ | ✓ (trong tồn điểm) |
| Nhân viên booth | Ghép bằng mã, điểm mình | ✓ (điểm mình) | ✓ (trong hạn mức) | ✓ (điểm mình) | ✓ (thiết bị điểm mình) | — |
| Quản lý kho quà | — | — | — | — | ✓ | Xem |
Ma trận đầy đủ: Tài khoản & phân quyền.
User stories
| Mã | Là… | Tôi muốn… | Để… | Ưu tiên |
| US-OFF-01 | Nhân viên booth | ghép kiosk/TV với điểm activation bằng QR hoặc mã 6 số | dựng booth không cần IT | Must |
| US-OFF-02 | Người chơi | chạm màn và nhập SĐT bằng bàn phím số trên màn | chơi ngay, không cài gì | Must |
| US-OFF-03 | Người chơi | quét QR trên TV bằng điện thoại để tham gia | chơi trên TV mà không chạm vào màn | Must |
| US-OFF-04 | Nhân viên booth | booth vẫn cho chơi và trúng quà khi mất mạng | không phải đuổi khách về | Must |
| US-OFF-05 | Nhân viên booth | xem thiết bị đã đồng bộ chưa bằng cử chỉ ẩn | biết có mất dữ liệu không trước khi tắt máy | Must |
| US-OFF-06 | Người chơi | màn kiosk tự xoá thông tin của tôi khi tôi rời đi | người sau không thấy SĐT, quà của tôi | Must |
| US-OFF-07 | Nhân viên booth | cấp thêm lượt cho người chơi gặp sự cố | xử lý khiếu nại tại chỗ | Should |
| US-OFF-08 | Nhân viên booth | đóng ca và đếm quà còn lại ngay trên iPad | chốt đối soát không cần giấy | Must |
Đăng ký & ghép thiết bị
- Quản lý campaign tạo điểm activation và gán vào campaign (trên Campaign).
- Cài bản build kiosk/TV lên thiết bị; lần mở đầu thiết bị hiện màn "Chưa ghép" với QR + mã ghép 6 số, dùng 1 lần, hết hạn sau 10 phút.
- Nhân viên booth đăng nhập iPad, chọn điểm của mình, quét QR hoặc nhập mã → chọn vai trò thiết bị (kiosk / TV) và tên hiển thị (vd. "Kiosk 2").
- Thiết bị tải gói ca: phiên bản game của campaign, asset, thể lệ, cơ cấu giải và hạn mức quà offline của thiết bị.
- Thiết bị hiện "Sẵn sàng" + tên điểm + campaign; chuyển sang attract khi mở ca.
Thiết bị lưu: mã TB-0001, tên hiển thị (≤ 30 ký tự, duy nhất trong điểm), loại (kiosk / TV / iPad booth), điểm activation (một thiết bị — một điểm tại một thời điểm), campaign, hạn mức quà offline, lần đồng bộ cuối, số bản ghi chờ. Đổi campaign = ghép lại.
Trạng thái thiết bị
Chưa ghép→Sẵn sàng→Đang mở ca⇄Offline→Đã đóng ca·Bị thu hồi
| Từ | Sang | Ai / điều kiện |
| Chưa ghép | Sẵn sàng | Nhân viên booth ghép thành công, tải đủ gói ca |
| Sẵn sàng | Đang mở ca | Nhân viên booth mở ca, trong giờ hoạt động của điểm |
| Đang mở ca | Offline | Hệ thống: mất kết nối máy chủ quá 30 giây |
| Offline | Đang mở ca | Hệ thống: có mạng lại, bắt đầu đồng bộ |
| Đang mở ca | Đã đóng ca | Nhân viên booth đóng ca; hoặc hệ thống khi hết giờ / campaign Tạm dừng, Kết thúc |
| Bất kỳ | Bị thu hồi | Quản lý campaign / quản trị hệ thống (mất máy, đổi điểm). Thiết bị xoá gói ca và dữ liệu đã đồng bộ |
Vận hành một ngày sự kiện
| Bước | Ai | Làm gì | Hệ thống |
| 1. Chuẩn bị | Nhân viên booth | Bật thiết bị, kiểm tra mạng, nhận quà vật lý theo phiếu điều chuyển | Hiện checklist: pin/nguồn, mạng, gói ca mới nhất, hạn mức offline |
| 2. Mở ca | Nhân viên booth | Đăng nhập iPad, xác nhận tồn đầu ca, bấm "Mở ca" | Ghi tồn đầu ca; thiết bị chuyển attract |
| 3. Attract | — | — | Attract loop chuyển động liên tục; TV hiện QR tham gia + top điểm |
| 4. Chơi | Người chơi | Chạm màn / quét QR → nhập SĐT, đồng ý dữ liệu → chơi | Theo Khung game |
| 5. Trao quà | Nhân viên booth | Quét QR nhận quà, giao tận tay | Theo Kho quà · Trúng và trao quà |
| 6. Đóng ca | Nhân viên booth | Bấm "Đóng ca" trên iPad, chờ đồng bộ xong | Thiết bị ngừng nhận người chơi; đẩy hết hàng đợi; báo số bản ghi còn lại |
| 7. Đối soát | Nhân viên booth | Đếm quà còn lại, nhập số thực tế, ký biên bản điểm | Theo Kho quà · Đối soát |
Đóng ca khi còn hàng đợiCòn thiết bị chưa đồng bộ hết thì không chốt được đối soát (số "đã trao" sẽ thiếu) — trừ khi quản lý campaign xác nhận bỏ qua, có lý do.
Định danh người chơi tại chỗ
| Tình huống | Cách định danh | OTP |
| Kiosk, có mạng | SĐT trên bàn phím số trên màn + checkbox đồng ý (không tick sẵn) | Không mặc định; campaign bật được khi quà giá trị cao |
| Kiosk, mất mạng | SĐT, kiểm tra định dạng tại máy | Không — không gửi được |
| TV + điện thoại | SĐT trên điện thoại; trên Zalo lấy qua quyền SĐT — xem Zalo Mini App | Web: theo Website & mobile |
| Nhận quà vật lý | QR nhận quà gắn lượt trúng; nhân viên đối chiếu 3 số cuối SĐT | — |
Không có OTP thì SĐT tại booth là chưa xác thực. Hồ sơ người chơi lưu cờ này; hợp nhất với SĐT đã xác thực ở kênh khác theo Khách hàng. Giới hạn lượt/SĐT và phát hiện SĐT ảo: Chống gian lận. Nội dung đồng ý: Dữ liệu cá nhân.
Chạy offline
Hạn mức quà offline
- Khi tải gói ca, máy chủ chia trước cho mỗi kiosk một hạn mức: số quà mỗi loại thiết bị được tự quyết trúng khi mất mạng.
- Số trong hạn mức được giữ chỗ khỏi tồn khả dụng của điểm — thiết bị khác và kênh online không trúng phần này.
- Mất mạng: engine quay thưởng chạy ngay trên kiosk, chỉ chọn quà còn trong hạn mức của chính nó; hết hạn mức → chỉ còn "không trúng" và quà digital trả sau (nếu campaign cho phép).
- Có mạng lại: đồng bộ lượt trúng, máy chủ nạp lại hạn mức về mức đã cấu hình (trong tồn điểm còn lại).
- Đóng ca: hạn mức chưa dùng trả về tồn khả dụng của điểm.
Hàng đợi đồng bộ
Thứ tự đẩy: hồ sơ + đồng ý dữ liệu → phiên chơi + điểm → lượt trúng + cấp phát → xác nhận trao quà (iPad) → lượt nhân viên cấp, nhật ký sự cố.
Mỗi bản ghi có mã sinh tại máy + mã thiết bị + giờ máy; gửi lại nhiều lần không tạo trùng. Số liệu (dung lượng hàng đợi, thời gian đồng bộ, mã hoá khi lưu): Hiệu năng & vận hành.
Xung đột khi đồng bộ
| Xung đột | Xử lý |
| Cùng SĐT chơi offline ở 2 kiosk, vượt giới hạn lượt/ngày | Giữ mọi phiên đã chơi và lượt trúng (người chơi đã thấy kết quả); gắn cờ cho Chống gian lận xem xét |
| Lượt trúng quà digital nhưng lô mã đã hết khi đồng bộ | Cấp phát "Đang giữ", báo quản lý kho quà; người chơi nhận mã qua SMS/ZNS khi có |
| Campaign đã Tạm dừng/Kết thúc trong lúc kiosk offline | Phiên trước thời điểm đổi trạng thái: hợp lệ. Phiên sau: ghi nhận nhưng đánh "Không hợp lệ", quà đã trao tại chỗ vẫn ghi nhận để đối soát |
Tự reset & riêng tư màn hình
| Mã | Quy tắc | Ví dụ |
| BR-OFF-01 | Kiosk không thao tác 60 giây → hỏi "Bạn còn chơi không?" 10 giây → về attract, xoá dữ liệu phiên trên màn | Đang ở màn kết quả, người chơi bỏ đi → 70 giây sau về attract |
| BR-OFF-02 | Không reset giữa phiên chơi đang chạy; đếm 60 giây từ khi phiên kết thúc | |
| BR-OFF-03 | Màn có QR nhận quà vật lý chưa quét: kéo dài lên 3 phút trước khi reset; reset rồi quà vẫn còn, người chơi nhận bằng SĐT tại iPad | |
| BR-OFF-04 | SĐT luôn che dạng 09•••••123 trên kiosk, TV và màn kết quả | |
| BR-OFF-05 | TV chỉ hiện tên ngắn / biệt danh và điểm; không hiện SĐT | "Lan · 1.240 điểm" |
Công cụ nhân viên booth
| Công cụ | Ở đâu | Vào bằng | Làm được |
| Bảng trạng thái thiết bị | Kiosk / TV | Cử chỉ ẩn: chạm giữ logo 5 giây → PIN nhân viên 6 số | Xem online/offline, lần đồng bộ cuối, hàng đợi, hạn mức còn; ép đồng bộ; về attract |
| Bảng điều khiển + quét trao quà | iPad | Đăng nhập tài khoản nhân viên booth | Ghép thiết bị, mở/đóng ca, xem thiết bị của điểm; quét trao quà theo Kho quà, chạy được offline |
| Cấp thêm lượt | iPad | Như trên | Nhập SĐT + lý do (máy treo, chạm nhầm…) → +1 lượt |
| Báo sự cố | iPad | Như trên | Chọn thiết bị + loại sự cố + ảnh → gửi quản lý campaign |
| Mã | Quy tắc | Ví dụ |
| BR-OFF-06 | Lượt nhân viên cấp là một nguồn lượt chơi theo Khung game; hạn mức/ca/nhân viên do campaign cấu hình (mặc định 20) | NV Lan đã cấp 20 lượt → nút cấp bị khoá đến ca sau |
| BR-OFF-07 | Mỗi lượt cấp thêm, mỗi lần vào cử chỉ ẩn đều ghi nhật ký: ai, thiết bị, SĐT, lý do, lúc | |
| BR-OFF-08 | Sai PIN 5 lần → khoá cử chỉ ẩn 15 phút, báo quản lý campaign | |
| BR-OFF-09 | Nhân viên booth chỉ thao tác trên thiết bị và quà của điểm mình | |
| BR-OFF-10 | Tổng hạn mức offline các kiosk ≤ tồn quà vật lý tại điểm; quà digital ≤ 20% lô mã còn lại của campaign | Điểm có 50 áo, 2 kiosk → mỗi máy tối đa 25 áo offline |
| BR-OFF-11 | Mã digital trúng offline không hiện tại kiosk; hiện "Mã gửi qua SMS/ZNS" và cấp khi đồng bộ (kiosk không giữ sẵn mã thật) | |
| BR-OFF-12 | Thiết bị offline quá 8 giờ liên tục → ngừng nhận người chơi mới, báo nhân viên | |
Yêu cầu phần cứng
| Thiết bị | Tối thiểu | Ghi chú |
| Kiosk | Màn cảm ứng đứng 32–55", 1080×1920; Android 10+ hoặc Windows 10+, RAM 4 GB, lưu trữ trống 8 GB | Chế độ khoá ứng dụng (kiosk mode), tự mở app khi bật nguồn |
| TV | ≥ 55", 1920×1080; mô hình D: ≥ 55–65" + webcam 1080p + máy tính có GPU | Khoảng trống 2×2 m (game 3), 3×3 m (game 5) |
| iPad / điện thoại nhân viên | Camera sau quét QR; iPadOS 15+ / Android 10+ | Có pin dự phòng |
| Mạng | Wi-Fi riêng cho booth + 4G dự phòng | Mô hình C: độ trễ > 300 ms hiện cảnh báo vận hành — xem Chế độ chơi |
| Nút arcade, máy in ảnh (tuỳ chọn) | Nút: bàn phím USB giả lập | mẫu nút, model máy in FCM đang có |
Cỡ chữ, vùng chạm 96px, vị trí nút ở 1/3 dưới: Kênh triển khai (UI).
Ngoại lệ & lỗi
| Tình huống | Hệ thống xử lý | Thông báo hiển thị |
| Mất mạng giữa phiên | Kiosk: chơi tiếp, lưu hàng đợi. TV + điện thoại: tạm dừng phòng theo Chế độ chơi | Người chơi: không đổi. Nhân viên: biểu tượng offline trong bảng trạng thái |
| Hết hạn mức offline | Chỉ quay "không trúng"; báo iPad | iPad: "Kiosk 2 hết hạn mức áo — cần mạng để nạp lại" |
| Mã ghép hết hạn / đã dùng | Từ chối; thiết bị sinh mã mới | "Mã đã hết hạn, quét mã mới trên màn" |
| Ghép thiết bị vào điểm không thuộc campaign đang chạy | Từ chối | "Điểm này chưa có campaign trong hôm nay" |
| Kiosk treo / mất nguồn | Hàng đợi lưu bền trên máy; bật lại → khôi phục, đồng bộ tiếp. Phiên dở → "Bỏ dở", không trừ lượt | Người chơi đến nhân viên để được cấp lại lượt |
| Người chơi bỏ đi khi chưa nhận quà vật lý | Quà ở "Đã cấp" đến hết hạn nhận; nhận lại tại iPad bằng SĐT | — |
Tiêu chí nghiệm thu
AC-OFF-01Cho kiosk mới cài, khi nhân viên booth quét QR ghép bằng iPad và chọn điểm, thì trong 3 phút kiosk hiện "Sẵn sàng" với đúng tên điểm và campaign.
AC-OFF-02Cho kiosk có hạn mức 5 áo, khi rút mạng và 5 người lần lượt trúng áo, thì người thứ 6 không trúng áo và iPad nhận cảnh báo hết hạn mức.
AC-OFF-03Cho kiosk offline có 30 phiên trong hàng đợi, khi có mạng lại, thì cả 30 phiên lên máy chủ trong 15 phút và không có bản ghi trùng khi gửi lại.
AC-OFF-04Cho màn kết quả không ai chạm, khi qua 60 giây, thì hiện hỏi "Bạn còn chơi không?" và 10 giây sau về attract, không còn SĐT trên màn.
AC-OFF-05Cho người chơi nhập SĐT 0901234123, thì mọi màn kiosk và TV chỉ hiện 09•••••123.
AC-OFF-06Cho nhân viên chạm giữ logo 5 giây và nhập đúng PIN, thì thấy trạng thái mạng, lần đồng bộ cuối và số bản ghi chờ.
AC-OFF-07Cho điểm có kiosk còn hàng đợi, khi nhân viên bấm "Chốt biên bản", thì hệ thống chặn và hiện tên thiết bị chưa đồng bộ.
AC-OFF-08Cho nhân viên đã cấp đủ hạn mức lượt trong ca, khi cấp thêm, thì nút bị khoá và nhật ký ghi mọi lượt đã cấp kèm lý do.
Câu hỏi mở
| # | Câu hỏi | Hỏi ai | Hạn | Trả lời |
| Q-OFF-01 | Booth có bắt OTP không? Không OTP thì lead "chưa xác thực" có được chuyển cho bán hàng? | FCM / Bán hàng | | |
| Q-OFF-02 | Quà digital có được trúng khi offline (trả mã sau) hay chỉ quà vật lý? | FCM | | |
| Q-OFF-03 | Ai cấu hình hạn mức offline mỗi thiết bị: quản lý campaign trên Campaign hay tự chia đều? (chạm Campaign, Kho quà) | PM | | |
| Q-OFF-04 | Kiosk dùng Android, Windows hay web chạy trình duyệt khoá? Ảnh hưởng cách lưu hàng đợi và cập nhật | IT / FCM | | |
| Q-OFF-05 | Nhân viên booth là nhân viên FTEL hay agency thuê ngoài? Cấp tài khoản theo ngày sự kiện? | FCM | | |
Lịch sử thay đổi
| Bản | Ngày | Người sửa | Nội dung |
| 0.1 | 2026-11-11 | PM | Nháp khởi tạo |