Fetching latest commit…
Cannot retrieve the latest commit at this time.
HOK Mission Control .NET
The .NET side of Mission Control and how it integrates with Revit. It contains multiple libraries:
- HOK.MissionControl.dll - main library with all events handled, IUpdaters as well dockable panels created.
- HOK.MissionControl.Core.dll - core server interaction library. Contains all methods for sending and getting data from MongoDB
- HOK.MissionControl.FamilyPublish.dll - External Command for publishing Family information to Health Monitor part of Mission Control.
- HOK.MissionControl.LinksManager.dll - External Command for managing links, imports and styles.
- HOK.MissionControl.StylesManager.dll - External Command for managing styles.
- HOK.MissionControl.GroupsManager.dll - External Command for managing groups.
- Added new schema and method for publishing User name and Machine name. This will be used by the Zombie Logs to tie machine names to users using them.
- Changed the schema and functionality around Models and Worksets stats. They are no longer stored in a single document tied to a single central path, and instead are stored as individual docs that each has a central path property.
- Updates and fixes to Groups Manager functionality. There was a small bug in there that was fixed and few new tools that were requested by Dragos from LON that were added.
- Added File Path publishing. This adds new schema for a FilePathItem that stores central file path to a current model in a MongoDB. That makes creating Configurations via the web interface a lot easier since users don't have to open the files.
- Fixes a small bug for the dockable panel where the quick access buttons were not working. Since we moved all tools from Beta to HOK tab, their paths for command tools had to change as well.
- Update to 2019.
- Upgrade from BETA to full HOK plugin that is distributed to all Revit users.
- Added Styles Manager to Mission Control.
- Added Styles Manager quick access to Communicator tab.
- Other changes to Mission Control to accomodate this new plugin.
- Fix to Workset item counts getting over-reported. Lots of sketch planes being created on these worksets for no reason.
- Added Groups Manager to Mission Control.
- Added Groups Manager quick access to Communicator tab.
- Other changes to Mission Control to accomodate this new plugin.
- Added username conversion to Groups publishing. It will now convert emails into usernames.
- Added export functionality for Groups. That includes data publishing as well health report summary tab.
- Major data base refactor.
- All database calls were moved to be on background threads. This allows us to open the model without waiting for DB to accept all of our requests. It also moves all data posting to DocumentOpened and DocumentSynched events rather then on DocumentClosing.
- Implemented additional user overrides for family names and styles.
- Implemented a method for closing all tasks windows when Revit document is closed.
- Implemented a method for closing Socket channel when Revit document is closed so that we don't subscribe to it multipe times.
- MC buttons on Revit ribbon will be now disabled unless there was a successful connection to MC.
- Data can now be posted to MC right away. There is no need to restart Revit anymore (that still needs to be addressed for tasks).
- Bug fixes to Family publish where data about in place families was not published.
- Many more....
- Fixed a bug in how Model Size was being obtained so that BIM 360 files are also covered here. It uses cached file size which is not always 100% accurate but it's good for monitoring changes.
- Added support for BIM 360 files so that they can be added to Mission Control.
- Use asynch methods to publish plug-in info. That speeds up UI display, and finishes publishing in the background.
- As Mark reported we were not storing date and time in MongoDB using UTC time, so depending on user location some dates might be all over the place. This fixes that issue making sure all timestamps are always in UTC.
- Converted all Health Report publish methods to be executed at startup and are now using new Thread(). This should speed things up and free up post processing when model is being closed. This will also prevent any data being published to DB that was not saved. We are no longer publishing anything onDocumentClosing()
- Removed data that was being published about Session Logs etc. It was not being used by Mission Control and was clogging up the pipeline for no reason. It should speed things up a little.
- Adds info about views to health report dimension segments
- Fixes a bug where dimensions that had no segments were skipped.
- Adds user overrides from configuration to dimension styles overrides
- Added ability to use user overrides stored in updaters to retrieve all strings required for family name checks.
- Added a fix to dimension class wrappers that were failing due to value being stored as string originally and later changed to be double. These are potentially API breaking changes.
- Added fix to dictionaries storing configurations to use case insensitive key lookup since all paths are now stored as lowere case.
- Fix to Family Task window and how text was wrappinh.
- Small easthetic upgrades to improve spacing.
- Fixed bug where comments were getting assigned value from the message.
- Small bug fixes to Dimension Styles and how units are converted.
- Adds Styles to Health Report. That includes updates to Communicator tool to get styles graphics up on the dockable window, as well as new methods to collect and publish Styles info from the model.
- Adds Status Reported tool. It's a small WPF utility window that pops up a 100 X 50 px message bubble in the bottom/right corner of the screen. It automatically dissapears after 5s. For now it's reporting status of the Styles getting posted to DB, but later it can be used for other purposes.
- Adds ability to post styles Async from another thread. To do that we had to start a new thread, and to integrate Status Reporter there was an extension added to External Event Handler for Revit.
- Fixed small bug in the Health Report data collection where it was getting the wrong data set for Model Stats.
- Fixed a bug where central file path for health records and sheets was not getting published with lower case. That caused issues with it not getting properly recognized on server side.
- Enhanced Website Link Tool to navigate to project if possible, rather than always navigating to home page.
- Fixed the issue with DTM where DTM Tool would show a warning on Synch to Central warning users of modifying View Templates.
- Remove obsolete PostToMongo class.
- Add user info to data posted for model open times, model synch times, session info etc.
- Fix to a bug in Server Utilities where file path was not generated properly. It led to wrong file being returned from DB.
- Actually connected and release Family Tasks.
- Also added Sheet Tasks and Sheet management tool.
- Offloaded all tasks related stuff to another thread and integrated with Socket.io.
- New Button on the ribbon linking back to Mission Control website.
- Bunch of bug fixes.
- Added Tasks to Communicator Tab.
- Messaging integration for Tasks form and MongoDB using Sockets.IO.
- New class decorators for serialization and descerialization of MongoDB data.
- Addins now publish user location.
- Cancel button for Family Publish.
- More robust handling of failures while exporting Families.
- Family export logic for updating rather than constantly adding new items. Should improve server response time with smaller paylods.
- Fix to Communicator button not always activating the docable panel.
- Added Communicator icon that changes colors to indicate Communicator state.
- Fix to Mission Control Single Session. It was replaced with Link Unload Monitor to better describe the original intent of preventing
users from unloading links. It hijacks Unload for All Users method in Revit, replacing it with our own message.
- Fix to DTM Tool where it was needlessly popping up on Synch and Reload events. Fix is provided by hijacking of Reload Latest command
with our own reload functionality that first disables DTM Tool. Similar apprach is implemented for Synch functionality.
- Fix to DTM Tool that was preventing users from creating new Grids, Links, Levels etc. and editing them in the same session of Revit.
Instead it will now allow users to create them and edit, only upon closing and reopening will they be added to "monitored" elements list
and users will be stopped from messing with it.
- Addition of Communicator tool, that displays a summary of Health Report in a dockable panel.
- Family Publish tool adds additional properties to its export. Things such as number of reference planes, voids, extrusions, etc.
- Other small fixes and refactors.
- Update to 2018
- Added Logging functionality
- Major code cleanup and refactor