Pantalla Notify

Jamf Connect puede incluir una pantalla notify, que puede mostrar una barra de progreso, texto personalizado e imágenes durante la Inscripción Automatizada de Dispositivos. La pantalla notify se configura mediante un script que escribe comandos en un archivo de control. A continuación, este script se puede especificar con el ajuste Ruta de script (ScriptPath).

Si usas Jamf Pro, también puedes configurar la pantalla notify para leer y mostrar registros de políticas de Jamf Pro a los usuarios, en lugar de configurar el ajuste Estilo de registro de pantalla notify (NotifyLogStyle) con el valor jamf.

Activación y configuración de la pantalla notify

Completa los siguientes pasos para configurar la pantalla notify:

  1. Ejecuta el siguiente comando para añadir el mecanismo notify a la aplicación loginwindow:
    /usr/local/bin/authchanger -reset -JamfConnect -Notify
  2. Crea un script de notify. El script notify escribe comandos de eco en un archivo de control. El archivo de control se almacena en la siguiente ruta: /var/tmp/depnotify.log El siguiente script es un ejemplo:
    #!/bin/bash
    #variables
    NOTIFY_LOG="/var/tmp/depnotify.log"
    GIVEN_NAME="Archie"
     
    echo "STARTING RUN" >> $NOTIFY_LOG # Define the number of increments for the progress bar
    echo "Command: Determinate: 6" >> $NOTIFY_LOG
     
    #1 - Introduction window with username and animation
    echo "Command: Image: /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/com.apple.macbookpro-15-retina-touchid-silver.icns" >> $NOTIFY_LOG
    echo "Command: MainTitle: Welcome, $GIVEN_NAME" >> $NOTIFY_LOG
    echo "Command: MainText: Tu Mac ahora está inscrito y se configurará automáticamente.» >> $NOTIFY_LOG
    echo "Status: Preparando tu nuevo Mac...» >> $NOTIFY_LOG
    sleep 10
     
    #2 - Setting up single sign-on passwords for local account
    echo "Command: Image: /Applications/Utilities/Keychain Access.app/Contents/Resources/AppIcon.icns" >> $NOTIFY_LOG
    echo "Command: MainTitle: ¿Te has cansado de memorizar montones de contraseñas? \n $GIVEN_NAME " >> $NOTIFY_LOG
    echo "Command: MainText: Usamos servicios de inicio de sesión único para ayudarte a iniciar sesión en todos nuestros servicios corporativos.
    Puedes usar tu dirección de correo electrónico y la contraseña de tu cuenta para iniciar sesión en todas las aplicaciones que necesites utilizar. >> $NOTIFY_LOG
    echo "Status: Definiendo la contraseña de la cuenta de tu Mac para que se sincronice con tu contraseña de red...» >> $NOTIFY_LOG
    sleep 10
     
    #3 - Self Service makes the Mac life easier
    echo "Command: Image: /Applications/Self Service.app/Contents/Resources/AppIcon.icns" >> $NOTIFY_LOG
    echo "Command: MainTitle: Self Service makes the Mac life easier" >> $NOTIFY_LOG
    echo "Command: MainText: Self Service incluye marcadores e instaladores para otras aplicaciones que pueden resultarte útiles e interesantes.» >> $NOTIFY_LOG
    echo "Status: Instalación de Jamf Self Service..." >> $NOTIFY_LOG
    sleep 10
     
    #4 - Everything you need for your first day
    ###Jamf Triggers
    echo "Command: Image: /System/Library/CoreServices/Install in Progress.app/Contents/Resources/Installer.icns" >> $NOTIFY_LOG
    echo "Command: MainTitle: Instalación de todo lo necesario para tu primer día.» >> $NOTIFY_LOG
    echo "Command: MainText: Se están instalando todas las apps que vas a necesitar hoy. Una vez completada la configuración, Microsoft Office, Slack y Zoom estarán a tu disposición. Abre las apps desde el Dock y diviértete.» >> $NOTIFY_LOG
    echo "Status: Instalando Microsoft Office...» >> $NOTIFY_LOG
    /usr/local/bin/jamf policy -event "InstallOffice"
    sleep 5
     
    #5 - Finishing up
    echo "Command: Image: /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ApplicationsFolderIcon.icns" >> $NOTIFY_LOG
    echo "Status: Instalando Slack...» >> $NOTIFY_LOG
    /usr/local/bin/jamf policy -event "InstallSlack"
    sleep 5
    echo "Status: Acabando... We're almost ready for you, $GIVEN_NAME" >> $NOTIFY_LOG
    sleep 3
     
    ###Clean Up
    sleep 3
    echo "Command: Quit" >> $NOTIFY_LOG
    sleep 1
    rm -rf $NOTIFY_LOG
     
    #6 - Disable notify screen from loginwindow process
    /usr/local/bin/authchanger -reset -JamfConnect
  3. Usa tu método de configuración preferido para especificar la ruta de archivo para tu script con el ajuste Ruta de script (RunScript). Si quieres más información, consulta Configuración.

