Naar de hoofdinhoud

Maak een JSON-script voor Zoom Nightshift

Meer dan 4 maanden geleden bijgewerkt

Let op: Dit artikel is een AI-gegenereerde vertaling.

Zoom Nightshift automatiseert acties in Zoom met behulp van JSON-scriptbestanden in combinatie met de Windows Taakplanner.

Met Nightshift kun je de volgende acties in BIMcollab automatiseren:

  • Modellen openen / Toevoegen aan project

  • Verbinden met het project

  • Issues filteren

  • Issues bijwerken

  • Alle Lists uitvoeren en delen

  • Project synchroniseren

In dit artikel beschrijven we hoe je een script maakt om te draaien in Zoom Nightshift.

Voor meer informatie over het instellen van een taak in de Windows Taakplanner, raadpleeg het artikel Configureer een taak voor Zoom Nightshift in de Windows Taakplanner.

📝 Opmerking: Een JSON-script kan worden ingesteld in elke JSON-scripteditor. Je vindt een voorbeeldscript als bijlage bij dit artikel om je op weg te helpen.

Het script begint met de titel van het script en optioneel de versie, gevolgd door de acties die in BIMcollab moeten worden uitgevoerd wanneer het script wordt uitgevoerd.

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


De verschillende acties die aan het script kunnen worden toegevoegd, zodat BIMcollab deze tijdens Nightshift kan uitvoeren, worden in de rest van dit artikel uitgelegd.

Modellen openen / Toevoegen aan project

Het eerste wat je in Nightshift wilt doen, is een set modellen openen waarop de rest van de acties kunnen worden uitgevoerd. Hiervoor zijn er twee verschillende mogelijke prompts:

  • OPEN_MODELS: voegt een model toe aan de Navigator en laadt het, en sluit alle eerder geladen modellen

  • ADD_TO_PROJECT: voegt een model toe aan de Navigator en laadt het, zonder modellen te sluiten die al in de Navigator aanwezig zijn

📝 Opmerking: Wanneer je verbinding maakt met een project waar een Projectmap actief is, worden alle modellen in de projectmap automatisch geladen, ongeacht hun laadstatus in je project. Er is geen extra invoer in het script nodig om deze modellen te openen.
Als je extra modellen aan het project wilt toevoegen die niet in de projectmap staan, gebruik dan de ADD_TO_PROJECT prompt.


Script

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


Uitleg

Vervang "C:/Users/userone/Desktop/1.ifc", enz., door de paden naar de modellen die je wilt openen, gescheiden door komma's.

⚠️ Let op: Gebruik altijd schuine strepen "/" in de paddefinitie, geen backslashes.


Verbinden met het project

Om een update van Smart Issues uit te voeren en Lists te delen, moet je verbonden zijn met een project op BIMcollab.

De prompt hiervoor is CONNECT_TO_PROJECT

Script

{
"type": "CONNECT_TO_PROJECT",
"space_name": "example.bimcollab.com",
"project_name": "Mijn BIMcollab project"
}


Uitleg

  • Vervang "example.bimcollab.com" door de URL van de space waarmee je verbinding wilt maken.

  • Vervang "Mijn BIMcollab project" door de naam van het project waarmee je verbinding wilt maken. Let op de juiste spelling van de naam en de URL.

⚠️ Let op: Het is belangrijk op te merken dat het project waarmee je verbinding wilt maken deel uitmaakt van de recente projectenlijst in BIMcollab en dat je inloggegevens zijn opgeslagen in BIMcollab. Dit kan worden bereikt door het selectievakje 'Onthoud mij' aan te vinken wanneer je handmatig verbinding maakt met het project.


Zorg er ook voor dat het formaat van de "space_name" instelling precies overeenkomt met het formaat waarin de spacenaam is ingevoerd bij het verbinden met het project.

Als je bijvoorbeeld https://example.bimcollab.com/ of example.bimcollab.com, hebt ingevoerd, moet dit exact overeenkomen in het script.




Issues filteren

Zodra je verbonden bent met een project, worden alle issues die voor jou zichtbaar zijn in het project geladen in BIMcollab.

In de volgende stap kunnen alle Smart Issues die deel uitmaken van deze lijst automatisch worden bijgewerkt. Om alleen een selectie van issues van jouw keuze bij te werken, stel je eerst de issuefilter in.

