Hi all,

I'm taking over the work started at
https://phab.enlightenment.org/D2985, please take a look at my last
comment https://phab.enlightenment.org/D2985#71145 for more details.

The branch is 
https://git.enlightenment.org/core/efl.git/log/?h=devs/barbieri/websocket
there you can see two examples of the API usage.

If you're not familiar with WebSocket, it's a bi-directional
message-based (NOT streaming!) protocol on top of HTTP, starts with a
GET request and requests a connection upgrade, then can use proxies,
TLS/SSL and authentication. It's used to avoid polling web-servers
with new HTTP requests for data, such as Stock Tickers, WebEditors and
so on. Compared to an older solution SSE (Server-Side Events), it
offers more efficient message framing and bi-directional
communication.

My branch builds on top of Efl.Net.Dialer.Http (our new HTTP client
based on CURL) and exposes a new API for the message-based primitives
of WebSockets. However, to play nice with other Efl.Io.Reader and
Efl.Io.Writer users, such as Efl.Io.Copier, you can ask
Efl.Net.Dialer.Websocket to operate in streaming mode, picking one of
Text or Binary messages as your channel. Then the traditional
"can_read"/"read()", "can_write"/"write()" will work.

Play with them and let me know what you think. In the phab comment you
can see how to create a nodejs websocket server to make your testing
simpler.

What do you think about this API?

-- 
Gustavo Sverzut Barbieri
--------------------------------------
Mobile: +55 (16) 99354-9890

------------------------------------------------------------------------------
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to