Erstellen eines JSON-Skripts für ZOOM Nightshift

Erstellen eines JSON-Skripts für ZOOM Nightshift

ZOOM Nightshift automatisiert Aktionen in ZOOM unter Verwendung von JSON-Skriptdateien in Kombination mit dem Windows Task Scheduler.
Mit Nightshift können Sie die folgenden Aktionen in BIMcollab ZOOM automatisieren:
  1. Modelle öffnen / Dem Projekt hinzufügen
  2. Mit Projekt verbinden
  3. Issues filtern
  4. Issues aktualisieren
  5. Alle Listen ausführen und teilen
  6. Projekt synchronisieren
In diesem Artikel beschreiben wir, wie Sie ein Skript erstellen, das in ZOOM Nightshift ausgeführt wird.
Weitere Informationen zum Einrichten einer Aufgabe im Windows Aufgabenplanung finden Sie im Artikel Konfigurieren Sie eine Aufgabe für ZOOM Nightshift im Windows Aufgabenplanung.

Ein JSON-Skript kann in jedem JSON-Skript-Editor erstellt werden.
Im Anhang zu diesem Artikel finden Sie ein Beispielskript, das Ihnen den Einstieg erleichtern soll.

Das Skript beginnt mit dem Titel des Skripts und optional der Version, gefolgt von den Aktionen, die in ZOOM ausgeführt werden sollen, wenn das Skript ausgeführt wird.
{
"title": "Example_Script",
"version": "0.1",
"actions": [
Die verschiedenen Aktionen, die dem Skript hinzugefügt werden können, damit ZOOM sie während der Nightshift durchführen kann, werden im weiteren Verlauf dieses Artikels erläutert.

Modelle öffnen / Dem Projekt hinzufügen Hinzufügen zu Projekten

Das erste, was Sie in Nightshift tun möchten, ist, eine Reihe von Modellen zu öffnen, an denen die restlichen Aktionen durchgeführt werden können. Hierfür gibt es zwei verschiedene mögliche Aufforderungen:
  1. OPEN_MODELS: fügt ein Modell zum Navigator hinzu, lädt es und schließt alle zuvor geladenen Modelle
  2. ADD_TO_PROJECT: fügt ein Modell zum Navigator hinzu und lädt es, ohne die Modelle zu schließen, die bereits im Navigator vorhanden sind
Hinweis: Wenn Sie eine Verbindung zu einem Projekt herstellen, in dem ein Projektordner aktiv ist, werden alle Modelle im Projektordner automatisch geladen, unabhängig von ihrem Ladestatus in Ihrem ZOOM-Projekt. Es sind keine zusätzlichen Eingaben im Skript erforderlich, um diese Modelle zu öffnen. 
Wenn Sie dem Projekt weitere Modelle hinzufügen möchten, die sich nicht im Projektordner befinden, verwenden Sie die Eingabeaufforderung ADD_TO_PROJECT.

Skript


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

}

Erläuterung

Ersetzen Sie "C:/Users/userone/Desktop/1.ifc" usw. durch die Pfade zu den Modellen, die Sie öffnen möchten, getrennt durch Kommas.
Verwenden Sie in der Pfaddefinition immer Schrägstriche "/", keine Backslashes.

Mit Projekt verbinden

Um eine Aktualisierung von Smart Issues zu ermöglichen und Listen zu teilen, müssen Sie mit einem Projekt in der BIMcollab Cloud verbunden sein.
Die Aufforderung dazu lautet CONNECT_TO_PROJECT

Skript


"type": "CONNECT_TO_PROJECT",
"space_name": "example.bimcollab.com",
"project_name": "My BIMcollab Project"
}

Erläuterung

  1. Ersetzen Sie "example.bimcollab.com" durch die URL des WebRaums, mit dem Sie sich verbinden möchten. 
  2. Ersetzen Sie "My BIMcollab Project" durch den Namen des Projekts, mit dem Sie sich verbinden möchten. Achten Sie auf die korrekte Schreibweise des Namens und der URL.
Es ist wichtig, dass das Projekt, mit dem Sie sich verbinden möchten, in der Liste der letzten Projekte in BIMcollab ZOOM enthalten ist und dass Ihre Anmeldedaten in BIMcollab ZOOM gespeichert sind. Dies können Sie erreichen, indem Sie das Kontrollkästchen “Merken der Anmeldeinformationen" markieren, wenn Sie sich manuell mit dem Projekt verbinden.



