KidRoles para el equipo de informática
Todo lo que necesita un administrador para instalar KidRoles: Tienda en los ordenadores de un colegio, una escuela infantil o una ludoteca: sin instalador, sin cuentas y sin recopilar datos de los niños.
Instalación forzada: WebAppInstallForceList
Microsoft Edge y Google Chrome instalan la aplicación en segundo plano, sin intervención del usuario, en cuanto configuras la directiva WebAppInstallForceList. El usuario no puede desactivarla ni desinstalar la aplicación. El mismo valor sirve para los dos navegadores:
[{"url":"https://shop.kidroles.com/","default_launch_container":"window","create_desktop_shortcut":true}]"default_launch_container": "window": la aplicación se abre en su propia ventana, no en una pestaña."create_desktop_shortcut": true: un acceso directo en el escritorio (Windows y Linux).- La dirección de la directiva debe ser la final, sin redirecciones: usa exactamente
https://shop.kidroles.com/. - Comprobación en el ordenador:
edge://policyochrome://policy→ «Volver a cargar directivas» y después la lista de aplicaciones enedge://apps/chrome://apps.
Edge no aplica esta directiva a los perfiles con una cuenta personal de Microsoft: hace falta un perfil profesional/educativo o local. Además, Microsoft no admite las PWA de Edge en entornos FSLogix (desaparecen al cerrar sesión).
https://shop.kidroles.com/Windows: Intune y directivas de grupo (GPO)
- Intune, Edge: Dispositivos → Configuración → nueva directiva para Windows 10 y posteriores, tipo «Catálogo de configuración». En la categoría Microsoft Edge añade «Configure list of force-installed Web Apps», actívala y pega el valor.
- Intune, Chrome: en el mismo catálogo de configuración, la categoría Google Chrome tiene el mismo ajuste; no hace falta importar plantillas ADMX.
- GPO, Edge: tras añadir las plantillas administrativas de Edge (
MSEdge.admx): Plantillas administrativas → Microsoft Edge → «Configure list of force-installed Web Apps». - GPO, Chrome: tras añadir las plantillas de Chrome: Plantillas administrativas → Google → Google Chrome → «Configure list of force-installed web apps».
- Registro (sin dominio ni MDM): un valor
REG_SZllamadoWebAppInstallForceListenHKLM\SOFTWARE\Policies\Microsoft\EdgeoHKLM\SOFTWARE\Policies\Google\Chrome.
Google Workspace y Chromebooks: en la consola de administración de Google ve a Dispositivos → Chrome → Aplicaciones y extensiones → Usuarios y navegadores, añade la aplicación por URL y elige forzar la instalación. Así KidRoles llega también a los Chromebooks.
macOS y Linux
macOS: añade la clave WebAppInstallForceList a un perfil de configuración de tu MDM (por ejemplo Intune o Jamf), en el dominio com.microsoft.Edge o com.google.Chrome:
<key>WebAppInstallForceList</key>
<array>
<dict>
<key>url</key>
<string>https://shop.kidroles.com/</string>
<key>default_launch_container</key>
<string>window</string>
</dict>
</array>Linux: Chrome lee las directivas de archivos JSON en /etc/opt/chrome/policies/managed/. Microsoft no incluye Linux entre las plataformas de esta directiva de Edge: allí usa Chrome.
{
"WebAppInstallForceList": [
{
"url": "https://shop.kidroles.com/",
"default_launch_container": "window",
"create_desktop_shortcut": true
}
]
}Modo quiosco
Ojo con los datos: el modo quiosco de Microsoft Edge (también un quiosco de Windows con acceso asignado y Edge) funciona en una sesión InPrivate. Al cerrarse el navegador o reiniciarse por inactividad desaparecen los cajeros, los productos, las monedas y el historial, y la aplicación necesita internet en cada inicio.
Para el juego diario recomendamos, por tanto, la instalación normal (la directiva de arriba) en una cuenta compartida del ordenador. El quiosco de Edge encaja en una demostración o una jornada de puertas abiertas, cuando cada sesión debe empezar de cero:
msedge.exe --kiosk https://shop.kidroles.com/ --edge-kiosk-type=fullscreen --no-first-runUn quiosco que conserva los datos es Chrome iniciado con --kiosk en un perfil normal: pantalla completa sin barra de direcciones, y los datos se mantienen entre reinicios. Cierra antes las demás ventanas de Chrome: el parámetro solo se aplica cuando el navegador arranca de nuevo.
# Windows
"C:\Program Files\Google\Chrome\Application\chrome.exe" --kiosk https://shop.kidroles.com/
# macOS
open -na "Google Chrome" --args --kiosk https://shop.kidroles.com/
# Linux
google-chrome --kiosk https://shop.kidroles.com/El quiosco de Windows se configura en Configuración → Cuentas → Otros usuarios → «Configurar un quiosco», en Intune o con el comando de PowerShell Set-AssignedAccess. Con Edge funciona en el modo quiosco de Edge, así que se aplica la misma advertencia sobre InPrivate.
Red y cortafuegos
La aplicación se conecta a una sola dirección y no carga nada de otros dominios: ni CDN, ni Google Fonts, ni anuncios, ni analítica dentro de la aplicación. La única excepción es una sugerencia opcional de nombres de productos, desactivada por defecto (último punto más abajo).
https://shop.kidroles.com/ (HTTPS, 443)
wss://shop.kidroles.com/pair (WebSocket, 443)- La primera vez que se abre necesita internet: es cuando el navegador guarda la aplicación (service worker). Después la caja funciona sin conexión y descarga actualizaciones cuando hay red.
- Emparejar un móvil como escáner conecta la caja y el móvil por el WebSocket
wss://shop.kidroles.com/pair. Los dos dispositivos necesitan internet, pero no tienen que estar en la misma red wifi. El servidor solo pasa los códigos escaneados de uno a otro y no los guarda. - Un proxy con inspección TLS debe dejar pasar las conexiones WebSocket (cabecera
Upgrade) a esta dirección; lo más sencillo es añadirshop.kidroles.coma las excepciones de la inspección. Si el WebSocket está bloqueado, solo deja de funcionar el emparejamiento. - El móvil no es imprescindible: la cámara del ordenador o de la tableta también escanea códigos (botón «Escáner» en la Tienda).
- Opcional:
https://world.openfoodfacts.org(HTTPS, 443): solo si un adulto activa en Ajustes → Escáner «Sugerir nombres desde internet (modo padres)». Al añadir un producto tras escanear su código, la aplicación envía allí solo el código y obtiene el nombre de la base de datos Open Food Facts. Si la dirección está bloqueada, el nombre se escribe a mano; el resto de la aplicación funciona igual.
Datos y privacidad
- Sin cuentas ni inicio de sesión: los niños no escriben nombres ni correos; un cajero es un emoji o una foto guardada en el propio equipo.
- Todos los datos se quedan en el almacenamiento del navegador (
localStorage), en el perfil del usuario de ese ordenador. Nada llega a nuestro servidor; la aplicación no tiene anuncios ni seguimiento. - Cada perfil del navegador y cada cuenta del sistema es una tienda distinta. En el ordenador compartido de un grupo basta con una cuenta: los niños tienen sus propios cajeros dentro de la aplicación.
Estos ajustes borran los datos de la aplicación: ClearBrowsingDataOnExit (Edge), ClearBrowsingDataOnExitList (Chrome), BrowsingDataLifetime con el tipo cookies_and_other_site_data (Edge y Chrome), ForceEphemeralProfiles, las cookies «solo durante la sesión» (DefaultCookiesSetting = 4), además de las cuentas de invitado y los perfiles temporales. No los apliques en los ordenadores con KidRoles o comprueba en uno de ellos que los cajeros y los productos sobreviven a un reinicio.
Un catálogo para todo el centro: en el modo de edición, «Guardar catálogo» guarda los productos en un archivo que cargas en los demás ordenadores («Cargar catálogo»).
Fuentes: documentación de Microsoft, Google y Apple
- Microsoft Edge — WebAppInstallForceList
- Microsoft Edge — VideoCaptureAllowedUrls
- Microsoft Edge — ClearBrowsingDataOnExit
- Microsoft Edge — BrowsingDataLifetime
- Microsoft Edge — kiosk mode
- Microsoft Edge — PWA: install, manage, uninstall
- Windows — single-app kiosk (Assigned Access)
- Intune — settings catalog
- Google Chrome Enterprise — automatically install web apps
- Google Chrome Enterprise — BrowsingDataLifetime, ClearBrowsingDataOnExitList
- Google Chrome — use web apps
- Apple — use Safari web apps on Mac