6 platforms. 19 templates. One fleet dashboard.
TV and screen delivery channel for digital signage across properties. QR-code device activation with 30-second heartbeat telemetry. 19 registered templates spanning hospitality, food and beverage, wellness, golf, events, and real estate. Priority-based content scheduling with emergency broadcast override.
6 hardware platforms. QR activation. 30-second heartbeat.
Centralized fleet registry for every registered screen across all properties. QR-code provisioning with zero-touch activation. dsp_-prefixed device authentication. 30-second heartbeat telemetry with automatic offline detection after 2 missed pings.
Samsung Tizen
Samsung smart TVs running the Tizen operating system. Widely deployed in hospitality and commercial environments.
Activation Flow
QR Code Scan
Each new device generates a unique QR activation code. Staff scan it from any phone or tablet to begin registration.
Device Key Issued
On confirmation, the device receives a dsp_-prefixed authentication key. All subsequent API calls use this key.
30-Second Heartbeat
Registered devices ping the fleet registry every 30 seconds. A device missing two consecutive heartbeats is flagged offline.
60-Second Content Poll
Content and template assignments are polled every 60 seconds. The last-known state is cached locally for offline resilience.
Device Statuses
Online
Active and responding to heartbeat within the last 30 seconds.
Offline
No heartbeat received for more than 2 minutes.
Error
Device reporting an error state. Requires manual inspection.
Activating
QR activation in progress. Waiting for staff confirmation.
19 registered templates. 7 verticals. One registry.
Each template is a purpose-built React Native component registered in TEMPLATE_REGISTRY with declared data sources, layout constraints, and tier requirements. Theme customization with property branding applied per device or per group.
,0,
hardware platforms
,0,
registered templates
,0,
platform integrations
,0,
content priority levels
19 registered templates. 7 verticals.
Purpose-built React Native components registered in TEMPLATE_REGISTRY. Each template declares its data source, layout constraints, and tier requirements. Theme customization with property branding applied per device or per group.
Room Status Board
Color-coded housekeeping status by floor. Room type, assignment, priority, and summary counters. Updated from Ops.
room-statusWelcome Board
Personalized guest arrival display. Names, room numbers, special occasions, daily events, and local weather.
welcomeArrival/Departure Board
Guest transfer coordination. Flight numbers, airlines, pickup and dropoff times, vehicle assignments.
arrival-departureWiFi Info Board
Network SSID, password, and QR scan-to-connect code. Support contact info and acceptable-use terms.
wifi-infoAnnouncement Carousel
Rotating announcements with normal, important, and critical priority levels. Auto-advance with configurable timing.
announcementsSpace Availability Board
Conference rooms, desks, and meeting spaces. Real-time capacity, current booking, and next available slot.
space-availabilityGroup screens by location. Schedule content by priority.
Screen groups bind devices into logical targets. Content schedules assign templates and media to groups with time windows and day-of-week rules. Five priority levels resolve conflicts without manual intervention. Emergency broadcast overrides everything.
Group screens by location. Schedule content by time.
Screen groups let you manage dozens of devices as a single target. Content schedules bind templates and media to groups with time windows and day-of-week rules. Priority-based conflict resolution handles overlapping schedules without manual intervention.
Screen Groups
Logical grouping of devices by location, floor, or purpose. Assign templates, themes, and ad preferences at the group level instead of per device.
Content Schedules
Bind content to screen groups with start time, end time, and days-of-week selection. Multiple schedules can target the same group with priority-based conflict resolution.
Priority Resolution
Five priority levels from Emergency (1) down to Ambient (5). When schedules overlap, the higher-priority content wins. Emergency broadcasts override everything.
Active/Inactive Toggle
Schedules can be toggled on or off without deletion. Inactive schedules are preserved for reuse during seasonal or recurring events.
Content Priority Levels
Immediate override of all screens. Fire alarms, weather alerts, security notices.
High-priority operational messaging. Staff notices, shift changes, urgent updates.
Advertising campaigns with date-range and vertical targeting.
Regular operational content. Template-driven boards and informational displays.
Background and decorative content. Lowest priority, fills gaps between scheduled items.
6 content types. Box storage. Brand compliance.
Media library backed by Box file storage with quota management. Six content types from static images to live template components. Per-device theming with brand-compliance validation before fleet-wide publication.
Image
Static image content (JPG, PNG). Uploaded to the media library and assigned to schedules or pushed directly to devices.
Video
Video content with autoplay and loop options. Stored in Box with quota management and preflight size checks.
HTML
Custom HTML content with optional script support. Rendered in the device browser for interactive or data-driven displays.
Template
Pre-built React Native template components with live data binding. The primary content type for operational and informational screens.
Ad
Advertising campaign content served through the ad engine. Tracked for impressions and click-through.
Announcement
System announcements with icons and action links. Can be sourced from the Campaigns app broadcast system.
Storage & Branding
Box Storage
Media files stored in Box with quota management. Preflight checks prevent uploads that would exceed account limits. Largest-file detection for cleanup.
Theme Customization
Per-device or per-group theme overrides. Primary, secondary, and accent colors. Font selection. Logo upload with optional clock display.
Brand Compliance
Brand-check endpoint validates that screen content meets property branding standards before publication to the fleet.
4 ad modes. Impression tracking. Uptime reporting.
Per-device ad preferences control the 80/20 split layout sidebar. Campaign-level impression and click-through tracking. Heartbeat-derived uptime percentages by device, group, or fleet.
Impressions, uptime, and fleet health.
Three analytics surfaces cover ad performance, device availability, and fleet-wide entity counts. Per-impression records with campaign attribution. Heartbeat-derived uptime percentages by device, group, or fleet.
Analytics Overview
DisplayAnalyticsClient renders the primary analytics dashboard. Entity counts include total devices, online count, offline count, templates in use, and today/weekly impression totals.
/display/analyticsImpression Tracking
DisplayImpressionsClient tracks every ad served to every device. Per-impression records include ad ID, campaign ID, device ID, screen group, timestamp, duration in seconds, and click-through status.
/display/analytics/impressionsUptime Reporting
DisplayUptimeReportClient shows device availability over time. Heartbeat data aggregated into uptime percentages per device, per group, and fleet-wide.
/display/analytics/uptimeDashboard Entity Counts
Total Devices
Count of all registered devices across all properties.
Online Devices
Devices with a heartbeat received within the last 2 minutes.
Offline Devices
Devices that have missed their heartbeat window.
Templates Total
Number of template configurations available in the account.
Templates In Use
Templates currently assigned to at least one device or group.
Today Impressions
Ad impressions served across all devices since midnight.
Weekly Impressions
Rolling 7-day impression total for trend analysis.
4 ad modes. 80/20 split layout. Campaign tracking.
Per-device ad preference controls what fills the 20% sidebar. Four modes from Calisto house ads to externally sold space. Campaign-level impression and click-through tracking with date-range and vertical targeting.
Calisto Ads
Default mode on the free tier. Calisto house ads fill the 20% sidebar slot. No configuration required.
No Ads
All advertising disabled. Full screen allocated to operational and informational content.
Self Promotion
Ad space reserved for the account holder's own promotions. Property marketing, upsells, and internal announcements.
Sell Space
Screen ad space made available to external advertiser campaigns. Impression and click-through tracking with campaign-level attribution.
Ad Infrastructure
Split Layout Engine
80% of the screen renders operational or informational content. 20% is reserved for the ad sidebar. The split is enforced at the rendering layer, not as an overlay.
Campaign Targeting
Campaigns target by screen group, date range, and vertical. Budget tracking in cents with impression and click counts per campaign.
Impression Records
Every ad served generates a BroadcastAdImpression record: ad ID, campaign ID, device ID, screen group, timestamp, duration in seconds, and click status.
12 product connections. Zero manual data entry.
Display pulls live data from Ops, POS, Events, Services, Access, and Navigator. Platform bridges connect to Signal, Reputation, Studio, Assure, Box, and Ads. Source-side changes propagate on the next 60-second content poll.
12 platform connections. Zero manual syncing.
Display pulls live data from 6 source products and bridges with 6 platform services. Source-side mutations propagate on the next 60-second content poll. No CSV imports, no USB drives, no copy-paste.
Data Sources
Ops
Room status, housekeeping assignments, and cleaning progress. Feeds the Room Status Board and operations templates.
POS
Menu items, kitchen orders, order status, and sellout flags. Feeds the Kitchen Order Board and Menu Board.
Events
Event schedules, session status, check-in counts, and leaderboard scores. Powers event and sports templates.
Services
Spa menus, treatment schedules, fitness class rosters, and practitioner assignments.
Access
Guest arrivals, departures, and reservation data. Populates the Welcome Board and Arrival/Departure Board.
Navigator
Portal rendering on Connect-mode screens. In-room dining, property services, and staff messaging channels bound to the guest reservation.
Platform Bridges
Signal
Hardware alerts and device health monitoring. Signal reports feed the fleet dashboard for proactive maintenance.
Signal → DisplayReputation
Live reputation ticker data feed. Guest review scores displayed on lobby and public-area screens.
Reputation → DisplayStudio
Impression analytics from Display flow into Studio for cross-product reporting and revenue attribution.
Display → StudioAssure
Device uptime data exported to Assure for SLA monitoring and compliance reporting.
Display → AssureBox
Media file storage with quota management. Preflight checks, largest-file detection, and storage analytics.
Box → DisplayAds
Ad serving engine. Campaign content, impression recording, and click-through tracking for the 20% sidebar.
Ads → DisplayEmergency broadcast, cast-to-device, reputation ticker, forms.
Fleet-wide emergency override, single-device content push, live reputation data on screens, golf-specific template controls, in-flow forms, and account-level configuration.
Emergency Broadcast
POST /api/display/emergency overrides every screen in the fleet immediately. Priority level 1 content bypasses all schedules and ad preferences. Used for fire alarms, weather alerts, and security notices.
/api/display/emergencyCast to Device
DeviceCastModal pushes content directly to a single device via POST /api/display/devices/[id]/cast. Bypass schedules for one-off content on a specific screen.
/api/display/devices/[id]/castReputation Ticker
POST /api/display/reputation/ticker pulls live guest review scores from the Reputation product. Rendered as a scrolling ticker on lobby and public-area displays.
/api/display/reputation/tickerGolf Template Management
Dedicated endpoints for golf template listing, per-template configuration, and active/inactive toggling. Separate from the general template registry for course-specific needs.
/api/display/golf/templatesForms
Forms page for data collection attached to display workflows. Powered by @calisto/forms-core with display as the source app.
/display/formsSettings
DisplaySettingsClient for account-level display configuration. Default theme, ad preferences, notification rules, and subscription tier management.
/display/settingsWhat ships in the box.
| Hardware Platforms | Samsung Tizen, LG WebOS, Sony Bravia, NEC MultiSync, Sharp Aquos, Android |
| Device Types | Display, Signage, Kiosk |
| Subscription Tiers | Free (Calisto ads), Pro (custom branding), Enterprise (full features) |
| Heartbeat Interval | 30 seconds |
| Content Poll Cycle | 60 seconds |
| Offline Threshold | 2 missed heartbeats (> 2 minutes) |
| Device Authentication | dsp_-prefixed device keys |
| Content Types | Image, Video, HTML, Template, Ad, Announcement |
| Content Sources | Screens, Display, Broadcast |
| Ad Layout | 80% content / 20% ad sidebar |
| Ad Modes | Calisto Ads, No Ads, Self Promotion, Sell Space |
| Priority Levels | 5 (Emergency, Operational Announcement, Targeted Ad, Default Operational, Ambient) |
| Templates | 19 registered across 7 verticals |
| Template Engine | React Native with TEMPLATE_REGISTRY |
| Media Storage | Box integration with quota management |
| Offline Resilience | Local content caching on device |
| Cross-Product Integrations | Ops, POS, Events, Services, Access, Navigator, Signal, Reputation, Studio, Assure, Box, Ads |
| UI Routes | ~14 (Dashboard, Activate, Devices, Groups, Schedules, Analytics, Media, Forms, Screens, Settings) |
| Client Components | 16 display-clients + TemplateSelector + DisplayStatsWidget |
Operations screens free. Client & informational from €9/screen.
7 TV platforms, 21 React Native template components, 106 vertical configurations, QR activation, 60-second content cycle, 30-second heartbeat monitoring, and offline resilience. Operations screens always free.
Display
Digital signage across 6 hardware platforms.
Part of Ops Suite
Wallet-debit
Add to Pro Shop