Stellen Sie außerdem sicher, dass das Format des Parameters "space_name" genau dem Format entspricht, in dem der Raumname bei der Verbindung mit dem Projekt eingegeben wurde.
Wenn Sie z. B. https://example.bimcollab.com/ oder example.bimcollab.com eingegeben haben, muss dies im Skript genau übereinstimmen.

      
                 
                 

Issues filtern

Sobald Sie mit einem Projekt verbunden sind, werden alle Issues, die für Sie im Projekt sichtbar sind, in BIMcollab ZOOM geladen.
Im nächsten Schritt können alle Smart Issues, die in dieser Liste enthalten sind, automatisch aktualisiert werden. Um nur eine Auswahl von Issues Ihrer Wahl zu aktualisieren, richten Sie zunächst den Issue-Filter ein.
Die Aufforderung lautet FILTER_ISSUES.
Wird diese Aufforderung im Skript ausgelassen, wird der zuletzt aktive Filter verwendet.

Skript

{
"type": "FILTER_ISSUES",
"filter_type": "Issue",
"area": "Model",
"milestone": "Design phase",
"label": "Architecture",
"priority": "Normal",
"show_active": true,
"show_resolved": true,
"show_closed": false,
"hide_invisible": false,
"show_to_approve": false,
"assigned_to_user_email": "example@bimcollab.com",
"deadline": "01-01-2021",
"created_by_user_email": "example@bimcollab.com",
"custom1": "Value 1",
"custom2": "Value 2
}

Erläuterung

Für diesen Teil des Skripts sind einige Dinge zu beachten:
  1. Wenn diese Aufforderung zum Skript hinzugefügt wird, wird der Issue-Filter in BIMcollab ZOOM zunächst auf den Standardfilter zurückgesetzt und dann entsprechend den Werten im Skript angepasst.
  2. Nightshift übernimmt, wann immer möglich, die Standardeinstellungen der Parameter, so dass Sie nur die Änderungen angeben müssen, die von den Standardeinstellungen abweichen. Alle Parameterzeilen in diesem Teil des Skripts, mit Ausnahme von "type": "FILTER_ISSUES" (obligatorische Aktionsdefinition) und "Priorität", können im Skript weggelassen werden. Wird z. B. der Parameter "label" weggelassen, behält Nightshift diesen Parameter auf "All".
  3. Achten Sie auf die Schreibweise der eingegebenen Werte. Sie müssen genau so geschrieben werden, wie sie im Projekt stehen. 
    Tipp: Öffnen Sie das Issue-Filterfenster in BIMcollab ZOOM neben dem JSON-Editor, um Tippfehler im Skript zu vermeiden.