Comandos de script de notify

Comandos generales

Se suelen usar los siguientes comandos para mostrar la pantalla notify.

Image:

Este comando reemplaza la imagen por omisión de notify con una imagen ubicada en una ruta especificada. La imagen adoptará automáticamente el tamaño correcto.

Ejemplo:

Command: Image: /tmp/logo.png

MainText:
Este comando cambia el texto principal mostrado a los usuarios.
Ejemplo:

Command: MainText: Espera mientras se configura tu nuevo MacBook Pro.

MainTextImage:

Este comando reemplaza el texto principal con un icono personalizado en una ruta especificada. Las imágenes pueden ser de hasta 660 x 105 píxeles y se ajustan a escala para encajar.

Ejemplo:

Command: MainTextImage: /tmp/logo.png

MainTitle:

Este comando cambia el título principal mostrado a los usuarios.

Ejemplo:

Command: MainTitle: Te damos la bienvenida a tu nuevo MacBook Pro

Comandos interactivos

Los comandos interactivos se utilizan para personalizar la interacción del usuario durante el proceso de notify.
Determinate:
Este comando define la barra de progreso en modo determinado, con avance por pasos, en lugar de mostrar una barra giratoria. Debes especificar el número de pasos que quieres usar durante el proceso de notify. Una vez definido, cada actualización de estado de tu script incrementará la barra en un paso.
Ejemplo:

Command: Determinate: 5

DeterminateManual:
Este comando define la barra de progreso en modo determinado, con progreso manual, en lugar de con comandos de etapa. Debes especificar el número de pasos que quieres usar durante el proceso de notify. Una vez definido, debes avanzar la barra de estado manualmente, en lugar de usar el comando DeterminateManualStep:.
Ejemplo:

Command: DeterminateManual: 5

DeterminateManualStep:
En modo DeterminateManual:, este comando avanzará la barra de progreso un paso o un intervalo especificado. El siguiente ejemplo mueve la barra de progreso dos pasos:
Ejemplo:

Command: DeterminateManualStep: 2

DeterminateOff:
Este comando desactiva el estado de determinado para la barra de progreso. Los pasos ya producidos siguen mostrándose como completados en la barra de progreso. Esto te permite pasar de estado determinado a indeterminado sin perder el progreso.
Ejemplo:

Command: DeterminateOff:

DeterminateOffReset:
Después de desactivar el modo determinado de la barra de progreso, debes restablecerla a cero.
Ejemplo:

Command: DeterminateOffReset:

Quit
Este proceso cierra el proceso de notify.
Ejemplo:

Command: Quit

No se usan dos puntos con este comando.
También puedes especificar un mensaje para los usuarios.
Ejemplo:

Command: Quit: Gracias por usar esta app.

Actualizaciones de estado de Notify

Puedes usar echo Status: para informar a los usuarios sobre el proceso de notify. Veamos un ejemplo de actualización de estado:

echo Status: Installing Jamf >>/var/tmp/depnotify.log
Nota:

Si se usa el comando Determinate:, la barra de progreso avanza con cada actualización de estado.

Si usas Jamf Pro, también puedes configurar la pantalla notify para leer y mostrar registros de políticas de Jamf Pro a los usuarios, en lugar de configurar el ajuste Estilo de registro de pantalla notify (NotifyLogStyle) con el valor jamf.

Experiencia del usuario final con la pantalla notify

La siguiente pantalla muestra la experiencia del usuario final esperada cuando la pantalla notify está activada durante Inscripción Automatizada de Dispositivos:

  1. Ventana de introducción con nombre de usuario y animación
  2. Configuración de contraseñas de inicio de sesión único para cuenta local
  3. Self Service hace más fácil la vida con el Mac
  4. Instalando todo lo necesario para tu primer día
  5. Finalización