Bulk File Uploader for ACC

Bulk File Uploader for ACC

Win64, English

Autodesk Consulting
This application can be a product level tool for users to batch uploading/downloading files. It is also extensible for those advanced developers to add/adjust functionalities.

General Usage Instructions

After installing the application, launch it using the desktop shortcut.

Next, enter your APS credentials (Client ID and Client Secret). You can generate these credentials by creating an APS application. The required steps are explained in the Overview Video. After creating the APS client details  in aps.autodesk.com, you must also configure the Client ID in ACC to access the hubs and projects. For configuration please refer to the same Overview Video for guidance on this configuration.

For the first time when we launch the Bulk File Manager it will pop-out with login detauls, please provide client-id and client secret to move further.

Once the setup is complete, you will be able to upload and download files from your ACC account.

For detailed, step-by-step instructions, please refer to the Overview Video

If you do not have a WA Advisory subscription, you can download the source code from https://github.com/autodesk-platform-services/aps-hubs-bulk-files-manager.git and follow the installation instructions in the repository to build and set up the tool manually.

Screenshots

Commands

Installation/Uninstallation

If you have a WA Advisory subscription, you can download the installer from the App Store and install it on your machine. After the installation is complete, watch the Oerview Video and setup your Own APS account. 

If you do not have a valid subscription, please follow the Installation Steps on this page to create your own installer. Use the provided documentation and videos to set up the installer and configure your accounts to connect to ACC for uploading and downloading files.

 

 

Additional Information

  • Upload Documents to BIM360 or ACC: The workflow is how to upload a local file to a folder of BIM 360 or ACC.
  • Download Documents from BIM360 or ACC: the workflow How to download a model from BIM 360 or ACC to local.
  • APS Tutorial of HubBrowser: tutorial on accessing models of BIM 360 or ACC and loading them in APS Viewer in the browser.
  • Electron .NET: development of desktop applications using web technologies such as the Chromium rendering engine and the Node.js runtime
  • Hangfire: Web monitoring UI which is implemented as an OWIN extension and can be hosted inside any application – ASP.NET, Console or Windows service.
  • Bogus: load databases, UI and apps with fake data for testing needs.
  • Fody: extensible library for weaving .NET assembly
  • Polly: .NET resilience library

Here are some recommended articles to go through:-

  • Knowledge of Data Management API of Autodesk® Platform Services (APS)
  • Knowledge of .NET Framework and WinForms in C#
  • Install Visual Studio (Windows version)
  • Install .NET 8 Runtime installer
  • Install Node.Js along with npm
  • Install Webview2 Evergreen Runtime
  • Create an Autodesk APS app to get developer credentials. Visit Autodesk Platform Sevices Portal, sign up for an account, and then create an app. For this new app, select the type of web application, as this application will support both 2-legged and 3-legged authentication. Next, input http://localhost:8083/code as the callback URL. Finally, take note of the client ID and client secret.
  • If you work with Autodesk® BIM 360® or Autodesk Construction Cloud® (ACC), you will also need an additional step to connect your APS app to the BIM 360 or ACC account. Follow the tutorial

Known Issues

Contact

Company Name: Autodesk Consulting

Author/Company Information

Autodesk Consulting

Support Information

Application context authentication (2-legged token) and user context authentication (3-legged token) are supported.

The users can download files from a single folder or multiple folders. It provides jobs for managers of the uploading/downloading and advanced features to track the traffic. 

There are two ways to communicate between the host and the UI:

  • REST calls
    • Standard ASP.net controllers may be used to send messages from the UI to the backend.
  • PostMessage
    • The UI is able to send messages to the backend using window.chrome.webview.postMessage(YOUR_MESSAGE_HERE). It is then processed by the WebMessageReceived() method in Bulk-Uploader-FrontEnd/Views/MainForm.cs.
    • The backend is able to respond using this.webView21.CoreWebView2.PostWebMessageAsString(YOUR_MESSAGE_HERE). It is then processed by the UI using window.chrome.webview.addEventListener('message', event=>{ alert(event.data) }) in Bulk-Uploader-FrontEnd/ClientApp/src/App.tsx.
    • This has been simplified on the front end with the useMessageListener(messagename) hook. 

Database

This application uses Entity Framework. If you make any changes to the data structures, you'll need to run the following command from the Bulk-Uploader-FrontEnd folder:

dotnet ef migrations add NameOfYourMigrationHere --project "..\ApsSettings.Data\ApsSettings.Data.csproj" 

Additional Notes

  • In debugging mode, the flower icon on the bottom right corner will show up. It is the console that tracks the logs of each HTTP traffic. 

Building

To build the application for a Windows machine, use dotnet publish -r win-x64 while in the root solution folder.

Version History

Version Number Version Description

1.0.0

1. Adapted the solution to support the ore version. 2. Fixed issues with the Forge Authentication API. 3. Disabled the automatic opening of the login page. 4. Revised the User Document and Developer Guide. 5. Developed a token manager that attempts both 3LO and 2LO authentication methods. 6. Eliminated hardcoded endpoints in Utility Flows.
Go top