Online Waiting Room - wiso-forschungslabor/hroot-documentation GitHub Wiki
The Online Waiting Room (waiting_room) is a virtual lounge system specifically designed for synchronous online experiments (such as multiplayer oTree or z-Tree/CLER experiments) where participant show-up rates fluctuate, but a precise number of active players is required to start a session.
Table of Contents
1. The Workflow
- Lobby Open: A virtual lounge page opens on the participant's dashboard a set number of minutes before the scheduled session start.
- Joining & Consent: Participants click to enter the waiting room lounge.
- They are prompted to confirm their identity (confirming phone number and/or matriculation details if required).
- They must confirm privacy/participation consent.
- A live status screen informs them to wait for the draw.
- The Draw:
- Automated Draw: Once the draw time is reached,
hrootbackground cron tasks execute a randomized selection of participants. - Manual Draw: The experimenter can initiate the draw manually from the session dashboard.
- Quota Integration: If quotas are defined, the draw algorithm dynamically checks quotas to ensure the selected player group matches demographic targets.
- Automated Draw: Once the draw time is reached,
- Token Swap & Redirect:
- Drawn participants are immediately redirected to the active experiment URL with their unique participation tokens.
- Showup-only Payments:
- Participants who joined the lounge but were not drawn are automatically marked as Show-Up Only (
#Echecked,#Rchecked,#Tunchecked). - They are automatically credited the configured show-up fee.
- Their reservation slots are released, allowing them to register for future sessions of the same experiment.
- Participants who joined the lounge but were not drawn are automatically marked as Show-Up Only (
2. Configuration & Options
When editing an Experiment or Session, you can configure the following waiting room parameters:
Timings & Windows
- Waiting Room Opens (Minutes Before): How early participants can join the virtual lounge (default:
30minutes). - Waiting Room Closes (Minutes After): Deadline for joining. Late participants cannot enter the lounge after this timeframe (default:
1minute after start). - Reading Puffer (Minutes): Grants reading/instruction buffer minutes.
- Draw Duration (Seconds): Active duration for the randomized draw screen countdown (default:
120seconds).
Draw & Quotas
- Draw Mode: Choose between
manual(experimenter starts the draw) orauto(automated cron-based draw). - Draw Delay (Minutes): Delay after the session start time before the automated draw triggers (default:
5minutes). - Draw Size / Participants Needed: The number of active players to draw for the session.
- Waiting Room Quota Mode: Toggles whether quota matching rules should be strictly enforced during the draw.
Verification Checkboxes
- Confirm Phone: Asks participants to confirm and verify their phone number upon entering the lounge.
- Confirm Matriculation: Asks participants to confirm their student matriculation number.
- Waiting Room Show-Up Fee: The amount paid to unselected participants who joined the lounge but were not drawn.
- Waiting Room Redirect URLs: The destination URL where drawn players are sent (with token placeholders).
3. Background Architecture
The Online Waiting Room relies on background tasks:
- A background cron task runs every minute to clean up timed-out lounges, handle automated draws, and process payouts.
- The Payout Importer utility can be used by financial administrators to review and import waiting room show-up payouts in bulk into the cash registers system.