Ítems de acción personalizados de la barra de menús

Jamf Connect te permite crear ítems de acción personalizada en la app de barra de menús. Estos ítems pueden abrir direcciones URL o ejecutar cualquier script en segundo plano, lo que te permite crear una amplia variedad de recursos útiles y prácticos para el usuario. Los ítems de acción de la barra de menús personalizada se añaden a la app de barra de menús de Jamf Connect implementando un perfil de configuración escrito para el siguiente dominio:

com.jamf.connect.actions

Puedes crear ítems de barra de menús para hacer, por ejemplo, lo siguiente:

  • Conectar el ordenador a una VPN

  • Mostrar información de red en la barra de menús

  • Abrir el sitio web de tu organización en un navegador web

  • Ejecutar un script que aplica una política de mantenimiento implementada por tu solución de MDM

Ejemplo de perfil de configuración de ítem de acción

<plist version="1.0">
    <dict>
        <key>PayloadType</key>
        <string>Configuración</string>
        <key>PayloadDisplayName</key>
        <string>Acciones de Jamf Connect</string>
        <key>PayloadDescription</key>
        <string>Acciones de Jamf Connect</string>
        <key>PayloadOrganization</key>
        <string>Jamf</string>
        <key>PayloadUUID</key>
        <string>27870006-41CB-4694-A6AD-709073670851</string>
        <key>PayloadEnabled</key>
        <true/>
        <key>PayloadScope</key>
        <string>Sistema</string>
        <key>PayloadRemovalDisallowed</key>
        <true/>
        <key>PayloadIdentifier</key>
        <string>com.jamf.connect.actions</string>
        <key>PayloadVersion</key>
        <integer>1</integer>
        <key>PayloadContent</key>
        <array>
            <dict>
                <key>PayloadType</key>
                <string>com.jamf.connect.actions</string>
                <key>PayloadDisplayName</key>
                <string>Acciones de Jamf Connect</string>
                <key>PayloadDescription</key>
                <string>Ajustes de acciones de Jamf Connect</string>
                <key>PayloadOrganization</key>
                <string>Jamf</string>
                <key>PayloadUUID</key>
                <string>98B42AF5-4040-47D1-9F6F-A0E1D7FBFC26</string>
                <key>PayloadVersion</key>
                <integer>1</integer>
                <key>PayloadIdentifier</key>
                <string>com.jamf.connect.actions</string>
                <key>Version</key>
                <integer>1</integer>
                <key>Actions</key>
                <array>
                    <dict>
                        <key>Title</key>
                        <dict>
                            <key>Command</key>
                            <string>path</string>
                            <key>CommandOptions</key>
                            <string>/usr/sbin/ipconfig getifaddr en0</string>
                        </dict>
                        <key>ToolTip</key>
                        <string>Dirección IP principal</string>
                        <key>Name</key>
                        <string>en0</string>
                    </dict>
                    <dict>
                        <key>Name</key>
                        <string>Nombre de host</string>
                        <key>Title</key>
                        <dict>
                            <key>Command</key>
                            <string>ruta</string>
                            <key>CommandOptions</key>
                            <string>/bin/hostname</string>
                        </dict>
                    </dict>
                    <dict>
                        <key>Name</key>
                        <string>separador</string>
                    </dict>
                    <dict>
                        <key>Action</key>
                        <array>
                            <dict>
                                <key>Command</key>
                                <string>url</string>
                                <key>CommandOptions</key>
                                <string>https://www.jamf.com</string>
                            </dict>
                        </array>
                        <key>Name</key>
                        <string>Abre jamf.com en tu navegador</string>
                    </dict>
                    <dict>
                        <key>Action</key>
                        <array>
                            <dict>
                                <key>Command</key>
                                <string>app</string>
                                <key>CommandOptions</key>
                                <string>/System/Applications/Calculator.app</string>
                            </dict>
                        </array>
                        <key>Name</key>
                        <string>Abre la Calculadora de macOS</string>
                    </dict>
                </array>
            </dict>
        </array>
    </dict>
</plist>

Referencia de claves de preferencias de acción

