Updated documentation.
[erlang-mod_sse.git] / src / overview.edoc
1 @author Stanislaw Klekot <dozzie@jarowit.net>
2 % remember about mod_sse.app.src
3 @version 0.0.0
4 @title Server-Sent Event server implementation for inets/httpd.
5 @doc
6
7 `mod_sse' is a module implementing server side of
8 <a href="http://www.w3.org/TR/eventsource/">Server-Sent Events protocol</a>
9 for inets httpd server.
10
11 The module was written as a low-dependency proof of concept for something to
12 be run behind nginx 1.2, later extended to be a little more generic
13 (i.e. parametrized).
14
15 == Architecture ==
16
17 `mod_sse' comes as a module for `httpd', the HTTP server that comes with OTP
18 and runs as `inets' service. You configure it in a typical way for `httpd'
19 modules, adding `{sse, "/...", CallbackModule}' tuple to configuration list
20 (see {@link mod_sse} for details). 
21
22 `mod_sse' spawns {@link gen_sse_server} process for every connection, and this
23 additional process is responsible for subscribing to event source of some
24 sort and then receiving events. Those will be passed back to `mod_sse' and
25 sent to the client. Note that events produced need to be ready to be sent
26 through the wire, so any unicode string needs to be converted to bytes
27 (possibly using `unicode:characters_to_binary(Data, unicode)').
28
29 == Example usage ==
30
31 For usage examples see documentation of {@link examples_inets},
32 {@link examples_nginx}, and {@link examples_html} modules.
33
34 <!-- vim:set ft=edoc: -->