Hand Counter Tournament

Tài liệu Hand Counter Tournament

Hand Counter Tournament là hệ thống vận hành giải poker theo mô hình semi-automated tournament control, giúp club quản lý hand progression, seating và chip tracking theo thời gian thực mà không cần chip RFID hoặc camera tracking.

Mục tiêu sản phẩm

  • Chuẩn hóa vận hành tournament theo hướng digital-first workflow.
  • Giảm sai sót thủ công khi ghi chép hand/move/chip status.
  • Cung cấp leaderboard realtime theo từng hand để Floor và Owner kiểm soát tình trạng giải.
  • Tối ưu thao tác Dealer: mỗi hành động khoảng 0.5 giây/tap.
  • Không thay đổi flow deal truyền thống, Dealer học nhanh và không gây "tech shock".

Vai trò người dùng

Role Quyền chính Mục tiêu sử dụng
Dealer Gán seat, Next Hand, cập nhật trạng thái Vận hành bàn nhanh, ít thao tác
Floor Move / Reject / Correct Kiểm soát logic tournament
Owner Theo dõi toàn giải, audit Giám sát và báo cáo

Thời gian đào tạo

Club chỉ cần 30 phút training Dealer là có thể vận hành.

Luồng vận hành tổng quan

  1. Player check-in bằng player_uid hoặc QR Member.
  2. Dealer scan rồi assign vào seat.
  3. Dealer tap Next Hand sau mỗi hand.
  4. System snapshot leaderboard realtime.
  5. Floor can intervene nếu cần move/reject/adjust.

Quick Start

Yêu cầu hệ thống

  • Tablet hoặc iPad tại mỗi table (khuyến nghị >=10").
  • WiFi nội bộ ổn định (LAN preferred).
  • 1 màn hình TV/Dashboard để hiển thị leaderboard.

Checklist triển khai nhanh

  • Tạo Tournament trong Admin
  • Import danh sách Player (hoặc dùng DB có sẵn của club)
  • In QR Member (optional nhưng khuyến nghị)
  • Gán thiết bị cho từng Table
  • Test Next Hand sync
  • Verify Leaderboard realtime
  • Go-Live

Data Model

Core Entities

tournament

FieldTypeDescription
tournament_idtextID giải đấu
nametextTên giải
starting_chipsintStack khởi điểm
statusenumpending / running / closed

table

FieldType
table_idtext
tournament_idfk
max_seatsint

seat

FieldType
seat_idtext
table_idfk
player_uidnullable
is_activebool

player

FieldType
player_uidtext (club-defined)
player_nametext
member_qroptional

Có thể dùng luôn player_uid hiện tại của club, không cần migrate hệ thống cũ.

API / Events

Next Hand Event

Trigger chính của hệ thống.

POST /event/next-hand

{
  "table_id": "T12",
  "dealer_id": "D03",
  "hand_no": 128
}

System sẽ:

  • Lock state bàn
  • Commit snapshot leaderboard
  • Broadcast realtime update
  • Unlock

Latency mục tiêu: <300ms

Bảo mật

Role-Based Access Control

Action Dealer Floor Owner
Next Hand
Assign Seat
Move Player
Reject Action
Audit Logs

Troubleshooting

Leaderboard không update

  • Check Next Hand đã tap chưa.
  • Check network latency.
  • Re-sync snapshot.

Dealer nhập sai seat

Floor dùng Move (non-destructive correction).

Mất kết nối

Local queue sẽ sync lại khi online.