How to create cboden/rachet RPC implementation? - rpc

I'm learning websockets and just learned how to use sub/pub using cboden/ratchet example push integration as my server and autobahnjs for my browser. my question is does ratchet or autobahn supports rpc?
If you have any sources or examples it's highly appreciated. cheers!

Related

Signaling mechanism for webRTC using simpleWebRTC js library and backend in django

I am trying to build video conferencing web application where multiple people can join the call and there will be video/audio/data transmission. I researched a lot for this. What i understand is we can achieve this using webRTC protocol. I started doing research for js libraries and i came to know for simpleWebRTC. I want to develop with backend as a django. I tried to run sample demo code from https://www.sitepoint.com/webrtc-video-chat-application-simplewebrtc/. but i am not able to establish connection with socket.io which is simplewebRTC signaling sandbox server.
I tried with node express server as well, but still i got the same error:- net::ERR_FAILED. This error occured in simplewebrtc-with-adapter-js while making connection.
What would be the correct technologies to achieve this type of functionality?
Front-end webRTC libraries:- simplewebRTC/ EasyRTC/ Any else apis?
Signaling mechanism:- What and how can we use to connect with webRTC?
Backend:- Node js/Django?
I still confused with the signaling protocols/STUN/TURN servers as we have to define the servers by our self. simpleWebRTC is not providing that which we can use in production.
Any help would be much appreciated!
I just started a video calling and chat application as well. open-easyrtc, no problems so far, their demo just works after npm install.
As for signaling servers, since I just started I haven't concerned myself much about them but the most I can make out of it is it's used for exchanging information like video metadata, network information, etc. open-easyrtc comes with public STUN and TURN servers, not sure about the limitation especially if you're going to have a lot of users.
It's also possible to deploy your own, I'm looking at learning more about coturn
once I finished developing my application.
You can use simple-peer, a simple library for webrtc. Here is an example project with multiple users project, DEMO.

Python graphql websocket subscription client

I'm starting a test project where I'm required to validate graphql websocket subscription data from a python test framework. Typically I'll just write my own libraries for interacting with the various servers, but I cannot find a reasonable description of the protocol in this case.
My question(s) is as follows:
Is there a reasonable python library out there to function as a graphql subscription client?
[and|or] Is there some sort of RFC, or detailed protocol description so I can just write my own?
Sorry for the basic question in advance, My google-fu is weak this morning and while I've found several graphql python libraries, I've been struggling to find information on a reasonable client.
Thanks!
You can use the graphql-python/gql package, it supports the apollo and graphql-ws protocols.
I just wrote my own client using this document as a protocol description
And this Python library to retrieve the constants

Meteor OAuth2 Server

I need to make a Meteor website into an OAuth 2 server and I'm not finding a lot available. There are lots of OAuth clients:
https://atmospherejs.com/meteor/oauth
https://atmospherejs.com/meteor/oauth1
https://atmospherejs.com/meteor/oauth2
But few servers/providers.
https://atmospherejs.com/khanghoang/oauth2-provider - Basic, not fully functional
I can't tell is this provides server capabilities as the documentation is light:
https://atmospherejs.com/meteor/accounts-oauth
I'm considering converting thomseddon's node-oauth2-server over to a meteor package, but want to know if there is something else available:
https://github.com/thomseddon/node-oauth2-server
I work for Prime8Consulting and we just finished writing an oauh2 client/server package for meteor. It has lots of documentation and example applications that demonstrate how it works. https://github.com/prime-8-consulting/meteor-oauth2
We are excited to get feedback.

Node.js/SignalR Communication

I got a server running SignalR and another server runing Node.js. I would like these two servers to communicate using SignalR. Is this possible?
I'm thinking I can use the SignalR client javascript library to connect to the SignalR server from Node:js but I can't find any good examples of how to do this.
Well the answer to can you do this is ultimately "yes" because there is nothing proprietary about SignalR communication. It's just variations of HTTP or WebSockets with a custom handshake/message framing protocol for Hubs on top of that.
So the how is the question we'd need to answer. Out of the box SignalR provides a client side JavaScript library based on the jQuery plug-in architecture, but that won't help Node.js. Someone has started a Node.js implementation here on GitHub, but according to the ReadMe it only supports HTTP long polling today. I'm unaware of any other implementations at this time, but obviously you start with that one and fork it to add support for the other transports if you wanted.

Node.js & Memcache on Heroku ?

How do I use Memcache (on Heroku) from a Node.js service?
There is a Heroku article, explaining how to use Memcache from Ruby, Java and Python. I've asked this question on the Heroku mailing list with no results (my message seems to have been blocked or rejected).
MemJS looks like a good candidate.
MemJS is a pure Node.js client library for accessing the MemCachier service and other memcache servers. It uses the binary protocol and support SASL authentication.
You can follow the steps in the Heroku Ruby tutorial (http://devcenter.heroku.com/articles/memcache) to gain a basic understanding of how to interface with memcache on Heroku, but to do the same in node you should use the node-memcache library (https://github.com/elbart/node-memcache).
I hope this helps.
node-memcache will not work with any of the memcache providers on Heroku. In particular, the library uses the text protocol, rather than the binary protocol and doesn't support SASL authentication. MemJS does both (as Jacob pointed out)

Resources