Alle Zeilen in diesem Teil des Skripts stellen eine der Eigenschaften im Issue-Filter dar:
  1. "filter_type"
    Ersetzen Sie "Issue" durch den Typ, den Sie filtern möchten. Der Standardwert ist "Alle" (oder der entsprechende Wert in der Sprache Ihres Projekts).
  2. "area"
    Ersetzen Sie "Model" durch den Bereich, den Sie filtern möchten. Der Standardwert ist "Alle" (oder der entsprechende Wert in der Sprache Ihres Projekts).
  3. "milestone"
    Ersetzen Sie "Design phase" durch den Meilenstein, den Sie filtern möchten. Der Standardwert ist "Alle" (oder der entsprechende Wert in der Sprache Ihres Projekts).
  4. "label"
    Ersetzen Sie "Architecture" durch das Etikett, das Sie filtern möchten. Der Standardwert ist "Alle" (oder der entsprechende Wert in der Sprache Ihres Projekts).
  5. "priority"
    Ersetzen Sie "Normal" durch die Priorität, die Sie filtern möchten. Der Standardwert ist "Alle" (oder der entsprechende Wert in der Sprache Ihres Projekts).
  6. "show_active"
    Dies ist ein Ankreuzfeld, das bestimmt, ob die aktiven Issues des Projekts angezeigt werden sollen. Geben Sie "true" ein, wenn das Feld aktiviert sein soll, oder "false", wenn es deaktiviert sein soll. Der Standardwert ist "true".
  7. "show_resolved"
    Dies ist ein Ankreuzfeld, das bestimmt, ob die gelösten Issues des Projekts angezeigt werden sollen. Geben Sie "true" ein, wenn das Feld aktiviert sein soll, oder "false", wenn es deaktiviert sein soll. Der Standardwert ist "true".
  8. "show_closed"
    Dies ist ein Ankreuzfeld, das bestimmt, ob die geschlossenen Issues des Projekts angezeigt werden sollen. Geben Sie "true" ein, wenn das Feld aktiviert sein soll, oder "false", wenn es deaktiviert sein soll. Der Standardwert ist "false".
  9. "hide_invisible"
    Dies ist ein Ankreuzfeld, das festlegt, ob Issues, die nicht für alle Teammitglieder sichtbar sind, ausgeblendet werden sollen. Geben Sie "true" ein, wenn das Feld aktiviert sein soll, oder "false", wenn es deaktiviert sein soll. Der Standardwert ist "false".
  10. "show_to_approve"
    Dies ist ein Ankreuzfeld, das bestimmt, ob die von Ihnen zu genehmigenden Issues angezeigt werden sollen. Geben Sie "true" ein, wenn das Feld aktiviert sein soll, oder "false", wenn es deaktiviert sein soll. Der Standardwert ist "false".
  11. "assigned_to_user_email"
    Ersetzen Sie "example@bimcollab.com" durch die E-Mail-Adresse des zugewiesenen Nutzers, nicht nur durch dessen Namen. Der Standardwert ist "" (Issues, die allen Nutzern zugewiesen sind, werden angezeigt).
  12. "deadline"
    Ersetzen Sie "01-01-2021" durch die Frist, nach der Sie filtern möchten, im Format tt-mm-jjjj. Der Standardwert ist "" (es wird kein Termin berücksichtigt).
  13. "created_by_user_email"
    Ersetzen Sie "example@bimcollab.com" durch die E-Mail-Adresse des Erstellers, nicht nur durch dessen Namen. Der Standardwert ist "" (von allen Nutzern erstellte Issues werden angezeigt).
  14. "custom1"
    Ersetzen Sie "Value 1" durch den Wert des kundenspezifischen Listenfeldes 1, das Sie filtern möchten. Die Scriptzeile sollte immer mit "custom1" beginnen, nicht mit dem tatsächlichen Namen des kundenspezifischen Feldes. Der Standardwert ist "" (alle Werte für dieses kundenspezifische Feld werden angezeigt).
  15. "custom2"
    Ersetzen Sie "Value 2" durch den Wert des kundenspezifischen Listenfeldes 2, das Sie filtern möchten. Die Scriptzeile sollte immer mit "custom2" beginnen, nicht mit dem tatsächlichen Namen des kundenspezifischen Feldes. Der Standardwert ist "" (alle Werte für dieses kundenspezifische Feld werden angezeigt).



Wenn eine der Eingaben des Filters falsch ist, wird das Skript nicht weiter ausgeführt.

Issues aktualisieren

Alle Smart Issues, die in der Registerkarte Issues von BIMcollab ZOOM sichtbar sind, können automatisch aktualisiert werden, entsprechend dem Status der Konflikte in den geladenen Modellen.
Die Aufforderung lautet UPDATE_ISSUES.

Skript

{
"type": "UPDATE_ISSUES",
"close_where_clashes_solved": true,
"reopen_previously_closed_issues": false,
"comment": "Updated with Nightshift"
}

Erläuterung

Jede Zeile in diesem Teil des Scripts steht für eine der Optionen im Fenster " Smart Issues aktualisieren". Beachten Sie, dass die Option "Nur ausgewählte Issues" nicht vorhanden ist, da beim Ausführen des Scripts keine Issues separat ausgewählt werden können. Die Aktion wird für alle sichtbaren Issues auf der Registerkarte "Issues" ausgeführt.
  1. "close_where_clashes_solved"
    Dies ist ein Ankreuzfeld, das bestimmt, ob Issues, bei denen alle Konflikte gelöst sind, mit der Aktualisierung geschlossen werden können. Geben Sie "true" ein, wenn das Feld aktiviert werden soll, oder "false", wenn es deaktiviert werden soll.
  2. "reopen_previously_closed_issues"
    Dies ist ein Ankreuzfeld, das bestimmt, ob geschlossene Issues, die noch aktive Konflikte enthalten, mit der Aktualisierung wieder geöffnet werden können. Geben Sie "true" ein, wenn das Feld aktiviert sein soll, oder "false", wenn es deaktiviert sein soll.
  3. "comment"
    Ersetzen Sie "Updated with Nightshift" durch einen beliebigen Kommentar, den Sie zu den aktualisierten Issues hinzufügen möchten
