Coordinate > Issues

Meeting Mode

Runs a coordination meeting through the issues you choose, one at a time, going to each in the view; change status, record decisions, reassign and set due dates as you go, then write the minutes as HTML and Excel.

Tab and panelCoordinate > Issues
KindButton
Live whenA model is open

Status

Launched Ran inside Navisworks at least once with no error logged; nobody checked the result yet.

Recorded on 2026-10-05. The evidence is a line in a pyNavis log.

The public ask

No public source is on record for this tool.

Events it listens to

None. It runs only when you click it.

Files

Paths are relative to the Playground.extension folder.

  • Coordinate.tab/Issues.panel/Meeting_Mode.pushbutton/bundle.yaml
  • Coordinate.tab/Issues.panel/Meeting_Mode.pushbutton/icon.dark.png
  • Coordinate.tab/Issues.panel/Meeting_Mode.pushbutton/icon.png
  • Coordinate.tab/Issues.panel/Meeting_Mode.pushbutton/icon.small.dark.png
  • Coordinate.tab/Issues.panel/Meeting_Mode.pushbutton/icon.small.png
  • Coordinate.tab/Issues.panel/Meeting_Mode.pushbutton/script.py

Install

  1. Only this tool. In Navisworks, click pyNavis > Playground, search for Meeting Mode, tick it and click Install.
  2. The whole extension. Download Playground.extension.zip, unzip it, put the Playground.extension folder in %APPDATA%\pyNavis\extensions\, and click pyNavis > Reload. Meeting Mode is on the Coordinate tab, Issues panel.

You need pyNavis 1.3.0 or later.

Tried it? Tell us whether it worked or not. That report is what moves a tool up the status ladder.

Report

Source

The tool's own files, word for word as published in pynavis/Playground. Paths are relative to the Playground.extension folder.

script.py

The script that runs on a click.

Coordinate.tab/Issues.panel/Meeting_Mode.pushbutton/script.py View on GitHub
# -*- coding: utf-8 -*-
"""Runs a coordination meeting through the chosen issues, one at a time, and writes the minutes."""
from pynavis import script, toast

from namo import config, issue_meeting, issueapi, issuestore, ui


def run():
    if ui.is_runner():
        toast.info('Meeting mode needs the Navisworks window', 'It cannot run under pynavis run.')
        return
    if issue_meeting.activate_open():
        toast.info('A meeting is already running', 'End it in the Meeting mode window before '
                   'starting another.')
        return
    doc = issuestore.active_doc()
    if doc is None or not issueapi.has_model(doc):
        toast.info('No model open', 'Open the model the issues belong to, then start the meeting.')
        return
    store = issuestore.for_doc(doc)
    if not store.saved:
        toast.info('Save the model first', issuestore.NOT_SAVED)
        return
    rows = store.list()
    if not rows:
        toast.info('No issues yet', 'Raise issues in the Issues panel, with Issue Stamps or Clash '
                   'to Issues, then run the meeting.')
        return
    me = script.bind()
    saved = me.get_config(dict(issue_meeting.DEFAULTS))
    answers = ui.form('Meeting mode', issue_meeting.filter_fields(rows, saved),
                      intro='Which issues go on the agenda?', ok='Start meeting', width=520)
    if answers is None:
        return
    saved.update(answers)
    me.save_config(saved)
    chosen = issue_meeting.choose(rows, answers)
    if not chosen:
        toast.info('No issues match', 'Tick more statuses, trades or priorities, or allow any due date.')
        return
    issue_meeting.open_window([i['id'] for i in chosen], store, doc, me, script.get_logger(),
                              follow=bool(answers['follow']), user=config.user_name())


run()

Library modules this tool uses

From the shared namo library, which installs with every tool. Each name opens the module on GitHub.

  • namo.configPlayground-wide settings: one JSON file shared by every Playground tool.
  • namo.issue_meetingMeeting Mode: walk a coordination meeting through the chosen issues and write minutes.
  • namo.issueapiThe Navisworks half of the issue tools: capture a view as issue material, go back to it, draw issue pins, pick stamp points, and find BCF components in the model.
  • namo.issuestoreWhere Playground issues live: one record per issue, per model file, in the data mode namo.config chooses, plus the session events every issue view listens to.
  • namo.uiWPF building blocks for Playground tools, themed from the pyNavis design system.

bundle.yaml

The bundle contract: the keys pyNavis reads for this tool.

Coordinate.tab/Issues.panel/Meeting_Mode.pushbutton/bundle.yaml View on GitHub
title: Meeting\nMode
tooltip: Runs a coordination meeting through the issues you choose, one at a time, going to each in the view; change status, record decisions, reassign and set due dates as you go, then write the minutes as HTML and Excel.
context: doc