How to do "Object Oriented Discussion" through Oneboxes?

(David Riordan) #1

This might be a terrible idea, entirely unimplementable, but wanted to run it by the community before trying it:

We’re working on a project at The New York Public Library around turning historical documents into large-scale public data sets. Unfortunately a lot of these documents are confusing and require community support. We’d like to use Discourse as the talk/support platform for folks when they’re talking about particular documents and building a custom Onebox for it seems like a great way to bring the content into the discussion.

But what about bringing those discussions back into the other site? Would there be a relatively simple way to have a “reverse onebox”, so that if a link to one of those whitelisted assets is found in a post, the other server can be notified of what threads its in?

My initial TERRIBLE idea was giving each thread created from this other site a custom subcategory that corresponds to the ID in the other site, then when someone hits that asset in the other site, it asks for the feed from that custom subcategory. But that doesn’t feel right, is a bad user experience, and has the potential to overwhelm the subcategory system.

Seems like this is ripe for a plugin, but since this is my first time developing for Discourse would appreciate any pointers.

(Jeff Atwood) #2

This is a good idea, are the documents public web URLs? Perhaps we could help build this onebox if so.

Hmm. I suspect this could be done via the API. Query all new topics (assuming older topics are already synced), and for those with a certain URL within the topic (first post only? All posts?) ping those URLs.

This could potentially be done with a webhook on save on the Discourse side.

Let us know how we can help, very interested in public projects like this.

(David Riordan) #3

Thanks Jeff - that’s really exciting! Having this framework for these kinds of projects interact with Discourse is something we’ve been thinking of for quite some time.

It feels like oEmbed is a pretty natural way to bring the content into the discussion but if there’s a richer way we can bring it in, then we’ll absolutely give it a try.

The particular effort is about turning our 1.5m theatre playbills into structured data; like IMDB for theatre history. The beta of the project is up at, but there’s a long-delayed and much scaled redesign coming, Along with a framework for producing these kinds of sites. We’d love it if there were a natura way for Discourse to plug into other efforts from this framework once it’s out.