De prompt is FILTER_ISSUES.

Als deze prompt wordt weggelaten uit het script, wordt het laatste actieve filter gebruikt.


Script

{
"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": "[email protected]",
"deadline": "01-01-2021",
"created_by_user_email": "[email protected]",
"custom1": "Value 1",
"custom2": "Value 2"
}


Uitleg

Hier zijn enkele zaken om rekening mee te houden voor dit deel van het script:

  1. Wanneer deze prompt aan het script wordt toegevoegd, wordt het issuefilter in BIMcollab eerst teruggezet naar het standaardfilter en vervolgens aangepast volgens de waarden in het script.

  2. Nightshift gaat uit van standaardinstellingen voor parameters waar mogelijk, dus je hoeft alleen wijzigingen op te geven die afwijken van de standaardinstellingen. Alle parameterregels in dit deel van het script, behalve "type": "FILTER_ISSUES" (verplichte actiedefinitie) en de "priority", kunnen worden weggelaten uit het script. Als bijvoorbeeld de parameter "label" wordt weggelaten, zal Nightshift die parameterinstelling op "All" houden.

  3. Let op de spelling van de ingevoerde waarden. Deze moeten exact hetzelfde zijn als in het project.

💡 Tip: Open het Issuefiltervenster in BIMcollab naast de JSON-editor om typefouten in het script te voorkomen.

Alle regels in dit deel van het script vertegenwoordigen een van de eigenschappen in het issuefilter:

  • "filter_type"
    Vervang "Issue" door het type dat je wilt filteren. De standaardwaarde is "All" (of de overeenkomstige waarde in de taal van je project).

  • "area"
    Vervang "Model" door het gebied dat je wilt filteren. De standaardwaarde is "All" (of de overeenkomstige waarde in de taal van je project).

  • "milestone"
    Vervang "Design phase" door de milestone die je wilt filteren. De standaardwaarde is "All" (of de overeenkomstige waarde in de taal van je project).

  • "label"
    Vervang "Architecture" door het label dat je wilt filteren. De standaardwaarde is "All" (of de overeenkomstige waarde in de taal van je project).

  • "priority"
    Vervang "Normal" door de prioriteit die je wilt filteren. De standaardwaarde is "All" (of de overeenkomstige waarde in de taal van je project).

  • "show_active"
    Dit is een selectievakje dat bepaalt of de actieve issues van het project moeten worden weergegeven. Voer 'true' in als het selectievakje moet worden ingeschakeld of 'false' als het moet worden uitgeschakeld. De standaardwaarde is true.

  • "show_resolved"
    Dit is een selectievakje dat bepaalt of de opgeloste issues van het project moeten worden weergegeven. Voer 'true' in als het selectievakje moet worden ingeschakeld of 'false' als het moet worden uitgeschakeld. De standaardwaarde is true.

  • "show_closed"
    Dit is een selectievakje dat bepaalt of de gesloten issues van het project moeten worden weergegeven. Voer 'true' in als het selectievakje moet worden ingeschakeld of 'false' als het moet worden uitgeschakeld. De standaardwaarde is false.

  • "hide_invisible"
    Dit is een selectievakje dat bepaalt of issues die niet zichtbaar zijn voor alle teamleden moeten worden verborgen. Voer 'true' in als het selectievakje moet worden ingeschakeld of 'false' als het moet worden uitgeschakeld. De standaardwaarde is false.

  • "show_to_approve"
    Dit is een selectievakje dat bepaalt of de issues die je moet goedkeuren moeten worden weergegeven. Voer 'true' in als het selectievakje moet worden ingeschakeld of 'false' als het moet worden uitgeschakeld. De standaardwaarde is false.

  • "assigned_to_user_email"
    Vervang "[email protected]" door het e-mailadres van de toegewezen gebruiker, niet alleen hun naam. De standaardwaarde is "" (issues toegewezen aan alle gebruikers worden weergegeven).

  • "deadline"
    Vervang "01-01-2021" door de deadline waarop je wilt filteren, in het formaat dd-mm-jjjj. De standaardwaarde is "" (er wordt geen rekening gehouden met een deadline).

  • "created_by_user_email"
    Vervang "[email protected]" door het e-mailadres van de maker, niet alleen hun naam. De standaardwaarde is "" (issues gemaakt door alle gebruikers worden weergegeven).

  • "custom1"
    Vervang "Value 1" door de waarde van het Custom List veld 1 die je wilt filteren. De scriptregel moet altijd beginnen met "custom1", niet met de daadwerkelijke naam van het Custom field. De standaardwaarde is "" (Alle waarden voor dit custom field worden weergegeven).

  • "custom2"
    Vervang "Value 2" door de waarde van het Custom List veld 2 die je wilt filteren. De scriptregel moet altijd beginnen met "custom2", niet met de daadwerkelijke naam van het Custom field. De standaardwaarde is "" (Alle waarden voor dit custom field worden weergegeven).

