I am building an instant chat module for the orchard project I am working on. I would like to use SignalR to power the chat, however I am running into difficulties with this:
<script src="@Url.Content("~/signalr/hubs")" type="text/javascript"></script>
I receive 404 error with everything I try. I have RAMFAR in webconfig, I have tried rewritting the url on IIS. I am hoping it is something horribly simple that my addled brain cant quite see. I don’t even know for sure that SignalR works with Orchard, I suspected there would be some difficulties though
It’s much more tricky than @mdm described… SignalR uses a custom HttpModule that handles hubs. Unfortunately, due to dynamic loading of module assemblies there is no way to wire that HttpModule from a module without altering Orchard core.
Fortunately, I managed to sort things out and made a live demo with Orchard and SignalR playing nice together! Making it work was quite tricky and involved dropping the HttpModule in favor of a custom route implementation. I’ll push the module to Orchard Gallery after doing some necessary cleanup and post an update here.
UPDATE: Module is nearly finished. There was a lot of changes in SignalR library since I started so needed to incorporate those. Also, there is one slight change to Orchard core (session handling) that I need to push before actually publishing the module.
UPDATE 2: SignalR uses Owin now so it’s much easier to wire everything up. Orchard module is available here. You can also grab the latest code from BitBucket.
Btw, I highly recommend using code from Orchard 1.x branch for SignalR development due to database transaction handling changes.