Hi! I'm glad my project caught your interest. But, no, it isn't a "Ring <-> WebRTC bridge", more of a "Ring <-> Node.js bridge" really.
Despite Electron being a stripped down web browser, I am not using the browser's WebRTC API to provide Ring functionality. Instead, in the first few weeks, I wrote a Node.js wrapper over the actual C++ Ring Daemon. This wrapper was not a WebRTC (or any network protocol) based one, it is a Node Native Addon [1]. These Native Addons can be imported and used in any Node.js projects (which Electron apps are). This Node.js module *is* generally useful (use it in any Node.js project as you like) and not at all focused on a trendy, perhaps transient toolkit. I've tried to keep the Node.js wrapper easily reusable and with as little coupling as I can (of course, it is a work-in-progress). The reason we're focusing on an Electron client is the ease and speed of development it will provide to anyone contributing. Right now, when the Ring team wants to roll out an update they have to implement it for each platform's client (Gnome, OSX, Windows etc.) separately. This has even lead to some clients being left behind in features at times. A unified Electron client that runs on all platforms will make better use of the developer's time. A very obvious example is that writing UI in HTML/CSS etc is much more faster and easier than in, say, Qt. That time can be spent elsewhere. I hope that clarifies my project. [1] https://nodejs.org/api/addons.html On Mon, Jul 24, 2017 at 2:57 PM, bill-auger <[email protected]> wrote: > On Mon, Jul 24, 2017 at 08:31:02AM +0500, Asad Salman wrote: > > I have also started working on Ring's Electron client > > to be clear - when you say "electron based ring client" - more plainly > viewed, this is actually a host for and interface to what is more generally > a "ring<->webRTC bridge" - the GUI interface to me is the least interesting > aspect of this idea > > as any electron "app" is really just a striped-down web browser, i suspect > you are focussing too narrowly on that one trendy toolkit and possibly > missing the opportunity to make something generally useful - i.e. an > external "ring<->webRTC bridge" plugin that could be utilized by any web > browser - that would be a very interesting project > > if the ring compatibity layer was integrated directly into the electron > code i dont see how that would offer anything notable that the standalone > ring client does not already provide > > could you describe something that the electron client could do that the > standalone ring client does not - or any compelling reason why a user would > prefer it? >
