- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / test / data / webrtc / manual / peerconnection-help.html
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2 <html>
3 <head>
4   <title>WebRTC PeerConnection Manual Test Help Page</title>
5   <link rel="StyleSheet" type="text/css" href="stylesheet.css">
6   <meta charset="utf-8">
7 </head>
8 <body>
9
10 <h1>WebRTC PeerConnection Manual Test Help Page</h1>
11 <p>
12   The test page is intended for testing WebRTC calls.
13
14   This is how you set up a normal call:
15 </p>
16 <ol>
17   <li>Open this page in two tabs.</li>
18   <li>Start the peerconnection server. Click on the question mark next
19     to the 'server' field for instruction on how to do that. The easiest
20     thing is to start it on localhost, but you can start it on any
21     machine you like and connect to hostname:8888.</li>
22   <li>Click the Connect button in both tabs.</li>
23   <li>Click the Call:Negotiate button in one of the tabs. You should see a bunch
24     of printouts when this happens. Note that no streams are sent to
25     begin with (although you could run steps 5-6 before this step to get streams
26     even in the initial call).</li>
27   <li>Grant media access using the checkboxes and Request button.</li>
28   <li>Add the local stream by clicking the "Add" button, in both tabs.</li>
29   <li>Now you must re-negotiate the call by clicking on Negotiate again.</li>
30   <li>You should now have a call up and both sides should be receiving
31     media data (depending on what access you granted on the respective
32     pages).</li>
33   <li>You can now choose to stop, re-request, re-send or disable streams
34     in any way you like, or hang up and re-start the call. You don't
35     need to disconnect: that's done automatically when you close the
36     page. Hanging up is NOT done automatically though.</li>
37 </ol>
38
39 <p>
40   To create a data channel:
41 </p>
42 <ol>
43   <li>Make sure Chrome is started with the --enable-data-channels flag.</li>
44   <li>Follow the instructions above to connect two tabs to a
45    peerconnection_server.</li>
46   <li>Click the Data channel: Create button in one tab. Notice the status 
47   changes to "connecting".</li>
48   <li>Click the Call:Negotiate button. You should see the status change to 
49   "open" in both tabs. </li>     
50   <li>Enter text in the textbox next to the Send data button and then click Send
51    data. Notice the text is received in the remote tab in the Received on data 
52   channel text box. Data can be sent in both direct.</li>
53   <li>To close the channel press the Close button followed by Negotiate. Notice 
54   the status change to "closed"</li>
55 </ol>
56
57 <p>Detailed descriptions:</p>
58 <ul>
59   <li>Connect - once a connection is established, you generally won't
60     need to click this button again. Connecting really isn't something
61     related to WebRTC as such, it's just the signalling solution.</li>
62   <li>Note that if more than two users/machines have established a
63     connection to the same PC server, you will get an error when
64     pressing this button. The test is hard-coded to only allow 2 peers
65     on the server at the same time.</li>
66   <li>Pressing the Add button for local streams will in effect add
67     the current local stream, such as it is, to the current
68     peerconnection.</li>
69   <li>If you request user media again, it will overwrite the current
70     local stream with the new one. This means that pressing Add will
71     add the stream you just got from the request. The code will not
72     attempt to stop or remove the previous stream from the
73     peerconnection, so depending on peerconnection's semantics the old
74     stream will remain with the peerconnection (perhaps the streams will
75     be sent simultaneously?)</li>
76   <li>Hang Up will clear away peer connections on both sides, and a new
77     call can be started if desired. The peers remain connected to the
78     peerconnection server.</li>
79   <li>The Toggle buttons will set the .enabled properties on the first
80     video and audio track for the local or remote stream, respectively.
81     This is effectively a temporary "mute" for the streams.</li>
82   <li>Stop terminates a stream, which means it will no longer send any
83     more data.</li>
84   <li>Remove will remove the current local stream from the current
85     peerconnection. For instance, you should be able to send a stream,
86     remove it, re-request a new stream and send that within the same
87     call. Note that re-requesting user media overwrites the current
88     media stream, so the reverse is not possible.</li>
89   <li>The PeerConnection constraints field can pass in constraints for the
90     peerconnection to be established. The code will attempt to eval the code
91     you write in and pass it whenever the code asks for constraints.
92     [experimental]</li>
93   <li>The Force Opus checkbox will remove all codecs except OPUS for all
94     outgoing messages sent by this page. Note that this ONLY means that
95     we are guaranteed to send Opus to the other side; it does NOT mean
96     that the other side will necessarily send Opus to us. To do that,
97     you need to check the box on the other side too. You can either
98     check the box before the call, or check the box and then re-send the
99     local stream.</li>
100 </ul>
101
102
103
104 </body>
105 </html>