Operator
/admin: stages, content, game controls and reporting. English interface.
Sharley · In-Arena Control
Set up a stage, run a game and resolve common problems.
No matching instruction. Try a game name or clear the search.
Fans join by QR and play in a browser. Operators use In-Arena Control to run games on the LED wall or OBS. This guide covers the 15 formats in the EWC proposal.
/admin: stages, content, game controls and reporting. English interface.
Use the full screen link supplied by Settings, including its stage key. The audience interface supports EN/FR/AR.
Scan the stage QR and enter a nickname. Fans keep their identity between games.
Sharley provides the platform for EWC. Arena and EWC designs use the same games and console. Compare both mainboards and phones →
| Area | Confirm before the event |
|---|---|
| Experience | Formats, languages and manual or automatic pacing. |
| Stage plan | Up to four stages, with dates, title schedules, running orders and crew. One active game per stage. |
| Content & identity | Approved questions, media, translations and branding. Choose the audience design during setup. |
| Venue & deployment | Hosting, join and screen links, network, LED / OBS and PA. Rehearse capacity and recovery on the event setup. |
| Responsibility | Content owners, operators and support hours. Sharley manages deployment access; the crew runs the show. |
| Prizes & data | Prize stock and fulfilment. Report recipients, exports, API access, retention and delivery costs. |
The four stages, stage1 to stage4, have separate audiences, languages, scores and feeds. Controls apply to the selected stage.
One game owns a stage at a time. Switching tabs changes your view, not the running game. The sidebar’s Lobby / Starting / Live / Results badge tells you which game to return to.
Stopping a game or closing a lobby keeps fans and scores. Create a fresh session only when you intend to reset the audience; the console warns before this change.
Give each operator a crew account so stage ownership is clear. Content editors can work while a stage is live.
Mainboard preview: Expand enlarges the same feed; Pause stops the console preview without stopping the audience wall. Hidden game tabs disconnect their previews. Embedded Sound/Clip previews are muted and paused, so test playback on the actual screen link.
After completion: summaries remain after tab changes and reconnects, but not a server restart. Check the stage status to tell whether results are still active.
Wall and phone countdowns share the server clock. Joining late or reconnecting restores the current phase. Follow the live status and action labels.
| Change | How it is saved | When it applies |
|---|---|---|
| Selected library content | Selection is acknowledged and stored separately for each game/stage. | Next launch; it does not change a running round. |
| Library-game settings | Use the save action/bar shown for edited settings. | Next launch. Choosing another set does not replace timing/scoring. |
| Direct game setup | Autosave; check the saved, pending or error status. | Next launch; the active game retains its rules. |
| Stage settings | Explicit save bar. Reverting to the saved values hides it. | Depends on the setting. A live question keeps its original language. |
| Content edits | Save in the content editor; unsaved changes are protected when leaving. | New content version. Reselect updated content before launch if requested. |
Direct games are Prize Wheel, Skillshot, Reflex Test, Tap War and Whodle in this proposal. Their setup belongs to the stage, not to a reusable question set.
Language changes update the interface immediately. A live question keeps its launch text; relaunch to use its French or Arabic translation. Arabic text uses right-to-left rendering.
Sharley sets the audience design for both mainboard and phones. EWC uses its supplied artwork; Arena supports a custom stage background. The console keeps its own design.
Open a format for setup, controls and game-specific notes.
Used tracks played content; it can still be reused. The prompt refers to the version played, even if you have since selected another set. Direct games do not show this prompt.
Prize Wheel has no Content Manager set. Edit its single stage setup in the wheel workspace. The same direct-setup distinction applies to the other mechanics-only games.
Question sets hold the content. Set answer timing and scoring separately in the stage’s Game settings.
Trivia and Last Fan Standing use question sets. On-Stage Duel currently uses manual scoreboard setup; it does not consume a question-set quiz.
PM review checks content wording. PM checked, launch readiness and Used/Unused are separate statuses. Reviewers assess content; their review role does not grant editing or stage controls.
Review applies to a specific version. Reassess edited wording, or explicitly carry an earlier acceptance. Undo returns your latest assessment to pending.
JSON presets contain media links, not files. Upload the referenced media separately. Local media is preferable for live use; external links depend on their host.
Champions combines placement points across games. Higher places earn more, with podium bonuses and a participation minimum. Show the saved stage board between segments.
Prize labels and images are display content. The organiser supplies redeemable codes or physical stock and handles fulfilment.
| Metric | What it means |
|---|---|
| Connected fans | Phones currently connected to that stage. Not the same as eligible players or submitted answers. |
| Round responses | Answers, votes, shots, pins or reactions for the labelled phase. Read the denominator shown. |
| Game leaderboard | That game’s gain/ranking where supported, rather than an unrelated cumulative session score. |
| Peak concurrent | The highest concurrent participation recorded for that activation. It is not total venue attendance. |
| Time on air | Recorded activation duration. |
| Unique / returning | Browser device identifiers counted within an activation. Summary rollups sum activation counts, so the same device can appear in several games. A device is not guaranteed to equal one person. |
| Champions | Placement-point totals across completed games. |
The headline activation tracker uses a configurable minimum audience, 8 by default. Small checks can remain in the raw log without entering the tracker. Polls with a question queue produce one activation; individual question results remain separate.
Use the console export for the recorded tracker. CSV/report views and the read-only Data API use the same server records. Numeric live histories are bounded session summaries, not an append-only archive of every operator action.
The calendar assigns a title to a stage over a range of dates. It provides title context for selection and activation reporting; it does not schedule timed launches or replace the show caller. Confirm the selected stage, calendar title and actual game before starting.
The authenticated phone preview/emulator opens the selected stage and follows its game. It is useful for checking copy and controls; it does not replace a real-device check on the venue network.
Debug mode creates 100 simulated players in open lobbies and lets them play. Disabling it removes those bots while preserving real fans. It is not retained across a server restart. Use it on the rehearsal deployment; do not inflate show metrics or prize expectations with a bot count.
The sample CS2 screenshots in this proposal use a private demonstration deployment, not a recording of public attendance.
Manual launch is waiting for the operator. Press its enabled start action; switching tabs is not required. If the action is disabled, check the connection and ownership.
Copy the complete authenticated screen link from Settings, including the stage key. A plain /screen?room=stage1 link is insufficient. If the key was rotated, update OBS/the browser source with the new link.
The console preview is muted/paused intentionally. Check the actual mainboard link, browser media permissions, the game’s speaker/volume control and the OBS/PA route. Do not use the embedded preview as the audio test.
The phone blocks offline actions and tries to restore its identity and the current round. Expired invitations require the current stage QR. Old offline answers are not submitted into a later round.
Selections are stored per game and stage. Confirm you are on the same stage. Wait for server acknowledgement; after a changed/deleted source, select the current set again. Check the save error before reloading.
A final hold can be intentional. Use the displayed Stop game/Close results action before launching another format. Normal stopping keeps the audience and session scores.
They describe different things: production usage, optional editorial assessment and preparation validity. Used content can be reused; edited content may need fresh assessment; a launch validation error must be corrected.
A displayed label/image is not digital inventory. Check that a separate code pool has stock and matches the stage/game/top-N rule, and that the eligible result was completed. Debug bots do not receive real payouts.
Revision checks protect saved setups from accidental overwrites. Your draft stays available. Coordinate with the other operator, then retry or explicitly reload the saved version.
The master account manages crew access. Permissions limit console sections; Product Managers can review assigned titles. Changing a password or disabling an account ends its sessions.
| Permission | Access |
|---|---|
| stages | Operate stages, launch/drive games and take over stage ownership. |
| content | Content Manager and media preparation. |
| blacklist | Nickname moderation list. |
| prizes | Prize pools and grant history. |
| stats | Engagement reports. |
| settings | Deployment connection, feed and global settings. |
Only the master account can open Users. Sharley’s separate owner account manages deployment access and audience design.
The event team is responsible for content approval and media rights.
| Data | Application use / persistence |
|---|---|
| Nickname and gameplay state | Live play uses session memory. Named Champions records and prize-grant records can persist. |
| Browser device identifier | Used for continuity and unique/returning counts. The statistics device registry is stored persistently. |
| Engagement statistics | Recorded activation/session and aggregate results persist on the deployment. |
| Operator accounts and content | Accounts, prepared library, settings, assessment records and uploaded media persist. |
| IP for rate limiting | The application uses transient in-memory buckets. Reverse-proxy/access-log behaviour is a separate deployment setting. |
Fans do not need an account, email, phone number, real name or location. Nicknames and device identifiers still form audience data.
No photos of the audience are collected. The app has no camera or photo-upload feature: Crowd Cam was removed from the product on 10 November 2026.
Retention, access logs, backups and individual data requests need a deployment plan. The app has no complete automated export/erasure workflow, permanent operator action log, encryption at rest or automatic off-site backup.
EWC crew receive console accounts and authenticated screen links. Agree hosting, rehearsal, capacity, monitoring, backups and support before the event.
Rehearse recovery with the crew: hold fallback graphics, restore the service or switch to a prepared spare, update links if needed and restart the segment. Arrange backups and monitoring during deployment.
Agree setup, content preparation, rehearsal, training, show support and reporting for the EWC stage plan. Confirm on-site coverage, remote support hours and response times.
Use the console for show-day changes to pacing, content, language and moderation. Prepare and rehearse new mechanics or integrations before the event.
Read-only JSON access to activations, live stages, rankings and prize-grant records. Use it for EWC reporting and integrations. This is an optional data feed; it does not control games.
curl https://<host>/data-api/activations/list \
-H "Authorization: Api-Key ewc_…" # Bearer also accepted
The key is generated by an authorised operator under Settings → REST Data API (copy, regenerate,
revoke). While no key is configured the whole API answers 403: it is off by
default. Keys are compared in constant time; requests are limited to
120 per minute per IP, over that the API answers 429 with
{"error": "Rate limit exceeded, try again in 60 seconds"}.
An environment-provided DATA_API_KEY overrides the key stored by the console. In that deployment, the supplier changes the environment key; regenerating the stored key does not replace the active environment credential.
| Endpoint | Returns |
|---|---|
/data-api/activations/list | Activation rows, newest first. Filters: stage, type, since, until, plus limit/offset paging (max 600). |
/data-api/activations/latest | The most recent activation. |
/data-api/activations/:id | One activation by id. |
/data-api/summary | Overview totals plus rollups by stage, by activation type and by game title. |
/data-api/stages | Live status of all four stages: scene, players, language. |
/data-api/leaderboard/:stage | The current leaderboard of a stage. |
/data-api/champions/:stage | The all-day champions board of a stage. |
/data-api/sessions | Recent finished sessions (raw log, max 200). |
/data-api/prizes | Prize pools with counts and grants. Unassigned codes never leave the server. |
Rows use stable, spreadsheet-friendly names — the same columns the org's activation trackers already use:
{
"id": "act_m5k2…", "date": "2026-07-17T19:42:11.000Z",
"stage": "stage1", "activation": "trivia", "gameTitle": "CS2 — Fan Trivia",
"peakConcurrent": 412, "durationMs": 214000,
"totalPlayers": 388, "uniqueUsers": 361,
"returningUsers": 174, "returningPct": 48
}
peakConcurrent is the most fans playing at one time — the number an operator says on
the radio and a sponsor puts in a deck. Summing it across stages would claim a crowd that was
never in one room, so /summary reports it as a maximum, alongside
secondsOnAir. A game only becomes an activation once it reaches the configured minimum audience (8 by default), so
checks below that threshold stay out of the headline tracker. A rehearsal with simulated players can exceed it: use a separate rehearsal deployment or exclude its records explicitly.
401 bad key,
403 API disabled, 404 {"error": "The resource could not be
found."}, 429 rate limit) — including unknown /data-api/*
paths, which return the JSON 404 rather than an HTML page.One server runs the console, mainboard and phones. Game modules contain the rules and renderers. Live stage state stays in memory; content, settings and reports use persistent storage.
Audience design is separate from the console. Media can be hosted locally; external links depend on their host.
Game, browser, security and load tests are available. Each load report applies to the tested build and hardware; test the event setup separately.