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?
>

Reply via email to