⚠️ Let op: Als een van de invoerwaarden van het filter onjuist is, wordt het script niet verder uitgevoerd.


Update issues

Alle Smart Issues die zichtbaar zijn in het Issues-tabblad van BIMcollab kunnen automatisch worden bijgewerkt volgens de status van de clashes in de geladen modellen.

De prompt is UPDATE_ISSUES.

Script

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


Uitleg

Elke regel in dit deel van het script vertegenwoordigt een van de opties in het 'Update Smart Issues'-venster. Merk op dat 'Selected issues only' niet aanwezig is, omdat er geen issues afzonderlijk kunnen worden geselecteerd tijdens het uitvoeren van het script. De actie wordt uitgevoerd op alle zichtbare issues in het issues-tabblad.

  • "close_where_clashes_solved"
    Dit is een selectievakje dat bepaalt of issues waarbij alle clashes zijn opgelost, kunnen worden gesloten met de update. Voer 'true' in als het selectievakje moet worden ingeschakeld of 'false' als het moet worden uitgeschakeld

  • "reopen_previously_closed_issues"
    Dit is een selectievakje dat bepaalt of gesloten issues die nog actieve clashes bevatten, opnieuw kunnen worden geopend met de update. Voer 'true' in als het selectievakje moet worden ingeschakeld of 'false' als het moet worden uitgeschakeld

  • "comment"
    Vervang "Updated with Nightshift" door een opmerking die je wilt toevoegen aan de bijgewerkte issues

Als een van de opties ontbreekt, wordt een standaardwaarde toegevoegd, zoals weergegeven in de onderstaande afbeelding.


Lists uitvoeren en delen

Alle Lists die zich in 'Gedeeld' bevinden in het Lists-tabblad kunnen tegelijkertijd worden uitgevoerd en gedeeld, zodat de meest recente informatie beschikbaar is voor alle teamleden in BIMcollab.

De prompt voor deze actie is RUN_AND_SHARE_LISTS


Script

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


Uitleg

De instelling "list_set_name" is optioneel. Als je een specifieke list set wilt uitvoeren, vervang dan "List set 3" door de naam van de list set die je wilt uitvoeren. Als de instelling niet aanwezig is, worden alle Lists in 'Gedeeld' uitgevoerd en gedeeld.


Project synchroniseren

Zodra Issues zijn bijgewerkt en Lists zijn uitgevoerd en gedeeld, is het belangrijk om altijd het project te synchroniseren met BIMcollab, zodat de wijzigingen worden opgeslagen en zichtbaar zijn voor de rest van het team.

Voeg deze prompt altijd toe aan het einde van het script.

De prompt is SYNCHRONIZE_PROJECT.


Script

{
"type": "SYNCHRONIZE_PROJECT"
}


Volg de status van de taak op

Zodra de taak is uitgevoerd, kun je controleren of alle acties succesvol zijn uitgevoerd in het Nightshift-logbestand. Het bestand geeft feedback over de uitvoeringsstatus van alle acties in de scripts en foutcodes als er iets misging.

Je kunt alle logbestanden vinden op C:\Users\\AppData\Roaming\KUBUS\BIMcollab Zoom\Nightshift.


Vervang met de naam van je eigen gebruikersprofiel in Windows.

De AppData-map is standaard een verborgen map. Toon de verborgen mappen in de Verkenner om naar de juiste locatie te navigeren.

Was dit een antwoord op uw vraag?