The Web Dashboard
Your venue's control panel. This page walks the sidebar top to bottom — the little ? in the dashboard's top bar always jumps straight to the matching section here.
Logging in & picking a venue
- First time: your in-world setup link signs you in automatically and prompts you to create a username and password. After that, use those at the login page.
- Forgot your password? Rez something of yours that talks to the system (your server, or touch your jar's owner menu) to get a fresh one-time login link, then set a new password under My Profile.
- Venue picker: if you own or work at several venues, the picker at the top of the sidebar switches between them. Every page shows the selected venue's data.
Dashboard
The landing page — a read-only overview of how the venue is doing:
- Tips per Day — venue-wide tip volume over time.
- Top Earners This Week — who's bringing it in.
- Your Stats / Your Tips per Day — your personal numbers, for staff.
- Recent Sessions — who logged into which jar, and when.
My Profile
Your personal settings — every user has this page, staff included:
- Second Life Profile — the avatar this account belongs to.
- Web Account — your username for logging in here.
- Change Password.
- Discord — link your Discord account so cover calls and shift checks reach you there as well as in-world. Entirely your choice, and unlinking deletes it. See Discord.
- My Job Settings — your personal stream URL and per-job preferences the jars use when you log in. DJs: this is where your stream lives.
Venue Info
The venue's landing page — a live snapshot any staff member can open, useful with or without a bot:
- On now — who's working right now and what's coming up, straight from the live sessions and the event calendar.
- The venue at a glance — a map tile with the venue's location, the team, and the current staff board notices.
- Health — whether the in-world server is online and reporting, so "the jars are quiet" has an answer before anyone teleports over.
- Bot extras — venues with a bot also see who's on the parcel right now and recent greeting activity. These cards simply hide when there's no bot.
Manage Venue
The venue's own configuration, section by section — each card saves on its own:
- Basic Info — name, description, location link.
- Notice Bot — attach one of your bots to this venue so events can send group notices and reminders.
- Auto-Greet & Invite — have the bot welcome arrivals and offer your group.
- Streams — the default stream (plays when no one is on) and the club stream (the house backup DJs can be forced to or fall back on).
- Tip Jar / Jar Behaviour — tip amount tiers, hover text, thank-you message, and how tippers are notified.
- Tip Split — the staff/house percentage applied in-world the moment a tip is paid.
- In-world Boards — big-screen status pages for a media (MOAP)
face at the venue: the public board shows the week's schedule and
who's on now, the staff board adds bookings and the staff notice
board. Each link doubles as a calendar feed — swap
/board/…for/board/…/calendar.ics(the link is shown under each board URL) and subscribe from Google / Apple / Outlook. The link itself is the key — but a URL set as shared media is delivered to every viewer that can see the prim, so treat anything on a prim as readable by anyone who can stand near it. That's exactly what the public board is for; place the staff board only where the public can't wander (a staff room or skybox office), or use its link from browsers and calendar apps instead. Regenerating a link kills the old board and its calendar — the remedy when a link escapes somewhere it shouldn't (pasted in chat, a screenshot), not a fix for a prim anyone can walk up to. - Discord Server (owner only) — connect your venue's Discord, choose the announcements and staff channels, and let XTech publish your calendar there. See Discord.
- Notifications — what the venue pings you about, including the daily rundown: one summary of the night to your managers, with who's on, who's confirmed and any cover still needed.
- Export Your Records (owner only) — download your venue's data as spreadsheets: tips and donations, payout legs, shifts, staff and jobs, events, and daily visitor counts. Or take everything as one JSON file. Nothing is deleted by exporting, and you can do it as often as you like. Records about people who aren't your staff — who visited, who your bot greeted, what residents IM'd it — are deliberately not in the download; those are kept only for a limited time and are available on request. See the Privacy Policy.
- Danger Zone — delete the venue. This cascades: staff assignments, events and history go with it. There is no undo.
Manage Access
Owner only. Who can manage this venue on the web, and what they can do:
- Grant Access — add a person and choose their role. Roles bundle sensible permission sets so you rarely need to think harder than "manager" vs "staff".
- People with access — review and revoke. Guardrails stop you from locking yourself out or demoting the owner.
- Feature access — if the venue holds add-ons, each person gets per-feature switches (Display boards, Quizzes, Media uploads). Venue admins have every feature implicitly; anyone else needs the switch flipped — so a trusted host can drive the displays without being a manager. Grants only work while the person is still staff here.
Media Library
The venue's catalogue of pictures and sounds — the pool the Displays page and quiz media rounds draw from. It works with Second Life texture UUIDs, so the cheapest way in is content that already exists on the grid:
- Browse the public library (curated packs — flags, bird calls, anthems and friends) alongside your venue's own items; copy a UUID from any tile.
- From bot — the bulk path, free: share a folder of textures to your venue's bot in-world, then import it here. The bot reads the UUIDs — nothing is re-uploaded, so it costs nothing.
- Upload — send image files from your computer; the bot encodes and uploads them to SL for you (this one costs the usual L$ upload fee, so it's a grantable feature on Manage Access).
- Sharing — items are private to the venue unless made public; attribution and licence ride along on imported packs.
Fundraisers
The web half of donation jars:
- Add Fundraiser — name, recipient (who the donations pay out to), goal, and duration.
- Info menu — what donors see when they ask the jar for info: website link, about text, optional freebie item.
- Fundraisers — live progress; close them when done. A manager picks which fundraiser each Donation Jar runs from the jar itself, in-world.
Every donation payout is a tracked L$ transfer: if the recipient key is mistyped or the account is gone, the jar stops the drive and the failure is recorded under Audit → Payouts instead of quietly going nowhere.
Visitor Stats
Who actually comes to your venue — shown as aggregates (never per-person data): visits and unique visitors per day, busiest hours (SLT), new vs returning, how many arrivals are in your group, and how long people stay.
- Turn it on — Manage Venue → Visitor Stats → Collect visitor stats. Your venue server does the counting on its own parcel, so no bot is required; visits always tie to that parcel. A bot is only needed to fill in the "in your group" share.
- Start early — charts get better the longer data has been accumulating; flip it on before you need the answers.
- Ranges — 7 / 30 / 90 days.
- Exclude staff & bots (on by default) — drops the owner, staff and bots from the numbers, so a DJ hanging around all night doesn't read as footfall. Untick it to count everyone.
View Tips
The money page. Managers see the venue's whole session history the moment the page opens — newest first, each row showing who worked, their job, when, and the session's tip total. Click a row to unfold every individual tip inside it (tipper, amount, time).
- Filters — narrow to a job or search a staff name. The totals line (“N sessions · L$X tipped”) always reflects the whole filter, not just the rows loaded so far.
- Load more — history is paged; keep clicking to walk back in time.
- My Tips — staff land straight on their own sessions and totals at this venue; same table, nothing to set up.
This is the record the jars report to in real time; if the web was down when a tip landed, it appears here as soon as the server reconciles.
Audit
Three tabs: staff housekeeping, an activity trail, and the money-out audit.
- Inactive Staff — spot people who haven't logged a session in ages and prune them safely. Removals here use the same careful cascade as Manage Staff — history is kept, future access is removed.
- Activity — a record of the privileged and destructive actions taken at the venue: who deleted a venue, changed the tip split or stream, granted or revoked access, added or removed staff, created or closed a fundraiser, registered/regenerated a bot, or logged in (and when a web-access link was handed out from the jar). Filter by action type; each entry shows who did it and when. Global admins get an All venues view and can filter by the acting avatar. The log stores IDs only — never message text or other personal detail — and resolves names at view time, so a removed avatar simply shows as “deleted user”. Entries age out automatically after 12 months.
- Payouts — every L$ transfer the jars have made (DJ shares, house cuts, fundraiser recipients), each with its real Second Life transaction ID, so a disputed payout can be matched directly against the owner's L$ transaction history. Statuses are explicit: Paid; Failed, with the reason — the money stayed in the jar owner's balance, so settle up manually; or Unconfirmed, where no confirmation arrived and the transaction ID is the thing to check. The Missing payout filter is the reconciler: it lists tips and donations where someone was owed a share but no payout was ever recorded — worth a glance after anything unusual in-world.
Manage Jobs
The job types your venue offers — DJ, Host, Dancer, whatever fits:
- Job Types — each defines how the jar behaves for that role: whether logging in swaps the parcel stream, tip tiers, and rank.
- Add Job Type — create new roles as the venue grows.
Manage Staff
Who holds which job. Assign people to the job types you defined, and remove them when they move on — removing someone here is what stops them appearing in the jar's login picker.
Staff Board
An internal noticeboard for your team:
- Post a Notice — announcements, schedule changes, house rules.
- Posted Notices — what's currently up; take down what's stale.
Events
The venue calendar, and the engine behind automated notices:
- Scheduled Events — create events with a start time (SLT), a genre, and the staff working them (DJ, host).
- Public vs private — events are public by default. Untick Public event to keep one off the public in-world board and the public calendar feed; staff surfaces (the staff board, its calendar, and the dashboard) still show it, marked with a lock.
- Reminders — each event can carry reminders that fire at offsets you choose (minutes, hours or days, before or after the start): a group notice to every SL group mapped to the event's genre, a group chat line for groups where the bot can chat but not post notices, a staff IM to the people working it, or a staff check. Delivery needs a bot; venues without one still get staff IMs via their in-world server.
- Staff check — the one reminder that asks rather than tells. It puts I'll be there / I can't make it to whoever is assigned, and saying no opens a cover call there and then. Answers appear against the date in the event's list of occurrences. Put it days ahead, so there's time to fill the gap. See Discord.
- Event poster — an optional flyer for this event, picked from the Media Library or pasted as a texture UUID. Used as the picture on the event's Discord card; without one, the DJ's own poster is used.
- Notice text comes from your templates, so events stay consistent without retyping.
Announcements
The routing table for notices. An announcement group maps to the SL groups that should hear about an event, and reminders fan out to them automatically. These names are private to your venue and never shown publicly, so call them whatever helps — “My Groups”, “The Regulars”. What an event is — its type and its style — is set on the event itself, not here. An event with no announcement group simply sends no group notices.
Templates
Reusable notice text with placeholders (event name, time, staff). Write them once; events reference them for their group notices and reminders.
Bots
Register and manage your notice bots without leaving the dashboard. Pick a bot in the top bar; the status strip shows whether it's online, its L$ balance and where it's standing. Everything else lives on tabs:
- Send — IMs, group notices (with an inventory attachment), group chat messages, item hand-outs, and group invites (paste UUIDs or scan the crowd around the bot).
- Presence — teleport it anywhere, send it home or to its alt location, sit it on furniture, play poses, swap outfits, speak in local chat, and set up pose/outfit auto-rotation.
- Groups — its memberships (shows which groups it can actually send notices in — it needs the group's Send Notices power) and any pending group invites to accept or decline.
- Inventory — the bot's
- XTech Bot -folder (move, delete, organise into folders) plus a log of recent inventory offers. - Auto Answer — how the bot replies to residents: its auto-reply line and the venue's FAQ (below), with the recent IMs it received so you can tune answers against real questions.
- Settings — the alt (fallback) location, plus Token & Removal: regenerate the token or retire the bot.
- Deploy — registry login, a ready
docker-compose.ymland a prefilled.env.
Save the bot token immediately when
registering — it's shown once. Lost it? Settings → Regenerate Token and
update the bot's .env.
Auto Answer — the FAQ
Teach your bot to answer the questions you answer every week. When a resident IMs the bot, the first entry whose keyword appears in the message replies — typos are tolerated, and a near-miss gets a "did you mean …?". The FAQ belongs to the venue picked in the sidebar, not to the selected bot.
- Keywords — comma-separated aliases ("redelivery, redeliver,
resend").
help,events,next,subscribeandunsubscribeare answered by the bot itself and can't be used. - Answer — personalise with
{{name}},{{first}},{{venue}}: "Hey {{first}}, here's your beer!" - Give an item — the entry can hand something over (a drink, a demo, a landmark). Only on short, request-like IMs, once per person per hour.
- Teleport link — the answer can carry a one-click teleport to a spot in your build. Click Use bot's position to capture where the bot is standing, or paste a map URL.
- Contact person (CSR) — when the bot can't answer, it hands out this person's clickable profile instead of shrugging.
- Public events — anyone who IMs the bot "events" can see this venue's upcoming events, venue-tagged.
Multi-venue bots answer as the venue whose parcel they're standing on, falling back to the default venue picked here (tick Always use default to pin it, e.g. for a bot that lives in a skybox).
Displays add-on
Drive your OmniDisplay poster boards from the dashboard. Pick a board in the top bar; its textures appear as thumbnails.
- Gallery — Show now puts any texture up immediately (paste a UUID or pick from the Media Library) for a set number of minutes, then the board resumes its rotation. Clear ends it early.
- Sequence — build the playlist: pick from the board's own textures and the library, order them, Save & play — or Reset to auto to just rotate whatever's physically in the board.
Visible when the venue holds the Displays add-on and you have the feature — the full story is on the Add-ons page.
Quizzes add-on
Author your quiz nights: create a quiz (solo or teams), build rounds of multiple-choice or free-text questions — any question can carry a picture or a sound — or let the wizard Build from the question bank out of thousands of ready-made trivia questions. Media rounds auto-build "name this" picture or audio rounds from a Media Library pack. Per quiz, the answer-key access list controls who may author, judge and see the answers. Details on the Add-ons page.
Quiz MC add-on
The live console for running a quiz — one big button for whatever comes next (open the question, close answers, judge, next, end), inline judging of free-text answers, Reveal answer, audio Replay, and the live leaderboard. Built so a DJ can run the whole night between tracks. See running a quiz.
Staff Job Data
A focused page for staffers to check and tune how the jar treats them: find your avatar, review your staff record, and set your tip jar, stream and media details. Staff reach it from their own login — it's the quick version of My Profile → My Job Settings.