Wenn eine der Optionen fehlt, wird ein Standardwert hinzugefügt, wie in der folgenden Abbildung gezeigt.



Listen ausführen und teilen

Alle Listen, die sich auf der Registerkarte "Listen" unter "Geteilt" befinden, können gleichzeitig ausgeführt und geteilt werden, sodass die neuesten Informationen für alle Teammitglieder in BIMcollab Cloud verfügbar sind.  
Die Aufforderung für diese Aktion lautet RUN_AND_SHARE_LISTS

Skript

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

Erläuterung

Der Parameter "list_set_name" ist optional. Wenn Sie einen bestimmten Listensatz ausführen möchten, ersetzen Sie "List set 3" durch den Namen des Listensatzes, den Sie ausführen möchten. Wenn der Parameter nicht vorhanden ist, werden alle Listen in  "Geteilt" ausgeführt und geteilt.

Projekt synchronisieren

Sobald Issues aktualisiert und Listen ausgeführt und geteilt werden, ist es wichtig, das Projekt immer mit BIMcollab Cloud zu synchronisieren, damit die Änderungen gespeichert und für den Rest des Teams sichtbar werden.
Fügen Sie diese Aufforderung immer an das Ende des Skripts an.
Die Aufforderung lautet SYNCHRONIZE_PROJECT.

Skript

{
"type": "SYNCHRONIZE_PROJECT"
}

Nachverfolgung des Status der Aufgabe

Nachdem die Aufgabe ausgeführt wurde, können Sie in der Nightshift-Logdatei überprüfen, ob alle Aktionen erfolgreich durchgeführt wurden. Die Datei gibt Rückmeldung über den Ausführungsstatus aller Aktionen in den Skripten sowie über Fehlercodes, wenn etwas schief gelaufen ist.
Sie finden alle Logdateien unter C:\Benutzer\<BENUTZER>\AppData\Roaming\KUBUS\BIMcollab ZOOM\Nightshift.
Ersetzen Sie <BENUTZER> durch den Namen Ihres eigenen Nutzerprofils in Windows. 
Der Ordner "AppData" ist standardmäßig ein versteckter Ordner. Zeigen Sie die versteckten Ordner im Datei-Explorer an, um zum richtigen Speicherort zu navigieren.

    • Related Articles

    • Konfigurieren einer Aufgabe für ZOOM Nightshift im Windows Aufgabenplanung

      ZOOM Nightshift reduziert den Zeitaufwand für das Konfliktmanagement noch weiter, indem es sich wiederholende Aufgaben ausführt, während Sie nicht an Ihrem Computer sitzen. Es kann automatisch neue Modellversionen prüfen, Smart Issues und gemeinsame ...
    • Listen erstellen in BIMcollab ZOOM

      Listen werden verwendet, um Information aus IFC-Modellen zu extrahieren und diese Ergebnisse innerhalb eines Projektes zu teilen. BIMcollab ZOOM Nutzer mit einer aktiven Lizenz und ZOOM-Bearbeitungsrechte können Listen erstellen und bearbeiten. Eine ...
    • Anmerkungen erstellen

      In BIMcollab ZOOM können Sie Anmerkungen zu Ihrer 3D-Ansicht hinzufügen, um klare und verständliche Ansichten für Issues zu erstellen. Alle Anmerkungen, die beim Erstellen eines Issue sichtbar sind, werden im Issue gespeichert. Zeichnen Sie Pfeile, ...
    • Erstellen und Bearbeiten von Issues in BIMcollab ZOOM

      Mit BIMcollab ZOOM können Sie sich mit einem BIMcollab WebRaum verbinden und Issues direkt austauschen. Sie können sich mit einem bestehenden BIMcollab-Projekt verbinden oder ein eigenes neues Projekt erstellen .  Verbinden mit Ihrem Projekt aus ...
    • Die verschiedenen Arten von Aktionen für Smart Properties

      Mit Smart Properties können Sie entweder vorhandene Eigenschaften einer neuen Eigenschaft zuordnen oder einen neuen Eigenschaftswert für ein Element auf der Grundlage bestimmter Kriterien definieren. Um Smart Properties in BIMcollab ZOOM erstellen ...