Q-Live Presenter
Presenter is the 5th role in a Q-Live team (alongside Host / Co-host / Moderator / Analyst). It fits the typical conference scenario:
- Conference organiser sets up the Q-Live Event the day before
- Speaker walks on stage with their phone in hand
- The speaker drives the questions themselves during the talk — which one shows on the audience screens, when results are revealed, what to address from Q&A
- The organiser stays backstage but keeps oversight
Instead of routing the speaker through the full host dashboard (wide monitor, many buttons), they get a dedicated mobile-first controller.
What a Presenter can do
- ✅ Read event, polls, Q&A, results
- ✅ Change the active question (Next / Back)
- ✅ Toggle "Show results" to the audience
- ✅ Moderate audience Q&A (Highlight, Answered, Archive)
- ✅ Manually play a gong (mp3 the Host uploaded in branding)
- ❌ Cannot create polls (Host does that beforehand) — but can edit the answer time limit directly in the polls list
- ❌ Cannot change branding, settings, or event status
- ❌ Cannot end or delete the event
Role hierarchy: analyst < moderator < presenter < co_host < owner.
How the Host invites a Speaker
- In the Q-Live Event detail (host dashboard) → Team section → Invite member
- Pick a PMGclub user (search by name/email)
- Choose the Presenter role
- Send — the invitee gets a notification and can open the event
Mobile controller
When the Presenter opens the Q-Live event from the dashboard, they see an extra Presenter button (pink). Click → opens /tools/qlive/[id]/presenter — a special mobile-first layout:
┌──────────────────────────┐
│ Presenter mode │
│ ● Event live · 47 resp. │
├──────────────────────────┤
│ Question 2 of 5 │
│ "What is the biggest │
│ challenge in PSD3?" │
│ │
│ ● 47 answers │
├──────────────────────────┤
│ ┌──────┐ ┌──────────┐│
│ │ ◀ │ │ ▶ ││
│ │ Back │ │ Next ││
│ └──────┘ └──────────┘│
│ │
│ ☑ Show results │
│ Currently visible… │
├──────────────────────────┤
│ Audience questions (3) │
│ • Will PSD3 change… │
│ [⭐ Highlight] [✓ Ans.]│
└──────────────────────────┘
Large tap targets, dark mode by default (darkened hall), portrait orientation, single-thumb usability.
Dark / Light mode
Default is dark background — the typical scenario is a darkened conference hall where a bright screen would dazzle the speaker.
If the speaker is presenting in daylight (workshop, morning session), the Host can switch: host dashboard → Branding / settings → Presenter dark mode (toggle). The setting applies to the whole event.
Answer time limit + gong
Time limit (countdown)
The Host can set an optional answer time limit per question (5–3600 seconds). When the Presenter activates a question:
- If the question has a time limit and "Show results" is OFF → the projector and
/qv/{code}show a big countdown in the centre of the screen. The audience sees only the question + countdown, no results. - If a time limit is set and results are ON → results stream at the top (as people vote), with a smaller countdown beneath.
- If no time limit → projector falls back to "Waiting for responses…" as before.
The Presenter always sees the countdown on their phone — large number under the question. The last 10 seconds turn red and pulse.
The time limit is normally set when the question is created (Host dashboard → Add question → "Time limit" field), but the Presenter can change it on the fly — tap the small ⏱ button in the polls list and enter a different number of seconds.
Restart the timer — beneath the countdown on the presenter's phone is a 🔁 "Restart timer" button. Tap to restart the countdown from its full value for the same question. Votes are preserved — the audience doesn't lose what they already sent. Handy when the audience needs more time, or when the speaker finishes early and wants to give another 30 s for late answers.
Pause the timer — next to Restart is a ⏸ "Pause" button. Tap freezes the countdown on the current value (on all devices — projector and mobile). Under the number an amber ⏸ PAUSED badge appears. Tap ▶ "Resume" and the countdown continues from the frozen state. Votes still come in while paused — the pause only stops the visual time pressure, it doesn't close voting. Useful when someone interrupts with a question mid-vote, you take a tech break, or the speaker wants to extend the question.
Gong
The Host can upload a single mp3 file (max 1 MB) as the event's gong:
- Host dashboard → Branding → Gong section → Upload mp3
The Presenter then has a "Play gong" button on their phone — whenever pressed, the gong manually plays on every connected device (projector and mobiles). Typical uses:
- After a time-limit expires as an audio signal — "Time's up!"
- When the Presenter is ending voting manually and wants to switch to results
- To grab attention during long open-text responses
The gong is always manual — if no file is uploaded, the button is disabled with a hint. When the Presenter taps, the server writes a timestamp to qlive_events.gong_played_at and all Postgres Realtime subscribers (host, projector, /qv) play the mp3 locally.
Browser audio policy: the projector view (
/qv/{code}) usually runs without a user gesture. If the first playback fails, a yellow "🔊 Click to enable audio" button appears at the top — one tap unlocks audio and gong autoplay works from then on.
What the audience sees
The Presenter doesn't control the projector directly — the projector reads event state. When the Presenter clicks "Next", the projector view (/qv/{code} or /tools/qlive/[id]/present) automatically moves to the next question — visible to the organiser and the audience.
Same for the results toggle and Q&A moderation — everything propagates via the Realtime channel.
Sharing projector /qv/{code} — always one question
The public link /qv/{code} (typically projected in the hall or shared on LinkedIn) always shows exactly one question, not a recap. Selection priority:
- Presenter pin — if the Presenter explicitly marked a question with the 📌 button in the "All questions" list, that one wins. Useful when you want to keep old results visible for the audience while voting on the next question.
- Active question — otherwise the one currently being voted on (
active_poll_id). - Last activated — after the event ends, falls back to the last question that was voted on.
In the Presenter's "All questions" list, every question has a 👁 / 📌 toggle next to it:
- 👁 → tap = pin this question to the projector (even if it's #5 and active is #3)
- 📌 (amber) → currently pinned — tap = unpin, returns to auto-fallback
Opt-in: Presenter can start and restart the event
If the Host enables Branding → "Presenter can start / restart the event", the Presenter gets prominent lifecycle buttons right on the mobile:
Start from draft
When the event is in draft, a pink banner appears at the top of the Presenter mobile:
● Q-Live hasn't started yet · [Start live]
Tap switches status to live and starts accepting votes. No modal, no options — this is the first start.
Restart after end
When the Host (or the Presenter themselves) ended the event, an orange banner appears at the top:
⚠ Q-Live has ended · [Restart]
Tap opens a small modal with two options — the same the Host has in the dashboard:
- Keep responses — the event re-activates, votes from the previous run are kept, the audience can add more.
- Clear all responses and Q&A — clean new run of the same questions for a new audience. Requires an extra confirmation (alert) — irreversible.
Default is off — if the Host doesn't turn the toggle on, the Presenter sees no banner or buttons, and the entire lifecycle (start, end, restart) stays with the Host.
Security and limits
- Presenter has access only to one specific event they were invited to — not to the organiser's other Q-Lives
- The Host can remove the role anytime (host dashboard → Team → trash icon next to the member)
- Presenter cannot change question text — to edit, they must ask the Host/Co-host
- If the Presenter closes their phone mid-talk, the Host can take over from the dashboard
Tips for the speaker
- Test the controller before your talk — open
/tools/qlive/[id]/presenteron hotel Wi-Fi, walk through all questions forward and back - Beware accidental Next taps — tap targets are large, so raising the phone to your face might trigger one. If it happens, use Back (returns to previous question)
- Show results is best turned on after announcing the correct answer or after the discussion — otherwise the audience sees the results too early and loses motivation to vote
- Moderate Q&A live — when you get a good audience question, tap "Highlight" and it appears in the projector while you address it