WebRTC

Version 5 (Saúl Ibarra Corretgé, 07/30/2015 04:21 pm)

1 1 Saúl Ibarra Corretgé
h1. SylkServer WebRTC gateway application
2 1 Saúl Ibarra Corretgé
3 2 Saúl Ibarra Corretgé
Starting with version 3.0.0 SylkServer includes a WebRTC gateway application. The application implements a WebSocket protocol which WebRTC endpoints can use in order to interact with the SIP world.
4 2 Saúl Ibarra Corretgé
5 2 Saúl Ibarra Corretgé
6 2 Saúl Ibarra Corretgé
h2. Architecture
7 2 Saúl Ibarra Corretgé
8 1 Saúl Ibarra Corretgé
TODO
9 2 Saúl Ibarra Corretgé
10 2 Saúl Ibarra Corretgé
h2. WebSocket API
11 2 Saúl Ibarra Corretgé
12 5 Saúl Ibarra Corretgé
SylkServer offers the WebSocket API in order to interact with the WebRTC gateway in the @ws(s)://hostname:port/webrtcgateway/ws@ endpoint. Both WebSocket and Secure WebSocket are supported, depending on how SylkServer was configured, check the configuration section.
13 1 Saúl Ibarra Corretgé
14 5 Saúl Ibarra Corretgé
The following API is modeled around 2 concepts: requests and events.
15 5 Saúl Ibarra Corretgé
16 5 Saúl Ibarra Corretgé
A request represents an action which SylkServer should perform, and it's identified with a transaction ID which the user must provide. SylkServer will reply with either an 'ack' or an 'error' response, with the associated transaction ID. An example transaction is that of adding an account.
17 5 Saúl Ibarra Corretgé
18 5 Saúl Ibarra Corretgé
Events are notifications sent by SylkServer to the client. They are the result of some change triggered by a user action, but they don't have a transaction ID associated with them. An example event would be the connection state changed event.
19 5 Saúl Ibarra Corretgé
20 5 Saúl Ibarra Corretgé
21 5 Saúl Ibarra Corretgé
h3. Establishing the connection
22 5 Saúl Ibarra Corretgé
23 5 Saúl Ibarra Corretgé
TODO
24 5 Saúl Ibarra Corretgé
25 5 Saúl Ibarra Corretgé
h3. Account management
26 5 Saúl Ibarra Corretgé
27 5 Saúl Ibarra Corretgé
TODO
28 5 Saúl Ibarra Corretgé
29 5 Saúl Ibarra Corretgé
h3. Calling
30 5 Saúl Ibarra Corretgé
31 5 Saúl Ibarra Corretgé
TODO
32 5 Saúl Ibarra Corretgé
33 5 Saúl Ibarra Corretgé
34 2 Saúl Ibarra Corretgé
35 4 Saúl Ibarra Corretgé
h2. Configuration
36 4 Saúl Ibarra Corretgé
37 4 Saúl Ibarra Corretgé
TODO
38 4 Saúl Ibarra Corretgé
39 2 Saúl Ibarra Corretgé
h2. Client libraries
40 2 Saúl Ibarra Corretgé
41 2 Saúl Ibarra Corretgé
In order to interact with SylkServer's WebRTC gateway, we provide the "sylkrtc.js":http://projects.ag-projects.com/projects/sylkrtc JavaScript library. It implements the API described in this document in an easy to use manner. Check the README file in the project for the JavaScript API documentation.