Ir al contenido principal

Crear un script JSON para Zoom Nightshift

Actualizado hace más de 4 meses

Tenga en cuenta: Este artículo es una traducción generada por IA.

Zoom Nightshift automatiza acciones en Zoom usando archivos de script JSON en combinación con el Programador de Tareas de Windows.

Con Nightshift, puedes automatizar las siguientes acciones en BIMcollab:

  • Abrir modelos / Añadir al proyecto

  • Conectar al proyecto

  • Filtrar incidencias

  • Actualizar incidencias

  • Ejecutar y compartir todos los Listados

  • Sincronizar proyecto

En este artículo, describimos cómo crear un script para ejecutarse en Zoom Nightshift.

Para más información sobre cómo configurar una tarea en el Programador de Tareas de Windows, consulta el artículo Configurar una tarea para Zoom Nightshift en el Programador de Tareas de Windows.

📝 Nota: Un script JSON se puede configurar en cualquier editor de scripts JSON. Puedes encontrar un script de ejemplo como adjunto a este artículo para comenzar.

El script comienza con el título del script y opcionalmente la versión, seguido de las acciones a realizar en BIMcollab cuando se ejecute el script.

{
"title": "Example_Script",
"version": "0.1",
"actions": [


Las diferentes acciones que se pueden añadir al script, para que BIMcollab las realice durante Nightshift, se explican en el resto de este artículo.

Abrir modelos / Añadir al proyecto

Lo primero que quieres hacer en Nightshift es abrir un grupo de modelos sobre los cuales se puedan realizar el resto de las acciones. Para esto, hay dos indicaciones posibles:

  • OPEN_MODELS: añade y carga un modelo al Navegador y cierra cualquier modelo cargado previamente

  • ADD_TO_PROJECT: añade y carga un modelo al Navegador sin cerrar los modelos que ya están presentes en el Navegador

📝 Nota: Cuando te conectas a un proyecto donde una Carpeta de proyecto está activa, todos los modelos en la carpeta del proyecto se cargarán automáticamente, independientemente de su estado de carga en tu proyecto. No es necesario ningún input adicional en el script para abrir estos modelos.
Si deseas añadir modelos adicionales al proyecto que no están ubicados en la carpeta del proyecto, utiliza la indicación ADD_TO_PROJECT.


Script

{
"type": "OPEN_MODELS",
"models": [
"C:/Users/userone/Desktop/1.ifc",
"C:/Users/userone/Desktop/2.ifc",
"C:/Users/userone/Desktop/3.bcp"
]
}


Explicación

Reemplaza "C:/Users/userone/Desktop/1.ifc", etc., con las rutas a los modelos que te gustaría abrir, separadas por comas.

⚠️ Atención: Siempre usa barras inclinadas "/" en la definición de la ruta, no barras invertidas.


Conectar al proyecto

Para realizar una actualización de Smart Issues y compartir Listados, necesitas estar conectado a un proyecto en BIMcollab.

La indicación para esto es CONNECT_TO_PROJECT

Script

{
"type": "CONNECT_TO_PROJECT",
"space_name": "example.bimcollab.com",
"project_name": "Mi proyecto BIMcollab"
}


Explicación

  • Reemplaza "example.bimcollab.com" con la URL del Espacio al que deseas conectar.

  • Reemplaza "Mi proyecto BIMcollab" con el nombre del proyecto al que deseas conectar. Presta atención a la ortografía correcta del nombre y la URL.

⚠️ Atención: Es importante tener en cuenta que el proyecto al que deseas conectar es parte del listado de proyectos recientes en BIMcollab y que tus credenciales están guardadas en BIMcollab. Esto se puede lograr marcando la casilla 'Recordarme' al conectar manualmente al proyecto.


Además, asegúrate de que el formato del parámetro "space_name" coincida exactamente con el formato en el que se ingresó el nombre del espacio al conectar al proyecto.

Si, por ejemplo, ingresaste https://example.bimcollab.com/ o example.bimcollab.com, esto debe coincidir exactamente en el script.


Filtrar incidencias

Una vez que estás conectado a un proyecto, todas las incidencias que son visibles para ti en el proyecto se cargarán en BIMcollab.

En el siguiente paso, cualquier Smart Issue que sea parte de este listado se puede actualizar automáticamente. Para actualizar solo una selección de incidencias de tu elección, primero configura el filtro de incidencias.

El prompt es FILTER_ISSUES.

Si este prompt se omite del script, se usará el último filtro activo.


Script

{
"type": "FILTER_ISSUES",
"filter_type": "Incidencia",
"area": "Modelo",
"milestone": "Fase de diseño",
"label": "Arquitectura",
"priority": "Normal",
"show_active": true,
"show_resolved": true,
"show_closed": false,
"hide_invisible": false,
"show_to_approve": false,
"assigned_to_user_email": "[email protected]",
"deadline": "01-01-2021",
"created_by_user_email": "[email protected]",
"custom1": "Valor 1",
"custom2": "Valor 2"
}


Explicación

Aquí hay algunas cosas a tener en cuenta para esta parte del script:

  1. Cuando este prompt se añade al script, el filtro de incidencias en BIMcollab primero se restablece al filtro predeterminado y luego se ajusta según los valores en el script.

  2. Nightshift asume configuraciones de parámetros predeterminadas siempre que sea posible, por lo que solo necesitas especificar los cambios que se realicen desde la configuración predeterminada. Todas las líneas de parámetros en esta parte del script, excepto "type": "FILTER_ISSUES" (definición de acción obligatoria) y "priority", pueden omitirse del script. Si, por ejemplo, se omite el parámetro "label", Nightshift conservará esa configuración de parámetro en "All".

  3. Presta atención a la ortografía de los valores ingresados. Deben ser exactamente los mismos que en el proyecto.

💡 Consejo: Abre la ventana de filtro de Incidencias en BIMcollab junto al editor JSON para evitar errores tipográficos en el script.

Todas las líneas en esta parte del script representan una de las propiedades en el filtro de incidencias:

  • "filter_type"
    Reemplaza "Incidencia" con el tipo que deseas filtrar. El valor predeterminado es "All" (o el valor correspondiente en el idioma de tu proyecto).

  • "area"
    Reemplaza "Modelo" con la zona que deseas filtrar. El valor predeterminado es "All" (o el valor correspondiente en el idioma de tu proyecto).

  • "milestone"
    Reemplaza "Fase de diseño" con la fase que deseas filtrar. El valor predeterminado es "All" (o el valor correspondiente en el idioma de tu proyecto).

  • "label"
    Reemplaza "Arquitectura" con la etiqueta que deseas filtrar. El valor predeterminado es "All" (o el valor correspondiente en el idioma de tu proyecto).

  • "priority"
    Reemplaza "Normal" con la prioridad que deseas filtrar. El valor predeterminado es "All" (o el valor correspondiente en el idioma de tu proyecto).

  • "show_active"
    Este es un checkbox que determina si las incidencias activas del proyecto deben mostrarse. Ingresa 'true' si el checkbox debe estar habilitado o 'false' si debe estar inhabilitado. El valor predeterminado es true.

  • "show_resolved"
    Este es un checkbox que determina si las incidencias resueltas del proyecto deben mostrarse. Ingresa 'true' si el checkbox debe estar habilitado o 'false' si debe estar inhabilitado. El valor predeterminado es true.

  • "show_closed"
    Este es un checkbox que determina si las incidencias cerradas del proyecto deben mostrarse. Ingresa 'true' si el checkbox debe estar habilitado o 'false' si debe estar inhabilitado. El valor predeterminado es false.

  • "hide_invisible"
    Este es un checkbox que determina si las incidencias que no son visibles para todos los miembros del equipo deben ocultarse. Ingresa 'true' si el checkbox debe estar habilitado o 'false' si debe estar inhabilitado. El valor predeterminado es false.

  • "show_to_approve"
    Este es un checkbox que determina si las incidencias que debes aprobar deben mostrarse. Ingresa 'true' si el checkbox debe estar habilitado o 'false' si debe estar inhabilitado. El valor predeterminado es false.

  • "assigned_to_user_email"
    Reemplaza "[email protected]" con la dirección de correo electrónico del usuario asignado, no solo su nombre. El valor predeterminado es "" (se muestran incidencias asignadas a todos los usuarios).

  • "deadline"
    Reemplaza "01-01-2021" con el vencimiento en el que deseas filtrar, en el formato dd-mm-yyyy. El valor predeterminado es "" (no se tiene en cuenta el vencimiento).

  • "created_by_user_email"
    Reemplaza "[email protected]" con la dirección de correo electrónico del creador, no solo su nombre. El valor predeterminado es "" (se muestran incidencias creadas por todos los usuarios).

  • "custom1"
    Reemplaza "Valor 1" con el valor del Campo personalizado 1 que deseas filtrar. La línea del script siempre debe comenzar con "custom1", no con el nombre real del Campo personalizado. El valor predeterminado es "" (se muestran todos los valores para este campo personalizado).

  • "custom2"
    Reemplaza "Valor 2" con el valor del Campo personalizado 2 que deseas filtrar. La línea del script siempre debe comenzar con "custom2", no con el nombre real del Campo personalizado. El valor predeterminado es "" (se muestran todos los valores para este campo personalizado).

⚠️ Atención: Si una de las entradas del filtro es incorrecta, el script no se ejecutará más.


Actualizar incidencias

Todos los Smart Issues que son visibles en la pestaña de Incidencias de BIMcollab pueden actualizarse automáticamente según el estado de las colisiones en los modelos cargados.

El prompt es UPDATE_ISSUES.

Script

{
"type": "UPDATE_ISSUES",
"close_where_clashes_solved": true,
"reopen_previously_closed_issues": false,
"comment": "Actualizado con Nightshift"
}


Explicación

Cada línea en esta parte del script representa una de las opciones en la ventana 'Actualizar Smart Issues'. Ten en cuenta que 'Solo incidencias seleccionadas' no está presente, ya que no se pueden seleccionar incidencias por separado al ejecutar el script. La acción se realizará en todas las incidencias visibles en la pestaña de incidencias.

  • "close_where_clashes_solved"
    Este es un checkbox que determina si las incidencias donde todas las colisiones están resueltas pueden cerrarse con la actualización. Ingresa 'true' si el checkbox debe estar habilitado o 'false' si debe estar inhabilitado

  • "reopen_previously_closed_issues"
    Este es un checkbox que determina si las incidencias cerradas que contienen colisiones aún activas pueden reabrirse con la actualización. Ingresa 'true' si el checkbox debe estar habilitado o 'false' si debe estar inhabilitado

  • "comment"
    Reemplaza "Actualizado con Nightshift" con cualquier comentario que desees añadir a las incidencias actualizadas

Si alguna de las opciones falta, se añadirá un valor predeterminado, como se muestra en la imagen a continuación.


Ejecutar y compartir Listados

Todos los Listados ubicados en 'Compartido' en la pestaña de Listados se pueden ejecutar y compartir al mismo tiempo, para que la información más reciente esté disponible para todos los miembros del equipo en BIMcollab.

El comando para esta acción es RUN_AND_SHARE_LISTS


Script

{
"type": "RUN_AND_SHARE_LISTS",
"list_set-name" : "List set 3"
}


Explicación

El parámetro "list_set_name" es opcional. Si deseas ejecutar un grupo de listados en particular, reemplaza "List set 3" con el nombre del grupo de listados que deseas ejecutar. Si el parámetro no está presente, todos los Listados en 'Compartido' se ejecutarán y compartirán.


Sincronizar proyecto

Una vez que las Incidencias están actualizadas y los Listados se ejecutan y comparten, es importante siempre sincronizar el proyecto con BIMcollab, para que los cambios se guarden y sean visibles para el resto del equipo.

Siempre añade este comando al final del script.

El comando es SYNCHRONIZE_PROJECT.


Script

{
"type": "SYNCHRONIZE_PROJECT"
}


Seguimiento del estado de la tarea

Una vez que la tarea se ha ejecutado, puedes verificar si todas las acciones se realizaron con éxito en el archivo de registro de Nightshift. El archivo proporciona retroalimentación sobre el estado de ejecución de todas las acciones en los scripts, y códigos de error si algo salió mal.

Puedes encontrar todos los archivos de registro en C:\Users\\AppData\Roaming\KUBUS\BIMcollab Zoom\Nightshift.

Reemplaza con el nombre de tu propio perfil de usuario en Windows.

La carpeta AppData es una carpeta oculta por defecto. Muestra las carpetas ocultas en el Explorador de Archivos para navegar a la ubicación correcta.

¿Ha quedado contestada tu pregunta?