En el dominio com.jamf.connect.actions, las siguientes claves de preferencias globales determinan el comportamiento del menú. El único elemento obligatorio de cada ítem es el nombre; el resto son opcionales. Ten en cuenta lo siguiente al crear ítems de barra de menús:

  • El resultado de cualquier comando se puede pasar al siguiente. Al usar <<result>> como opción de comando, se sustituye con el resultado del comando anterior.

  • Los resultados true o falseno pasan al siguiente comando.

  • Si añades true o false al final del comando, ese comando solo se ejecutará si el resultado del comando anterior es el correspondiente. Por ejemplo, si usas alertTrue como el nombre del comando, solo se ejecutará el comando alert si el comando ejecutado previamente ha devuelto true.

Nota:

El estado del resultado es persistente, lo que permite designar múltiples comandos para que se ejecuten o no en función de un único resultado. Por ejemplo, si se ha pasado un resultado de true para unos comandos de secuencia con los modificadores false adjuntos a sus nombres de comando, no se ejecuta ninguno de esos comandos.

Preferencias globales

La siguiente tabla incluye las preferencias globales para un perfil de configuración de acción de barra de menús personalizada.

Clave

Descripción

Tipo

MenuIcon

Determina si el menú de acción mostrará un icono de estado (verde, amarillo o rojo).

Nota:

MenuIcon mostrará un icono verde, amarillo o rojo junto al menú Acción principal basado según el máximo grado de alerta de todos los ítems del submenú. Por ejemplo, si tienes alguna acción de submenú visible que muestre un icono rojo, el menú principal mostrará un icono rojo. Si una acción de submenú muestra un icono amarillo y ninguna muestra un icono rojo, el ítem de menú principal mostrará un icono amarillo.

Booleano

MenuText

Cuando se define como verdadero, Jamf Connect usará el resultado del comando como el texto del ítem de menú.

Nota:

MenuText requiere un comando para devolver un resultado de <<menu>> seguido de tu menú. El último comando en devolver un resultado que contenga <<menu>> determinará el título del menú.

Booleano

Contenido de una acción

Clave

Descripción

Tipo

Name

(Obligatorio) El nombre de la acción

Cadena

Title

El texto usado para mostrar el ítem en la barra de menús

Nota:

Si no se especifica, se usará el Name como título.

Diccionario

Show

Determina si el ítem se muestra en el menú o no.

Nota:

Todos los comandos del comando Show deben devolver el valor «true» para que se muestre el ítem de menú.

Matriz

Action

Contiene la acción

 

Matriz

Post

Determina qué ocurre después de que se ejecute la acción.

Matriz

GUID

El ID exclusivo de la acción

Cadena

Connected

Determina si la acción debe ejecutarse solo cuando haya conexión con un dominio de Active Directory.

Booleano

Timer

Tiempo en minutos antes de ejecutar la acción.

Entero

ToolTip

El texto mostrado al pasar el puntero sobre un ítem de menú

Cadena

Separator

Crea una barra de separación visual en la barra de menús.

 

Comandos

Jamf Connect tiene comandos integrados que se pueden usar para ejecutar ítems de acción. Ten en cuenta lo siguiente en relación con los comandos:

  • Todas las opciones son cadenas.

  • Todos los comandos devuelven resultados.

  • Los resultados no persisten entre comandos.

  • Las CommandOptions admiten las Jamf Connect variables estándar, como <<domain>>, <<user>> e <<email>>.

  • Los comandos distinguen entre mayúsculas y minúsculas.

Comando

Función

Opciones de comandos

path

Ejecuta un binario en una ruta de archivo específica.

La ruta que ejecutar.

app

Abre una aplicación en una ruta de archivo específica.

La ruta a la aplicación que abrir.

url

Abre una URL en el navegador por omisión del usuario.

La URL que abrir.

ping

Envía un ping a un host.

El host al que enviar el ping.

adgroup

Determina si el usuario actual es un miembro de un grupo de Active Directory.

El grupo que probar.

alert

Muestra un diálogo modal al usuario.

 

El texto de la alerta.

Nota:

Si las opciones del comando están en blanco o son «true» (verdadero) o «false» (falso), no se muestra ninguna alerta. Puedes usar esto para mostrar solo los errores.

notify

Muestra una notificación en el centro de notificaciones.

 

El texto de la notificación.

Nota:

Si las opciones del comando están en blanco o son «true» (verdadero) o «false» (falso), no se muestra ninguna notificación. Puedes usar esto para mostrar solo los errores.

false

Un comando que siempre devuelve el valor falso. Esto se podría usar para borrar resultados anteriores de un conjunto de comandos.

Texto

true

Un comando que siempre devuelve el valor verdadero. Esto se podría usar para borrar resultados anteriores de un conjunto de comandos.

Texto