¿Por qué usar Jamf Device Checker?
El problema
Los usuarios finales suelen experimentar problemas en sus dispositivos que afectan a su productividad, pero no saben cómo identificarlos ni resolverlos:
- Versiones de apps ausentes o desactualizadas
- Versiones de iOS desactualizadas
- Estado de la batería deficiente que provoca apagados inesperados
- Problemas de capacidad de almacenamiento que impiden instalar apps
- Problemas de conectividad de red que afectan a la productividad
- Sobrecalentamiento del dispositivo que provoca limitación del rendimiento
- Uso elevado de memoria/CPU que ralentiza el trabajo
Estos problemas suelen derivar en tickets de soporte, pérdida de productividad y usuarios frustrados.
La solución
Jamf Device Checker permite que los usuarios finales diagnostiquen y resuelvan por sí mismos los problemas de preparación del dispositivo mediante una interfaz sencilla y con código de colores:
- ✅ Verde = El dispositivo está listo para trabajar
- ⚠️ Amarillo = Advertencias que deberían atenderse pronto
- 🔴 Rojo = Problemas críticos que impiden la productividad
Ventajas clave
Para los usuarios finales: comprobaciones de preparación del dispositivo en autoservicio, orientación clara y práctica para solucionar problemas, menor tiempo de espera del soporte de TI y notificaciones proactivas antes de los plazos.
Para los equipos de TI: menos tickets de soporte, cumplimiento de las políticas corporativas (versiones del SO, apps requeridas), visibilidad en tiempo real del estado del dispositivo y umbrales y reglas de supervisión configurables.
Para las organizaciones: mayor productividad de los usuarios finales, mejor gestión del ciclo de vida de los dispositivos, reducción de los costes de soporte de TI y seguimiento e informes de cumplimiento.
Visualización del estado general
La app muestra un indicador de estado grande y con código de colores en la parte superior de la pantalla principal que resume la preparación general del dispositivo.
| Estado | Color | Icono | Descripción |
|---|---|---|---|
| Listo | 🟢 Verde | Marca de verificación | Todas las comprobaciones habilitadas se superan. El dispositivo cumple todos los requisitos. |
| Plazo próximo | 🟠 Naranja | Triángulo de advertencia | Hay actualizaciones disponibles con plazos configurados. Muestra "X actualización(es) disponible(s) - quedan Y día(s)" con una cuenta atrás hasta el plazo más cercano. |
| Acción necesaria | 🟠 Naranja | Triángulo de advertencia | Hay actualizaciones disponibles, pero sin plazos configurados. Muestra "X actualización(es) disponible(s)". |
| No listo | 🔴 Rojo | Marca X | Una o más actualizaciones son necesarias y el plazo ha vencido. Muestra "X actualización(es) requerida(s)". |
| Instalando actualizaciones | 🔵 Azul | Flechas girando | Comandos MDM en curso. Muestra un temporizador de cuenta atrás de 2 minutos para la actualización automática. |
| Fuera de servicio | ⚪ Gris | Luna con Z's | Dispositivo marcado como fuera de servicio mediante Jamf Setup EA. |
| Desconocido | ⚪ Gris | Signo de interrogación | Estado inicial antes de que se complete la primera comprobación. |
Inicio rápido
Requisitos previos
- Servidor de Jamf Pro (JPS)
- Acceso de administrador a Jamf Pro
- App Jamf Self Service (necesaria para la función de instalación de apps)
- Cuenta de usuario local con privilegios de asistente (véase más abajo)
Privilegios de API requeridos
La app utiliza dos conjuntos distintos de privilegios:
Para la configuración del asistente (cuenta de usuario local — utilizada durante la configuración inicial):
Cree un usuario local en Jamf Pro con estos 8 privilegios:
Configuración de la integración de API (configuración única del asistente):
- Read API Integrations
- Create API Integrations
- Update API Integrations
- Read API Roles
- Create API Roles
- Update API Roles
Gestión de la App Config (asistente + actualizaciones continuas):
- Read Mobile Device Applications
- Update Mobile Device Applications
Esta cuenta de usuario autentica el asistente mediante Basic Auth para crear la integración de API, configurar roles, vincular la app nativa y guardar el XML de la app config. Tras la configuración inicial, esta cuenta solo es necesaria para las actualizaciones de la app config (requiere únicamente los 2 privilegios de Mobile Device Applications).
Para el funcionamiento en tiempo de ejecución (cliente de API OAuth — configurado automáticamente por el asistente):
El asistente crea automáticamente un rol de API "Jamf Device Checker" con estos 4 privilegios asignados a la integración de app vinculada:
- Send Device Information Command
- View MDM command information in Jamf Pro API
- Read Mobile Devices
- Send MDM command information in Jamf Pro API
Estos privilegios permiten que el device checker obtenga los detalles del dispositivo y envíe comandos MDM durante el funcionamiento normal mediante autenticación OAuth. Los usuarios finales nunca ven ni utilizan estas credenciales.
Configuración en 5 minutos
Paso 1: Compre y añada la app a Jamf Pro
- Compre "Jamf Device Checker" y asígnela a la instancia de Jamf Pro en AxM
- Vaya a Mobile Device Apps en Jamf Pro
- Añada "Jamf Device Checker" desde Apps Purchased in Volume
Paso 2: Ejecute el asistente de configuración
- Instale la app en su dispositivo de administrador
- Inicie la app y mantenga pulsada la imagen circular de estado para habilitar el modo Asistente
- Autentíquese con el usuario local (requiere los 8 privilegios del asistente — véase Privilegios de API requeridos más arriba)
- Siga el asistente para:
- Configurar el rol de API con los privilegios requeridos
- Crear la integración de API
- Vincular la app nativa a la integración de API para la autenticación
- Generar la app config gestionada y guardarla en el JPS
No hay paso 3 — solo hay que aplicar el ámbito a los dispositivos de los usuarios finales.
Instrucciones completas de configuración
Paso 1: Añadir la app de dispositivo móvil a Jamf Pro
- Compre "Jamf Device Checker" y asígnela a la instancia de Jamf Pro en AxM
- Inicie sesión en Jamf Pro
- Vaya a Devices > Mobile Device Apps
- Haga clic en + New
- Busque "Jamf Device Checker" en Apps Purchased in Volume
- Haga clic en Add para añadir el registro de la app a su instancia de Jamf Pro
Paso 2: Ejecutar el asistente de configuración
El asistente gestiona automáticamente toda la autenticación y la app config gestionada.
Instalar la app en el dispositivo de administrador
- Asigne la app a un dispositivo iOS de prueba
- Inicie Jamf Device Checker
Habilitar el modo Asistente
- En la pestaña de más opciones, mantenga pulsado el icono de la app durante 3 segundos
- Seleccione Wizard Setup
- Autentíquese con las credenciales del usuario local creado en Requisitos previos (requiere los 8 privilegios del asistente)
Completar los pasos del asistente
API Role
- El asistente comprueba si existe un rol de API "Jamf Device Checker"
- Si no lo encuentra, crea el rol con los privilegios requeridos:
- Send Device Information Command
- View MDM command information in Jamf Pro API
- Read Mobile Devices
- Send MDM command information in Jamf Pro API
- Vincula el rol a la integración de API
Autenticación de la app nativa
- El asistente vincula el registro de la app de dispositivo móvil a la integración de API
- Habilita la entrega del código de autorización de OAuth mediante la Managed App Config
Generar la App Config
- El asistente genera la Managed App Config completa
- La envía a Jamf Pro
Paso 3: Aplicar el ámbito a los dispositivos
- En el mismo registro de la app, haga clic en Scope
- Añada grupos de dispositivos de destino, grupos inteligentes o dispositivos individuales
- Haga clic en Save
Referencia de configuración
La app se configura por completo mediante la Managed App Config de Jamf Pro. A continuación se ofrece una referencia completa de todas las claves disponibles.
Claves requeridas
Estas claves las rellena automáticamente Jamf Pro — no las modifique ni las elimine.
| Clave | Descripción |
|---|---|
JPS_URL |
URL del servidor de Jamf Pro (rellenado automáticamente: $JPS_URL) |
JSSID |
JSS ID del dispositivo (rellenado automáticamente: $JSSID) |
MANAGEMENTID |
ID de gestión del dispositivo (rellenado automáticamente: $MANAGEMENTID) |
OAUTH_AUTH_CODE |
Código de autorización de OAuth (rellenado automáticamente: $OAUTH_AUTH_CODE) |
APP_CONFIG_REINSTALL_CODE |
Código de activación de reinstalación (rellenado automáticamente: $APP_CONFIG_REINSTALL_CODE) |
APPJSSID |
ID del registro de la app Jamf Device Checker (rellenado automáticamente: $APPJSSID) |
URL de marca y alertas
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-branding-image-url |
String | (vacío) | URL de la imagen del logotipo de la empresa (PNG/JPG). Déjelo en blanco para no mostrar marca. |
device-checker-branding-image-height |
Integer | 80 |
Altura del logotipo en puntos. |
device-checker-alerts-url |
String | (vacío) | URL opcional para la página de alertas/estado. Muestra un enlace en la pestaña Alertas. |
Ejemplo:
<key>device-checker-branding-image-url</key>
<string>https://yourcompany.com/logo.png</string>
<key>device-checker-branding-image-height</key>
<string>60</string>
Botones de compartir
Controle la visibilidad de las funciones de compartir estado y exportar registros en la pestaña de más opciones.
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-send-status-enabled |
String | YES |
Muestra el botón "Send Status" (comparte el resumen de preparación del dispositivo por correo/mensajes) |
device-checker-send-logs-enabled |
String | YES |
Muestra el botón "Send Logs" (exporta los registros de la app para la resolución de problemas) |
Ejemplo:
<key>device-checker-send-status-enabled</key>
<string>YES</string>
<key>device-checker-send-logs-enabled</key>
<string>NO</string>
Comportamiento de la interfaz
Controle el comportamiento de desplazamiento de la pestaña Estado.
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-status-tab-scrollable |
String | NO |
Cuando es YES, hace que toda la pestaña Estado sea desplazable (cabecera + estado general + mosaicos). Cuando es NO (predeterminado), la cabecera y el estado general permanecen fijos y solo se desplazan los mosaicos que aparecen debajo. |
Ejemplo:
<key>device-checker-status-tab-scrollable</key>
<string>NO</string>
Cuándo habilitarlo: El valor predeterminado (NO) es el mejor para la mayoría de las implementaciones — la cabecera y el estado general de preparación permanecen visibles mientras se desplaza por los mosaicos. Establézcalo en YES cuando necesite que toda la vista se desplace conjuntamente o para acomodar cabeceras de marca más largas en dispositivos más pequeños.
Preparación del sistema operativo
Supervise el requisito de versión del SO con una versión mínima y un plazo configurables.
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-os-enabled |
String | YES |
Habilita el mosaico de supervisión de versión del SO |
device-checker-os-min-version |
String | (ninguno) | Versión mínima requerida del SO (p. ej., 26.2) |
device-checker-os-deadline |
String | (ninguno) | Plazo del requisito en formato YYYY-MM-DD |
Ejemplo:
<key>device-checker-os-enabled</key>
<string>YES</string>
<key>device-checker-os-min-version</key>
<string>26.2</string>
<key>device-checker-os-deadline</key>
<string>2026-06-30</string>
Lógica de estado:
✅ Verde (Listo) — La versión actual del SO cumple el requisito mínimo
⚠️ Amarillo (Advertencia) — La versión actual del SO es inferior a la mínima, pero el plazo NO ha vencido (o no hay plazo configurado)
🔴 Rojo (No listo) — La versión actual del SO es inferior a la mínima Y el plazo ha vencido
Preparación de apps
Supervise el estado de instalación y los requisitos de versión de las apps gestionadas requeridas.
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-apps-enabled |
String | NO |
Habilita el mosaico de supervisión de apps |
device-checker-apps-list |
String | (vacío) | Lista de apps separadas por barras verticales (véase el formato más abajo) |
Formato de la lista de apps:
AppName,bundleID,minVersion,deadline|AppName2,bundleID2,minVersion2,deadline2|...
Ejemplo:
<key>device-checker-apps-enabled</key>
<string>YES</string>
<key>device-checker-apps-list</key>
<string>Slack,com.tinyspeck.chatlyio,24.0.0,2026-03-01|Microsoft Teams,com.microsoft.skype.teams,5.0.0,2026-06-01</string>
Lógica de estado:
✅ Verde (Listo) — Todas las apps están instaladas y cumplen las versiones mínimas
⚠️ Amarillo (Advertencia) — Una o más apps necesitan actualizarse, pero el plazo NO ha vencido
🔴 Rojo (No listo) — Una o más apps necesitan actualizarse Y el plazo ha vencido
⏳ Pendiente — Instalación de la app en curso (véase la integración con Self Service más abajo)
Integración con Self Service:
Cuando faltan apps o están desactualizadas, los usuarios pueden tocar el botón "Update Apps" en el mosaico de Apps para instalar o actualizar automáticamente las apps requeridas. El flujo de trabajo es:
- El usuario toca el botón "Update Apps" en el mosaico de Apps
- La app Jamf Self Service se abre automáticamente con las apps ausentes/desactualizadas en cola
- Device Checker entra en estado "Pendiente" e inicia un temporizador de actualización automática de 2 minutos
- La app se actualiza automáticamente cada 2 minutos para comprobar si las instalaciones han finalizado
- Una vez que todas las apps cumplen los requisitos, el estado vuelve a verde
Requisitos: Jamf Self Service debe estar instalado en el dispositivo, las apps deben estar disponibles en Self Service y con ámbito aplicado al dispositivo, y las apps deben tener marcada la opción "Display app in Self Service after it is installed" en Jamf Pro.
Notas:
- El bundle ID debe coincidir exactamente (distingue mayúsculas y minúsculas)
- La comparación de versiones utiliza versionado semántico (p. ej.,
2.5.0>2.4.9) - El plazo es opcional (déjelo en blanco si no es necesario:
AppName,bundleID,minVersion,)
Fuente de alimentación (nivel de batería)
Supervise el nivel de carga de la batería con umbrales de advertencia y crítico configurables.
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-power-source-enabled |
String | YES |
Habilita el mosaico de supervisión del nivel de batería |
device-checker-power-source-warning |
Integer | 25 |
Umbral de advertencia (porcentaje) |
device-checker-power-source-critical |
Integer | 10 |
Umbral crítico (porcentaje) |
Ejemplo:
<key>device-checker-power-source-enabled</key>
<string>YES</string>
<key>device-checker-power-source-warning</key>
<string>25</string>
<key>device-checker-power-source-critical</key>
<string>10</string>
Lógica de estado:
🔴 Rojo (Crítico) — Batería ≤ umbral crítico
⚠️ Amarillo (Advertencia) — Batería ≤ umbral de advertencia (pero > crítico)
✅ Verde (Listo) — Batería > umbral de advertencia
⚡ Cargando — El dispositivo está enchufado (siempre verde durante la carga)
Capacidad de almacenamiento
Supervise el almacenamiento disponible con umbrales de advertencia y crítico configurables (basados en el porcentaje utilizado).
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-storage-enabled |
String | YES |
Habilita el mosaico de supervisión del almacenamiento |
device-checker-storage-warning |
Integer | 75 |
Umbral de advertencia (% utilizado) |
device-checker-storage-critical |
Integer | 90 |
Umbral crítico (% utilizado) |
Ejemplo:
<key>device-checker-storage-enabled</key>
<string>YES</string>
<key>device-checker-storage-warning</key>
<string>75</string>
<key>device-checker-storage-critical</key>
<string>90</string>
Lógica de estado:
🔴 Rojo (Crítico) — Almacenamiento utilizado ≥ umbral crítico
⚠️ Amarillo (Advertencia) — Almacenamiento utilizado ≥ umbral de advertencia (pero < crítico)
✅ Verde (Listo) — Almacenamiento utilizado < umbral de advertencia
Estado de la batería
Supervise el estado de salud de la batería para identificar dispositivos que puedan necesitar la sustitución de la batería. Este mosaico muestra el estado de salud de la batería y el porcentaje de carga actual.
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-battery-enabled |
String | YES |
Habilita el mosaico de supervisión de la salud de la batería |
Ejemplo:
<key>device-checker-battery-enabled</key>
<string>YES</string>
Lógica de estado:
✅ Verde (Listo) — La salud de la batería es "Normal" o "Unsupported"
🔴 Rojo (No listo) — La salud de la batería es "Service-Recommended" o "Non-Genuine"
⚪ Gris (Desconocido) — La salud de la batería es "Unknown" o no se pueden obtener los datos de la batería
Valores del estado de salud:
- Normal — La batería funciona correctamente (Verde)
- Service-Recommended — La capacidad de la batería se ha degradado, se recomienda su sustitución (Rojo)
- Non-Genuine — Se ha detectado una batería no fabricada por Apple, se recomienda su sustitución (Rojo)
- Unsupported — La supervisión de la salud de la batería no está disponible en este modelo de dispositivo (Verde, muestra solo el % de carga)
- Unknown — Los datos de salud aún no están disponibles desde iOS (Gris, muestra solo el % de carga)
Visualización del mosaico: El color de estado y el icono se basan en la salud de la batería. El subtítulo muestra el problema de salud de la batería si lo hay; de lo contrario, muestra el porcentaje de carga actual. La vista de detalle muestra el nivel de carga, el estado de carga, el modo de bajo consumo, el estado de salud de la batería y las recomendaciones.
Notas:
- Los datos de salud de la batería proceden de Declarative Device Management (DDM)
- Los dispositivos nuevos pueden mostrar "Unknown" hasta que iOS calcule las métricas de salud (normalmente tras algunos ciclos de carga)
- El porcentaje de carga siempre se muestra en el subtítulo o en la vista de detalle
- Este mosaico se centra en la salud de la batería; utilice el mosaico de Fuente de alimentación para supervisar el nivel de carga con umbrales
Estado térmico
Supervise la temperatura del dispositivo en tiempo real mediante las API locales de iOS (no requiere llamadas MDM).
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-thermal-enabled |
String | YES |
Habilita el mosaico de supervisión del estado térmico |
Ejemplo:
<key>device-checker-thermal-enabled</key>
<string>YES</string>
Lógica de estado:
✅ Verde (Nominal) — Temperatura de funcionamiento normal, todas las funciones operan con normalidad
⚠️ Amarillo (Aceptable) — Ligeramente elevada, el sistema aplaza el trabajo en segundo plano como la precarga/indexación
🔴 Rojo (Grave) — Temperatura alta, limitación de CPU/GPU activa, la velocidad de fotogramas puede caer a 30 FPS
🔴 Rojo (Crítico) — Dispositivo críticamente caliente, limitación importante, cámara/flash/altavoz pueden desactivarse, riesgo de apagado
Casos de uso: dispositivos de campo en entornos calurosos (vehículos, trabajo al aire libre), usuarios que ejecutan apps intensivas (grabación de vídeo, RA), advertencias proactivas antes de los apagados térmicos y comprensión de la limitación del rendimiento.
Notas: Supervisión en tiempo real mediante la API ProcessInfo de iOS. Sin llamadas a la API ni consumo de batería. Se actualiza al instante cuando cambia el estado térmico.
Rendimiento (memoria y CPU)
Supervise la presión de memoria y el uso de CPU del dispositivo mediante las API locales de iOS con umbrales configurables.
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-performance-enabled |
String | YES |
Habilita el mosaico de supervisión del rendimiento |
device-checker-memory-warning |
Integer | 70 |
Umbral de advertencia de memoria (% utilizado) |
device-checker-memory-critical |
Integer | 85 |
Umbral crítico de memoria (% utilizado) |
device-checker-cpu-warning |
Integer | 60 |
Umbral de advertencia de CPU (% de uso) |
device-checker-cpu-critical |
Integer | 80 |
Umbral crítico de CPU (% de uso) |
Ejemplo:
<key>device-checker-performance-enabled</key>
<string>YES</string>
<key>device-checker-memory-warning</key>
<string>70</string>
<key>device-checker-memory-critical</key>
<string>85</string>
<key>device-checker-cpu-warning</key>
<string>60</string>
<key>device-checker-cpu-critical</key>
<string>80</string>
Lógica de estado:
🔴 Rojo (Crítico) — Memoria O CPU ≥ umbral crítico
⚠️ Amarillo (Advertencia) — Memoria O CPU ≥ umbral de advertencia (pero < crítico)
✅ Verde (Listo) — Tanto la memoria COMO la CPU < umbrales de advertencia
Notas: Se actualiza cada 5 segundos cuando el mosaico está visible. La supervisión se pausa cuando la app está en segundo plano (para ahorrar batería). No se requieren llamadas a API remotas — supervisión totalmente local mediante os_proc_available_memory() para la memoria y host_statistics() para la CPU.
Estado de la red
Supervise el estado de conectividad WiFi, Ethernet y móvil.
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-wifi-enabled |
String | YES |
Habilita el mosaico de supervisión de WiFi/Ethernet (Ethernet se detecta automáticamente cuando está conectado) |
device-checker-cellular-enabled |
String | NO |
Habilita el mosaico de supervisión de red móvil |
device-checker-network-speed-enabled |
String | NO |
Habilita el botón de prueba de velocidad de red en las vistas de detalle de red |
Ejemplo:
<key>device-checker-wifi-enabled</key>
<string>YES</string>
<key>device-checker-cellular-enabled</key>
<string>YES</string>
<key>device-checker-network-speed-enabled</key>
<string>YES</string>
Detalles de la prueba de velocidad de red:
La prueba de velocidad es una herramienta de diagnóstico bajo demanda (~10–15 MB por prueba, ~15–20 segundos de duración) que mide las velocidades de descarga/subida y la latencia. Antes de cada prueba a través de red móvil se muestra una advertencia para informar del uso de datos. Los resultados son solo informativos y no afectan al estado de preparación del dispositivo. Entre los casos de uso se incluyen trabajadores de campo que verifican la conectividad, la resolución de problemas de rendimiento lento y la validación de los requisitos de ancho de banda.
Prueba de conectividad a Internet (WiFi, Ethernet y red móvil)
Prueba ligera para verificar la accesibilidad real a Internet frente a la mera conectividad de la interfaz.
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-internet-connectivity-test-enabled |
String | NO |
Habilita la prueba de conectividad a Internet para todas las interfaces |
device-checker-internet-connectivity-test-endpoint |
String | http://captive.apple.com/hotspot-detect.html |
URL del endpoint de prueba (portal cautivo de Apple por defecto) |
device-checker-internet-connectivity-test-timeout |
String | 3 |
Tiempo de espera de la solicitud en segundos (intervalo de 1 a 10) |
device-checker-internet-connectivity-test-cache-ttl |
String | 30 |
Validez del resultado en caché en segundos (intervalo de 10 a 300; la red móvil usa un mínimo de 60 s) |
Ejemplo:
<key>device-checker-internet-connectivity-test-enabled</key>
<string>YES</string>
<key>device-checker-internet-connectivity-test-timeout</key>
<string>5</string>
<key>device-checker-internet-connectivity-test-cache-ttl</key>
<string>60</string>
Cómo funciona: Envía una solicitud HEAD ligera (~200–500 bytes) al endpoint del portal cautivo de Apple. Las pruebas se ejecutan automáticamente cuando una interfaz se conecta o cuando se abren las vistas de detalle de red (si la caché ha expirado). Los resultados se almacenan en caché durante 30 segundos en WiFi/Ethernet y un mínimo de 60 segundos en red móvil para minimizar el uso de datos. Los mosaicos de red muestran un estado amarillo/de advertencia si están conectados pero no se detecta Internet.
Comportamiento del estado por interfaz:
WiFi — Verde: conectado con Internet verificado. Amarillo: conectado pero sin Internet (portal cautivo, problema de enrutamiento). Rojo: no conectado.
Ethernet — Verde: conectado con Internet verificado. Amarillo: conectado pero sin Internet (problema de enrutamiento/firewall). Rojo: no conectado.
Red móvil — Verde: habilitada con Internet verificado. Amarillo: habilitada pero sin Internet (problema del operador, problema de cuenta). Rojo: no disponible o deshabilitada.
Uso de datos: ~200–500 bytes por prueba (frente a ~10–15 MB de la prueba de velocidad). WiFi/Ethernet con caché de 30 segundos: menos de 100 KB/día de uso típico. Red móvil con caché de 60 segundos: menos de 50 KB/día de uso típico.
Lógica de estado sin la prueba de conectividad a Internet:
WiFi: ✅ Verde (Conectado) — Conectado a WiFi. 🔴 Rojo (No conectado) — No conectado a WiFi.
Red móvil: ✅ Verde (Listo) — Datos móviles disponibles. ⚠️ Amarillo (Advertencia) — Acceso a red móvil restringido. 🔴 Rojo (Error) — Red móvil no disponible.
Atributo de extensión de Jamf Setup
Muestre el estado on-duty/off-duty a partir de un atributo de extensión de Jamf Pro.
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-jamf-setup-ea-enabled |
String | NO |
Habilita el mosaico de Jamf Setup EA |
device-checker-jamf-setup-ea-name |
String | (vacío) | Nombre del atributo de extensión en Jamf Pro |
device-checker-jamf-setup-ea-on-duty-value |
String | (vacío) | Valor que indica "on-duty" |
device-checker-jamf-setup-ea-off-duty-value |
String | (vacío) | Valor que indica "off-duty" |
Ejemplo:
<key>device-checker-jamf-setup-ea-enabled</key>
<string>YES</string>
<key>device-checker-jamf-setup-ea-name</key>
<string>Jamf Setup</string>
<key>device-checker-jamf-setup-ea-on-duty-value</key>
<string>On-duty</string>
<key>device-checker-jamf-setup-ea-off-duty-value</key>
<string>Off-duty</string>
Lógica de estado:
✅ Verde (Listo) — El valor de la EA coincide con el valor on-duty
⚠️ Amarillo (Advertencia) — El valor de la EA coincide con el valor off-duty
⚪ Gris (Desconocido) — La EA no se encuentra o el valor no coincide con ninguno de los valores configurados
Notas: Requiere un atributo de extensión personalizado en Jamf Pro. El atributo de extensión debe rellenarse mediante Jamf Setup u otro método.
Limitación de la actualización automática
Controle con qué frecuencia se actualiza automáticamente la app al volver del segundo plano.
| Clave | Tipo | Predeterminado | Descripción |
|---|---|---|---|
device-checker-auto-refresh-threshold |
Integer | 300 |
Segundos mínimos entre actualizaciones automáticas (intervalo: 60–3600, o 0 para deshabilitar) |
Ejemplo:
<key>device-checker-auto-refresh-threshold</key>
<string>300</string>
Comportamiento:
- Predeterminado (300 segundos / 5 minutos): Si el usuario cambia de app y vuelve en menos de 5 minutos, no se produce ninguna actualización automática
- Umbral personalizado: Establézcalo en los segundos deseados (60–3600)
- Deshabilitar la limitación: Establézcalo en
0para actualizar siempre cuando la app se active
Siempre se actualiza (se omite la limitación): primera activación tras el inicio de la app, cuando está en estado pendiente (se actualiza automáticamente cada 2 minutos), pulsaciones manuales del botón de actualización y expiración del temporizador durante el estado pendiente.
Comportamiento del estado pendiente: Cuando el mosaico de Apps entra en estado "Pendiente" (después de que el usuario toque "Update Apps"), la app comprueba automáticamente el estado del dispositivo cada 2 minutos hasta que todas las apps requeridas estén instaladas, independientemente del ajuste del umbral de actualización automática.
Ejemplos de configuración
Configuración mínima (ajustes predeterminados)
Perfecta para pruebas rápidas o implementaciones básicas.
<dict>
<!-- Required keys (auto-populated) -->
<key>JPS_URL</key>
<string>$JPS_URL</string>
<key>JSSID</key>
<string>$JSSID</string>
<key>MANAGEMENTID</key>
<string>$MANAGEMENTID</string>
<key>OAUTH_AUTH_CODE</key>
<string>$OAUTH_AUTH_CODE</string>
<key>APP_CONFIG_REINSTALL_CODE</key>
<string>$APP_CONFIG_REINSTALL_CODE</string>
<key>APPJSSID</key>
<string>$APPJSSID</string>
<!-- Enable OS monitoring only -->
<key>device-checker-os-enabled</key>
<string>YES</string>
<key>device-checker-os-min-version</key>
<string>18.0</string>
</dict>
Configuración completa
Configuración exhaustiva con marca, múltiples comprobaciones de estado del dispositivo y umbrales personalizados.
<dict>
<!-- Required keys (auto-populated) -->
<key>JPS_URL</key>
<string>$JPS_URL</string>
<key>JSSID</key>
<string>$JSSID</string>
<key>MANAGEMENTID</key>
<string>$MANAGEMENTID</string>
<key>OAUTH_AUTH_CODE</key>
<string>$OAUTH_AUTH_CODE</string>
<key>APP_CONFIG_REINSTALL_CODE</key>
<string>$APP_CONFIG_REINSTALL_CODE</string>
<key>APPJSSID</key>
<string>$APPJSSID</string>
<!-- Branding -->
<key>device-checker-branding-image-url</key>
<string>https://yourcompany.com/logo.png</string>
<key>device-checker-branding-image-height</key>
<string>60</string>
<!-- OS Readiness -->
<key>device-checker-os-enabled</key>
<string>YES</string>
<key>device-checker-os-min-version</key>
<string>18.0</string>
<key>device-checker-os-deadline</key>
<string>2026-12-31</string>
<!-- App Readiness -->
<key>device-checker-apps-enabled</key>
<string>YES</string>
<key>device-checker-apps-list</key>
<string>Slack,com.tinyspeck.chatlyio,24.0.0,2026-06-01|Microsoft Teams,com.microsoft.skype.teams,5.0.0,2026-09-01</string>
<!-- Device Health Tiles -->
<key>device-checker-power-source-enabled</key>
<string>YES</string>
<key>device-checker-power-source-warning</key>
<string>30</string>
<key>device-checker-power-source-critical</key>
<string>15</string>
<key>device-checker-storage-enabled</key>
<string>YES</string>
<key>device-checker-storage-warning</key>
<string>70</string>
<key>device-checker-storage-critical</key>
<string>85</string>
<key>device-checker-battery-enabled</key>
<string>YES</string>
<key>device-checker-thermal-enabled</key>
<string>YES</string>
<key>device-checker-performance-enabled</key>
<string>YES</string>
<key>device-checker-memory-warning</key>
<string>75</string>
<key>device-checker-memory-critical</key>
<string>90</string>
<key>device-checker-cpu-warning</key>
<string>70</string>
<key>device-checker-cpu-critical</key>
<string>85</string>
<key>device-checker-wifi-enabled</key>
<string>YES</string>
<key>device-checker-cellular-enabled</key>
<string>NO</string>
<!-- Network Speed Test (optional - disabled by default) -->
<key>device-checker-network-speed-enabled</key>
<string>NO</string>
<!-- Internet Connectivity Test (optional - disabled by default) -->
<key>device-checker-internet-connectivity-test-enabled</key>
<string>NO</string>
<key>device-checker-internet-connectivity-test-endpoint</key>
<string>http://captive.apple.com/hotspot-detect.html</string>
<key>device-checker-internet-connectivity-test-timeout</key>
<string>3</string>
<key>device-checker-internet-connectivity-test-cache-ttl</key>
<string>30</string>
<!-- Jamf Setup EA -->
<key>device-checker-jamf-setup-ea-enabled</key>
<string>YES</string>
<key>device-checker-jamf-setup-ea-name</key>
<string>Device Status</string>
<key>device-checker-jamf-setup-ea-on-duty-value</key>
<string>Active</string>
<key>device-checker-jamf-setup-ea-off-duty-value</key>
<string>Spare Pool</string>
<!-- UI Options -->
<key>device-checker-alerts-url</key>
<string>https://status.yourcompany.com</string>
<key>device-checker-send-status-enabled</key>
<string>YES</string>
<key>device-checker-send-logs-enabled</key>
<string>NO</string>
<key>device-checker-status-tab-scrollable</key>
<string>NO</string>
<!-- Auto-Refresh (10 minutes) -->
<key>device-checker-auto-refresh-threshold</key>
<string>600</string>
</dict>
Aspectos legales
- Acuerdo de uso: Application End User License Agreement
- Política de privacidad: Jamf Privacy Policy