Skip to content

Kiosk mode and wall screens

The physical worldDashboardproperties.kioskportalsdefault_pinslayout=compact

A single-role floor login locks to its queue, and a role's portals lay its pinned views out as live wall screens.

The situation

A tablet on the floor should show one queue and nothing else. A screen on the wall should show three queues at once, readable from across the room, and stay current without anyone touching it.

The recipe

start.ts
roles: [{
role: 'packing',
properties: { kiosk: true },
portals: [{
key: 'floor',
label: 'Floor screen',
counts: [
{ label: 'Waiting', url: '/escalations/available?role=packing', blurb: 'Unclaimed cartons' },
],
rows: [
[{ label: 'Packing board', url: '/escalations/available?role=packing&view=rich' }],
[
{ label: 'North', url: '/escalations/available?role=packing&facets=%7B%22facility%22%3A%22north%22%7D&view=table&layout=compact', badge: true },
{ label: 'South', url: '/escalations/available?role=packing&facets=%7B%22facility%22%3A%22south%22%7D&view=table&layout=compact', badge: true },
],
],
}],
}],

A member of exactly that one role gets the locked viewport: no left nav, held to the list, the detail page, the role’s portals and the scan screens. A kiosk role lands on its first portal as home. Each portal renders at /portal/packing/floor as a grid of live list panels, up to 4 rows of up to 6 cells.

The guarantee

Kiosk applies only to a single-role member. A user holding more than one role, or an admin-type grant, always gets full chrome. Portal panels read through the same role-scoped endpoints as the list page, so each viewer sees exactly what their read scope returns, and a queue outside it renders empty. See Dashboard.