Disable view source for Developer Tools.
[chromium-blink-merge.git] / chrome / test / data / webrtc / manual / peerconnection-help.html
blobf3eb096d8d500dd78f5eab00a5fd6469528548a9
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>
10 <h1>WebRTC PeerConnection Manual Test Help Page</h1>
11 <p>
12 The test page is intended for testing WebRTC calls.
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>
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>
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>
104 </body>
105 </html>