Thanks to @BIM4GIB we have a script to automatically download the latest Uniclass 2015 tables from the NBS website.  You basically download and unzip, then run the script and you get a Uniclass2015 dataset downloaded.  Awesome stuff, nice work Rene Pellicer!

From the readme:

1. Copy the folder “Uniclass2015-GetLatest” from the ZIP file to your C:\ (This is critical or the script will fail)
2. Double-click on the “Uniclass2015-GetLatest” shortcut. A PowerShell icon will appear in your taskbar. Click ‘Open’ on the dialog box.
You might have to type “Y” (without the quotes) in PowerShell to confirm you want to run the script, depending on your security settings.
3. Wait approx. 50 seconds. Excel will open and close several times. That is a feature.
4. After the script has run, a dialog box will appear. Click OK
5. You should now see a new spreadsheet called “Uniclass2015-AllTables.xlsx” in C:\Uniclass2015-GetLatest\
6. Classification Manager…

Placing the folder in C drive:

 

Script running:

Download script here

or Uniclass2015-GetLatest

From https://twitter.com/BIM4GIB/status/1040552536988635137?s=19

 

I have developed a working BIM360 to on-premises backup mechanism. There were a few different ways to go…

 

I initially considered:

  • Hacking Windows Explorer to touch the files in the BIM 360 node and try and trigger the BIM360 Docs download and copy to local PC or network location
  • Developing a Forge app that essentially pulls the desired models out of the BIM 360 cloud to desired location?

In the end, I decided to use the Revit API (Dynamo and Python), along with VirtualBuiltApp, to essentially reverse engineer a folder structure from the local CollaborationCache folder. These ideas are hinted at here.

 

In simple terms, the BIM 360 Docs on-premises backup workflow is:

  1. Create a super federated BIM 360 model (with all other BIM 360 models linked into it)
  2. A Dynamo script reloads all links in order to cache them locally
  3. The same script interrogates, then determines the target file name and folder from VirtualBuiltApp
  4. Dynamo then copies the files into their ‘backup’ location on the local network

 

Some more detail is presented below:

 

A) Cache Cleaner CMD Script (may not really be necessary, as the ‘reload’ should overwrite superseded cache anyway):

Kill Revit if Open… be careful of below steps, particularly if Revit has crashed recently. You might need these local copies 🙂

cd "%LOCALAPPDATA%\Autodesk\Revit\Autodesk Revit 2018"
cd CollaborationCache
rmdir oldCache
mkdir oldCache
for /d %i in (*) do move "%~i" oldCache

 

B) Manual steps to setup Revit model environment to run the script:

  1. Open Revit
  2. Open Federated BIM 360 file (worksets closed)
  3. Unload all links
  4. Open all Worksets

 

C) Dynamo Script:
Run Dynamo (Python) script that reloads and unloads all links (this collects .rvt into cache). Key Python commands to use are: RevitLinkType.Load() and RevitLinkType.Unload(None).

Potential Problems:

  • Coordination Monitor alert, no longer exists
  • Instance of link needs Coordination Review
  • “Some numerical data within the imported file was out of range. This numerical data has been truncated.”
  • “Geometry in the file … has extents greater than 20 miles (33km).”

Local cached Models appear into

%LOCALAPPDATA%\Autodesk\Revit\Autodesk Revit 2018\mainCacheFolder\hostModelIdFolder\LinkedModels\*.rvt

 

D) Dynamo Script continues to:
Rename and copy to desired target location. How do we determine this?

Using proprietary VirtualBuiltApp schema:

  1. Use known directory data along with known JSON data for the BIM 360 files (harvested previously by our proprietary systems)
  2. Build list of target paths
  3. Run copy from Dynamo to copy to target network directory

Part of the script:

 

Note: you can actually browse some BIM 360 Docs data in a .sqlite3 file located in path shown below. You can use DB Browser for SQLite as a viewer.

Update: It was pointed out to me by someone on the inside that the workflow I describe below essentially amounts to a back-channel unsupported and in fact inappropriate use of BIM 360 Docs. I was surprised at this, as I had essentially obtained this information from the Autodesk forums. What is wrong with the steps below? The answer is apparently this: A paying BIM 360 Docs customer is not supposed to invite a free user into their projects. This is apparently part of the terms of use for BIM 360 Docs customers. I was not aware of this, and in fact I’m unsure where to find it in the documentation.

Just to be clear, while the steps below *work* at this time, it apparently is an unsupported and inappropriate workaround and there could be risks (financial or otherwise) for BIM 360 Docs customers who invite free users into their projects. You should only invite:

  • BIM 360 Docs users for which you have paid for and applied an entitlement
  • BIM 360 Design (C4R) users who have purchased their own entitlement

I expect this workaround may eventually be disabled by Autodesk? You can view if you have exceeded your purchased package of BIM 360 Docs entitlements in the relevant Autodesk Manage pages. For example, it might show 16 of 10 licenses used in red? This is where I think there is potential for Autodesk to back charge users who abuse this current state of affairs.

My advice: check directly with Autodesk about who you can and cannot share your BIM 360 projects with…and proceed accordingly.

Situation:

You are a paying BIM 360 Docs user and would like to invite a non-paying user to collaborate inside a BIM 360 Docs workspace. Perhaps you just want them to be able to upload and download files, but not Collaborate in Revit…

Solution:

They need to create a free BIM 360 Docs account, and then get invited to your workspace.

(see above update)

Steps:

Non Paying User –

  1. Go to Autodesk BIM 360 Docs – Get BIM 360 Docs (Free Forever)
  2. Create a BIM 360 Account and Autodesk login if necessary (using email)

Paying User / BIM 360 host admin –

  1. Go to your Account Admin
  2. Add the User and Company (using email) (see above update)
  3. Go to Project Admin
  4. Add the User
  5. Go to Document Management
  6. Share a Folder to the User or their Company

Access and Upload Documents for Free User –

  1. Login to BIM 360 BIM 360 Docs Sign In
  2. Click on Change Account
  3. Select the workspace from the Paying User
  4. Access the Folder that was Shared to you – you can now Upload and Download with a Free account

Thanks to this forum page for the idea.