-
Notifications
You must be signed in to change notification settings - Fork 12
Description
One cool, experimental feature msngr.js had some time ago was support for multiple protocols. It could be hooked up to standard AJAX calls for long polling, it would work with websockets and it could work with namedpipes. The support was barely there, supremely buggy and had poor support build-wise (you don't need namedpipes support if you're, say, running msngr.js in a web browser).
Now that we're working to modernize msngr.js in #71, #72, and #73 I'd like to explore this again because when it worked it was incredible. You'd have a single, let's say save message for an entity and it would update all UI listeners for this entity update and it would go to the backend for saving. It was really cool to see!
Anyway, let's fill in some task ideas here that can be refined later.
- Create an API that allows first and third party protocols to be supported. Previously this worked likely middleware where you simply plugged in a method that provided the support for crossing protocols. We should do something similar here while allowing the ability to restrict protocols on emit.
- Work with the existing code base and the output of Modernize the build system #72 to figure out how to include first party protocol support along with third party. Do we bundle these in? If they're super small maybe but likely will want additional
msngr-*packages that plug the capability in.