Remote commands from the cloud
When a BoothIQ kiosk is registered to the cloud, cloud-side users (you, support, or other admins on your account) can issue remote commands to the booth. The booth executes the command and reports the result back. This article tells you what commands exist and what each one does.
Who this is for: Operators using the BoothIQ cloud dashboard, or operators who want to know what their support team can do to the booth remotely.
How remote commands work
- A cloud-side user opens the cloud dashboard from a separate device (laptop, phone, tablet).
- They navigate to the booth and find the relevant action.
- They issue the command.
- The cloud sends the command to the booth via the WebSocket connection (or HTTP polling fallback).
- The booth receives the command, validates it, and executes.
- The booth reports the result back to the cloud.
- The cloud dashboard shows the command status.
Most commands take effect within seconds.
Commands you can issue
add_credits
What it does: Adds credits to the booth's credit balance.
When to use: Comping a customer remotely, seeding a free-play event, or refunding a session that failed remotely.
On the booth: A new credit transaction appears in the Credits tab with source = Cloud. The current balance updates immediately.
Operator-side equivalent: You can also add credits manually in the Credits tab on the kiosk itself. See Adding credits manually.
add_credits. The customer goes back, runs another session, and gets their print. You didn't have to drive to the venue.restart
What it does: Reboots the kiosk.
When to use: The booth is showing strange behavior and you want to reboot it from outside without sending someone to the venue.
On the booth: The booth shows a brief restart message, then reboots. BoothIQ comes back up automatically. Total downtime is about 60-90 seconds.
Be careful: This kicks off any active customer sessions. Time it carefully. Don't issue a restart during peak hours.
cancel_restart
What it does: Cancels a previously-issued restart command if it hasn't started yet.
When to use: You issued a restart by accident, or the situation changed and you no longer want to restart.
On the booth: Nothing visible. The pending restart is removed from the queue.
download_logs
What it does: Tells the booth to gather its current log files and upload them to the cloud.
When to use: Support needs to look at booth logs to diagnose an issue.
On the booth: The booth packages its logs (Application, Hardware, Transaction, Error, Performance) and uploads them to your cloud account's storage. No customer-visible behavior.
Then: You or support download the logs from the cloud dashboard and inspect them.
Template / category / layout sync
What it does: Pushes templates, categories, and layouts from the cloud library down to the booth.
When to use: You uploaded a new template to your cloud library and want it on the booth right now without waiting for the next scheduled sync.
On the booth: Templates Tab refreshes. New templates appear in the customer-facing carousel for new sessions.
Commands you cannot issue
For safety, BoothIQ does NOT support remote commands that would:
- Modify the customer experience UI live (e.g. show a custom message to a current customer)
- Drain the cash box remotely
- Disable hardware (the watchdog handles that automatically when needed)
- Read camera frames live (no remote view of what the camera sees)
- Reach into Windows or the file system (the booth is locked down)
The remote command surface is intentionally narrow.
Remote command audit trail
Every remote command issued to a booth is recorded in the booth's local audit logs and (because logs sync) in the cloud. So you can answer "who issued the restart command at 3 AM" by looking at the audit trail.
When the booth is offline
If the booth is offline when a command is issued:
- For time-sensitive commands (restart, cancel_restart), the cloud queues them for a short while. If the booth doesn't reconnect, the command times out and is discarded.
- For add_credits, the command is queued and delivered the moment the booth reconnects. The credits appear in the booth's Credits tab as soon as it's online.
- For download_logs, the request waits for the booth to come back, then runs.
You can see the status of pending commands in the cloud dashboard.
Common patterns
Daily fleet check from your phone
- Open the cloud dashboard on your phone.
- Look at the Online status of every booth.
- For any offline booths, contact the venue or send someone.
- Skim today's sales numbers.
Comping a customer from anywhere
- Customer calls you about a failed print.
- Open the cloud dashboard.
- Find the booth.
- Issue
add_creditsfor one session. - Customer redeems on the kiosk.
- Done. No need to drive to the venue.
Pushing a new template to all booths
- Upload the new template to your cloud library.
- Trigger a template sync on each booth (or wait for the automatic sync).
- Confirm the template appears in each booth's Templates tab.
- Done.
Diagnosing a sick booth from your office
- Booth is misbehaving.
- Issue
download_logsfrom the cloud dashboard. - Wait a minute or two.
- Download the logs from the cloud.
- Send them to support, or read them yourself.
Verify a command worked
After issuing a command from the cloud dashboard, check the result:
add_credits. Check the Credits tab on the kiosk; balance should reflect the additionrestart. The booth should be unreachable for 30-60 seconds, then come back onlinedownload_logs. Logs appear in the cloud dashboard's logs section- Template sync. New templates appear in the kiosk's Templates tab
If a command has been "pending" for several minutes without completing, the booth may be offline or the WebSocket connection may have dropped. See Cloud sync not working (coming soon).
Common operator questions
Can I issue commands from the kiosk itself?
No. You'd just do those operations directly in admin (e.g. add credits in the Credits tab). Remote commands are for when you're not at the kiosk.
Can I queue commands for offline booths?
Some commands (add_credits) queue automatically. Others (restart) don't queue indefinitely.
Who can issue commands?
Anyone with access to your cloud dashboard account at the appropriate permission level. Configure cloud-side roles carefully.
Can a customer issue a command?
No. Customers don't have cloud accounts.
Are remote commands secure?
They go over HTTPS (encrypted in transit), require authentication on the cloud side, and the booth validates the command's signature before executing. Operators don't manage this. It's built in.
Next steps
- What cloud sync does. The bigger picture.
- Working offline. When commands can't be delivered.
- Cloud Sync tab. Where the booth shows its connection status.