I have posted many times over the past few years about Project Skyscraper, which then became Collaboration for Revit (C4R). Having used the cloud service in beta, I was keen to get it going on some live projects. Unfortunately, Collaboration for Revit was only available in the USA…

Until now, that is! Check out this press release for details on the global launch. Quote:
Released and available in North America only since December 7, 2014, Collaboration for Revit will be available for commercial global use as of January 7, 2016.  




Autodesk A360 Collaboration for Revit is a service that works with Revit software to connect project teams with centralized access to BIM project data in the cloud.  Image courtesy of Autodesk

I, for one, am very excited about this. I have been involved in at least one geographically distributed vanilla Revit Server setup, and I think that the necessity to have ‘my IT people talk to your IT people to set up a DMZ between our VPNs’ is a bit counter-productive. In these situations, the global availability of C4R will really shine. Now, firms will be able to spin up a C4R instance very quickly and get working together, on real projects and in real-time.

You can hear Ralph Bond interviewing Sylvia Knauer on the Autodesk AEC Channel Podcast here in this mp3.

Between this global launch of Collaboration for Revit, and the improvements in the Glue – Navisworks connection in 2016 products, my Federated Model Streamer concept is one step closer to reality 🙂

I’m pretty sure this is what Revit Skyscraper is going to look like when it gets released, and I’m guessing it will be called “Collaboration for Revit” or “Revit Collaboration” (sounds like an addin, yeah?). Check out the image:

Those features again:

  • Multi-firm concurrent authoring
  • No IT setup required
  • BIM directly accessible to other Cloud Services

I’m not breaking NDA as this was a mailout from CTC, and you can register for the webinar here.

The open house is getting more ‘open’ every day. Go here to join the project:
Enter Revit Skyscraper Open House Project

After joining and logging in, access the downloads section, download the ZIP file and run the EXE. You should be greeted with something like this as the Citrix hosted solution starts up:

Once you have joined and have access to Revit Skyscraper, please feel free to comment below and I can add you to a Sandbox Project I have set up, and also add you as a contact for chat. Have fun!

I recommend you join the project and read some of the early forum posts, particularly if you pondering issues of IP, who owns the model, permissions and the like.

I’m very interested in where Paul is heading with this:
The QR Code pictured below, when scanned, will pull up the website, triggering the data in it to be sent to Revit. Picture a QR Code with info on a HVAC Unit, you scan it and the data is passed to Revit for when it was installed or serviced.

Sending Data in a URL to Revit. Data can be parsed to up date parameters of object.

Sending Data in a URL to Revit. Data can be parsed to update parameters of object.

This project fits into the larger scope of connecting our desktop Revit content creation with actual site information and making all of this accessible to entire teams on the cloud.

Read the whole post:
Revit and RabbitMQ: Passing Data in to Revit from Outside Applications | Architecture and Planning

EDIT: Paul provided the code in the comments below:
I found the code for this example. It is not pretty, but should be very simple. There are two files: the Revit Plugin and the Website.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Autodesk.Revit.DB;
using Autodesk.Revit.DB.Architecture;
using Autodesk.Revit.UI;
using Autodesk.Revit.UI.Selection;
using Autodesk.Revit.ApplicationServices;
using Autodesk.Revit.Attributes;
using RabbitMQ.Client;

public class RevitRabbit : IExternalCommand
public Result Execute(
ExternalCommandData commandData,
ref string message,
ElementSet elements)

string msg = null;
var connectionFactory = new ConnectionFactory();
IConnection connection = connectionFactory.CreateConnection();
IModel channel = connection.CreateModel();

BasicGetResult result = channel.BasicGet(“hello”, true);
if (result != null)
msg = Encoding.UTF8.GetString(result.Body);
System.Windows.Forms.MessageBox.Show(msg, “Status”);

System.Windows.Forms.MessageBox.Show(“No Messages Waiting.”, “Status”);

return Result.Succeeded;

import cherrypy
import pika

class HelloWorld(object):
def index(self):

return “hi”
index.exposed = True

def paul(self,msg):
connection = pika.BlockingConnection(pika.ConnectionParameters(host=’localhost’))
channel = connection.channel()


return msg



My idea from 4 months ago:

So, maybe its not Glue… with the benefit of current knowledge, maybe its Project Skyscraper, or some combination of these. But the External Reference possibility starts to make some of these things truly achievable. Watch this space!

The post from The Building Coder, 1 July 2014:
The Building Coder: Referenced Files as a Service

My tweet: