Hey,
I'm Vidun, I would like to suggest an idea for Gsoc'14 and get feedback on
this if this is all possible.
The idea initially came up as a difficulty I faced when handling RTC(real
time communication) for web project to handle and push notifications,
alerts, messages etc. As from a general view point this can be easily
accomplished with long polling, which is resource intensive.
Some of the problems that developers face when implementing their own RTC
message pushing.
1. Most of the hosting companies do not support web-sockets. This is
troublesome for established companies to migrate host to support RTC.
2. Privacy issues.
3. Additional work load for developers. Developing web-socket apps is not
easy.
4. Would make it easier to screen/modify data on the fly using the server.
Use-Case:
This is the initial use-case I had in mind, although it may be possible to
take a different approach altogether based on some good suggestions from
the community.
Client:
This is the web application or mobile apps, although it could be even a
regular application I cannot think of an actual need for a regular app to
use this. The scope for this project on a client would involve writing the
libraries for RTC data from server using javascript.
Server:
The server can be used by a single company or to provide services to
multiple organisations. The server can hold admin and also general
subscribed users who are allowed to push data to clients. The server is RTC
enabled using web sockets.
System Sequence Diagram:
[image: Inline image 2]
There are sever third party organisations like pusher that provide a hosted
platform for Websocket, but it would be cool if there was an open approach
for hosting web socket server. This would mean more control and privacy.
Pusher Home <
http://pusher.com>.
It would be very nice if I could get some suggestions and feedback on if
this was all possible as a GSOC approach with fedora.
This draft is basic, I can work on a complete proposal once I get feedback
on whether this approach as a GSOC'14 idea with fedora is possible.
Regards,
Vidun.