index.html 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta name="viewport" content="width=device-width, initial-scale=1">
  5. <!-- Replace the clientid Here with your Client ID. -->
  6. <meta name="google-signin-clientid" content="675954646436-qs593t199b1nt7gj0v6p4njau8724oss.apps.googleusercontent.com">
  7. <meta name="google-signin-scope" content="https://www.googleapis.com/auth/plus.profile.emails.read"/>
  8. <meta name="google-signin-requestvisibleactions" content="http://schema.org/AddAction" />
  9. <meta name="google-signin-cookiepolicy" content="single_host_origin" />
  10. <!------>
  11. <link rel="stylesheet" href="css/jquery.mobile.min.css"/>
  12. <link rel="stylesheet" type="text/css" href="css/jsontable.css" />
  13. <link rel="shortcut icon" href="favicon.ico" />
  14. <meta charset="utf-8" />
  15. <title>FreeSWITCH Verto&trade; Video Transcoding Demo</title>
  16. <style type="text/css">
  17. .pageheader {
  18. font-size: 22px;
  19. font-weight: normal;
  20. height: 27px;
  21. }
  22. .ctlbtn {
  23. border: 2px;
  24. border-style:outset;
  25. color: #ffffff;
  26. min-width: 125px;
  27. background-color: #666666;
  28. font-face: arial;
  29. height:18px;
  30. font-size:7pt;
  31. }
  32. .ctlbtn:hover {
  33. color: #ffffae;
  34. cursor: pointer;
  35. }
  36. .vidbtn {
  37. font-face: arial;
  38. font-size:7pt;
  39. }
  40. #chatwin
  41. {
  42. background-color: #eeeeee;
  43. width: 500px;
  44. height:150px;
  45. overflow-y: scroll;
  46. scrolling: auto;
  47. text-align: left;
  48. border-style:inset;
  49. font-size: 10pt;
  50. color: #3333ff;
  51. resize:both;
  52. }
  53. .chatuid
  54. {
  55. font-size: 7pt;
  56. font-weight: bold;
  57. color: #ff3333;
  58. }
  59. .chatimg
  60. {
  61. max-width:100px;
  62. }
  63. .l1
  64. {
  65. border:1;
  66. background-color:#fefefe;
  67. height:1px;
  68. opacity:0.4;
  69. }
  70. #chatmsg
  71. {
  72. width:400px;
  73. max-height:40px;
  74. }
  75. div#preload { display: none; }
  76. </style>
  77. </head>
  78. <body>
  79. <div data-role="page" id="page-login" align="center">
  80. <div data-role="header" class="page-header">
  81. FreeSWITCH Verto&trade; Video Transcoding Demo
  82. </div>
  83. </div>
  84. <div data-role="page" id="page-enum" align="center">
  85. <div data-role="header" class="page-header">
  86. FreeSWITCH Verto&trade; Looking For Devices
  87. </div>
  88. <div id="search" hidden="true">
  89. <img src="images/search.gif"/>
  90. </div>
  91. </div>
  92. <div data-role="page" id="page-bwtest" align="center">
  93. <div data-role="header" class="page-header">
  94. FreeSWITCH Verto&trade; Testing Network Connection
  95. </div>
  96. <h1>Testing Network Connection</h1>
  97. <img src="images/speed.gif"/>
  98. </div>
  99. <div data-role="page" id="page-incall" align="center">
  100. <div data-role="header" id="calltitle" class="pageheader">
  101. Verto&trade; IN CALL
  102. </div>
  103. <div id="fs" xstyle="width:100%;height:100%">
  104. <div id="rows" style="background-color:#f9f9f9">
  105. <span id=usrinner style="margin:25px">
  106. <span id=usrctl><b>User Controls</b></span>
  107. <div id=usr2>
  108. <div id="canvasButtons" hidden="true">
  109. <button data-inline="true" id="hupbtn2">End Call</button>
  110. <button data-inline="true" id="fullbtn2">Enter Full Screen</button>
  111. </div>
  112. <div id="mainButtons">
  113. <button data-inline="true" id="hold">HOLD</button>
  114. <button data-inline="true" id="hupbtn">End Call</button>
  115. <button data-inline="true" id="mutebtn">Toggle Audio Mute</button>
  116. <button data-inline="true" id="localmutebtn">Toggle Local Audio Mute</button>
  117. <button data-inline="true" id="localvidmutebtn">Toggle Local Video Mute</button>
  118. <!-- <button data-inline="true" class="startxferbtn">Transfer</button>-->
  119. <span class="sharediv">
  120. <button data-inline="true" id="sharebtn">Share</button>
  121. <button data-inline="true" id="nosharebtn">End Share</button>
  122. </span>
  123. <span class="sharediv">
  124. <button data-inline="true" id="smallerbtn">Smaller - </button>
  125. <button data-inline="true" id="biggerbtn">Bigger +</button>
  126. <button data-inline="true" id="fullbtn">Enter Full Screen</button>
  127. <button data-inline="true" id="vmutebtn">Toggle Video Mute</button>
  128. </span>
  129. </div>
  130. <br><br>
  131. <div id="conf" xstyle="width:100%;height:100%">
  132. <div style="color:black;font-family: verdana" align="center" id="conf_count"></div><br>
  133. <table width="1400" cellspacing="0" cellpadding="0" border="0" align="center" id="conf_list" class="jsDataTable">
  134. </table>
  135. <div id="canvasui" style="width:700px;" hidden="true">
  136. <br><br>
  137. <table border=0 cellspacing=0 cellpadding=0>
  138. <tr><td width=180><b>Additional Canvas</b>:</td><td><select style="width:200px;" id="canvasid"></select></td><td width=220 align=right><button id="canvasbut" style="width:200px;">Open Canvas</button></td></tr>
  139. </table>
  140. <br><br>
  141. </div>
  142. </div><!---conf-->
  143. <div id="message" hidden="true">
  144. <hr class="l1" width="500"/>
  145. <div id="chatwin"></div>
  146. <!-- <textarea readonly id="chatwin"></textarea>-->
  147. <table><tr><td><textarea id="chatmsg"></textarea></td><td><button id="chatsend" style="width:100px;">Send</button></td></tr></table>
  148. <hr class="l1" width="500"/><br>
  149. </div>
  150. <div id="hctop" hidden="true">
  151. <br/><br/>
  152. <div id="hcmessage"></div>
  153. <br><br>
  154. </div>
  155. <div class="ui-field-contain" id="xferdiv">
  156. <input data-mini="true" type="text" id="xferto"><br>
  157. <button data-inline="true" id="cancelxferbtn">Cancel Transfer</button>
  158. <button data-inline="true" class="startxferbtn">Complete Transfer</button>
  159. </div>
  160. <img src="img/verto_black_web.gif" width="300"><br><br>
  161. <div id=keypad>
  162. <button class="dtmf" data-inline="true">1</button>
  163. <button class="dtmf" data-inline="true">2</button>
  164. <button class="dtmf" data-inline="true">3</button>
  165. <br>
  166. <button class="dtmf" data-inline="true">4</button>
  167. <button class="dtmf" data-inline="true">5</button>
  168. <button class="dtmf" data-inline="true">6</button>
  169. <br>
  170. <button class="dtmf" data-inline="true">7</button>
  171. <button class="dtmf" data-inline="true">8</button>
  172. <button class="dtmf" data-inline="true">9</button>
  173. <br>
  174. <button class="dtmf" data-inline="true">*</button>
  175. <button class="dtmf" data-inline="true">0</button>
  176. <button class="dtmf" data-inline="true">#</button>
  177. </div>
  178. <br><br>
  179. <div id="conf_mod" style="width:450px"></div>
  180. <div style="color:blue" id="conf_display"></div>
  181. </span>
  182. </div>
  183. </div><!-- fs -->
  184. <video id="webcam" autoplay="autoplay" style="width:100%;height:100%;object-fit:inherit;"></video>
  185. <!--<video id="local_webcam" autoplay="autoplay" style="width:100%;height:100%;object-fit:inherit;"></video>-->
  186. </div><!-- rows -->
  187. <br><br>
  188. </div>
  189. <div data-role="page" id="page-main" align="center">
  190. <div data-role="header" class="pageheader">
  191. FreeSWITCH Verto&trade; Video Transcoding Demo (<span id="bwinfo">*checking*</span>)
  192. </div>
  193. <br>
  194. <center> <table width="1024" border="0">
  195. <tr><td> <center><a target="_CC2104" href="https://www.cluecon.com"><img border="0" width="300" src="img/cc_banner.gif"></a></center></td>
  196. <td><center> <img src="img/verto_black_web.gif" width="300"></center>
  197. </td></tr>
  198. </table></center><br><br>
  199. <div id="offline">
  200. <div id="errordisplay" style="font-weight:bold;font-size:18px;color:#ae0000"></div>
  201. <div class="ui-field-contain">
  202. <label for="name">Login</label>
  203. <input type="text" size="20" id="login"/>
  204. </div>
  205. <div class="ui-field-contain">
  206. <label for="name">Password</label>
  207. <input type="password" size="20" id="passwd"/>
  208. </div>
  209. <!--
  210. <div class="ui-field-contain">
  211. <label for="name">CID Name</label>
  212. <input type="text" size="30" class="name"/>
  213. </div>
  214. <div class="ui-field-contain">
  215. <label for="name">CID Number</label>
  216. <input type="text" size="20" class="cid"/>
  217. </div>
  218. -->
  219. <div class="ui-field-contain">
  220. <label for="name">Hostname</label>
  221. <input type="text" size="20" id="hostName"/>
  222. </div>
  223. <div class="ui-field-contain">
  224. <label for="name">Websocket URL</label>
  225. <input type="text" size="20" id="wsURL"/>
  226. </div>
  227. <br><br>
  228. <img src="img/verto_black_web.gif" width="300">
  229. <br><br>
  230. <button data-inline="true" id="loginbtn">Log In</button>
  231. <script>
  232. function playvid(file)
  233. {
  234. $("#ext").val("vid_" + file);
  235. $("#callbtn").click();
  236. }
  237. function dial(ext)
  238. {
  239. $("#ext").val(ext);
  240. $("#callbtn").click();
  241. }
  242. </script>
  243. <br><br><br>
  244. </div>
  245. <div id="online" align="center" style="width:75%">
  246. <div class="ui-field-contain">
  247. <script>
  248. function toggle_demo() {
  249. if ($('#demos').is(':visible')) {
  250. $('#demos').hide();
  251. $('#showdemo').text("Show Demo Extensions");
  252. } else {
  253. $('#devices').hide();$('#showdevices').show();$('#demos').show();
  254. $('#showdemo').text("Hide Demo Extensions");
  255. }
  256. }
  257. function toggle_device() {
  258. if ($('#devices').is(':visible')) {
  259. $('#devices').hide();
  260. $('#showdevices').text("View Device Settings");
  261. } else {
  262. $('#devices').show();$('#demos').hide();
  263. $('#showdevices').text("Hide Device Settings");
  264. }
  265. }
  266. </script>
  267. <!--<button data-inline="true" id="showdemo" onclick="toggle_demo();">View Demo Extensions</button>-->
  268. <button data-inline="true" id="showdevices" onclick="toggle_device();">View Device Settings</button>
  269. <button data-inline="true"id="speedbtn">Check Speed</button>
  270. <button data-inline="true"id="logoutbtn">Log Out</button>
  271. <div id="devices" style="border-style:outset;border-width:2px">
  272. <div id="camdiv">
  273. <legend><b>Camera</b>:</legend><select data-theme="a" data-overlay-theme="a" data-native-menu="false" id="usecamera"></select>
  274. <br>
  275. <legend><b>Share Device</b>:</legend><select data-theme="a" data-overlay-theme="a" data-native-menu="false" id="useshare"></select>
  276. <br><br></div>
  277. <legend><b>Microphone</b>:</legend><select data-theme="a" data-overlay-theme="a" data-native-menu="false" id="usemic"></select>
  278. <br>
  279. <legend><b>Speaker</b>:</legend><select data-theme="a" data-overlay-theme="a" data-native-menu="false" id="usespeak"></select>
  280. <Br clear="all"><Br>
  281. <div style="xvisibility:hidden">
  282. <label><input id="use_vid" type="checkbox" value="foo" > Use Video</label>
  283. <label><input id="use_stereo" type="checkbox" value="foo" > Stereo Audio</label>
  284. <label><input id="use_stun" type="checkbox" value="foo" > Use STUN</label>
  285. <!-- <label><input id="local_video" type="checkbox" value="foo" > Local Video</label>-->
  286. </div>
  287. <Br clear="all">
  288. <br><br>
  289. <div >
  290. <fieldset data-role="controlgroup" data-type="horizontal">
  291. <legend><b>Video Quality</b>:</legend>
  292. <input type="radio" name="vqual" id="vqual_qqvga" value="qqvga">
  293. <label for="vqual_qqvga">QQVGA 160x120</label>
  294. <input type="radio" name="vqual" id="vqual_qvga" value="qvga">
  295. <label for="vqual_qvga">QVGA 320x240</label>
  296. <input type="radio" name="vqual" id="vqual_vga" value="vga">
  297. <label for="vqual_vga">VGA 640x480</label>
  298. <input type="radio" name="vqual" id="vqual_qvga_wide" value="qvga_wide">
  299. <label for="vqual_qvga_wide">QVGA WIDE 320x180</label>
  300. <input type="radio" name="vqual" id="vqual_vga_wide" value="vga_wide">
  301. <label for="vqual_vga_wide">VGA WIDE 640x360</label>
  302. <input type="radio" name="vqual" id="vqual_hd" value="hd">
  303. <label for="vqual_hd">HD 1280x720</label>
  304. <input type="radio" name="vqual" id="vqual_hhd" value="hhd">
  305. <label for="vqual_hhd">HHD 1920x1080</label>
  306. </fieldset>
  307. </div><br clear="all"><br>
  308. <div >
  309. <fieldset data-role="controlgroup" data-type="horizontal">
  310. <legend><b>Max Outgoing Bandwidth</b>:</legend>
  311. <input type="radio" name="outgoingBandwidth" id="outgoingBandwidth_250kb" value="250">
  312. <label for="outgoingBandwidth_250kb">250kb</label>
  313. <input type="radio" name="outgoingBandwidth" id="outgoingBandwidth_500kb" value="500">
  314. <label for="outgoingBandwidth_500kb">500kb</label>
  315. <input type="radio" name="outgoingBandwidth" id="outgoingBandwidth_1024kb" value="1024">
  316. <label for="outgoingBandwidth_1024kb">1mb</label>
  317. <input type="radio" name="outgoingBandwidth" id="outgoingBandwidth_1536kb" value="1536">
  318. <label for="outgoingBandwidth_1536kb">1.5mb</label>
  319. <input type="radio" name="outgoingBandwidth" id="outgoingBandwidth_2048kb" value="2048">
  320. <label for="outgoingBandwidth_2048kb">2mb</label>
  321. <input type="radio" name="outgoingBandwidth" id="outgoingBandwidth_5120kb" value="5120">
  322. <label for="outgoingBandwidth_5120kb">5mb</label>
  323. <input type="radio" name="outgoingBandwidth" id="outgoingBandwidth_0kb" value="0">
  324. <label for="outgoingBandwidth_0kb">No Limit</label>
  325. <input type="radio" name="outgoingBandwidth" id="outgoingBandwidth_default" value="default">
  326. <label for="outgoingBandwidth_default">Server Default</label>
  327. </fieldset>
  328. </div><br clear="all"><br>
  329. <div >
  330. <fieldset data-role="controlgroup" data-type="horizontal">
  331. <legend><b>Max Incoming Bandwidth</b>:</legend>
  332. <input type="radio" name="incomingBandwidth" id="incomingBandwidth_250kb" value="250">
  333. <label for="incomingBandwidth_250kb">250kb</label>
  334. <input type="radio" name="incomingBandwidth" id="incomingBandwidth_500kb" value="500">
  335. <label for="incomingBandwidth_500kb">500kb</label>
  336. <input type="radio" name="incomingBandwidth" id="incomingBandwidth_1024kb" value="1024">
  337. <label for="incomingBandwidth_1024kb">1mb</label>
  338. <input type="radio" name="incomingBandwidth" id="incomingBandwidth_1536kb" value="1536">
  339. <label for="incomingBandwidth_1536kb">1.5mb</label>
  340. <input type="radio" name="incomingBandwidth" id="incomingBandwidth_2048kb" value="2048">
  341. <label for="incomingBandwidth_2048kb">2mb</label>
  342. <input type="radio" name="incomingBandwidth" id="incomingBandwidth_5120kb" value="5120">
  343. <label for="incomingBandwidth_5120kb">5mb</label>
  344. <input type="radio" name="incomingBandwidth" id="incomingBandwidth_0kb" value="0">
  345. <label for="incomingBandwidth_0kb">No Limit</label>
  346. <input type="radio" name="incomingBandwidth" id="incomingBandwidth_default" value="default">
  347. <label for="incomingBandwidth_default">Server Default</label>
  348. </fieldset>
  349. </div><br clear="all"><br>
  350. <label><input id="use_dedenc" type="checkbox" value="foo" > Use Dedicated Remote Encoder</label>
  351. <label><input id="mirror_input" type="checkbox" value="foo" >Scale Remote Video To Match Camera</label>
  352. <br><br>
  353. <center><button data-inline="true" id="refreshbtn">Refresh Device List</button>
  354. <button data-inline="true" id="hidedevices" onclick="toggle_device()">Save Device Settings</button>
  355. </center>
  356. <Br clear="all"><br>
  357. </div>
  358. <br><br>
  359. <div id="demos" style="border-style:outset">
  360. <h2>Video Streaming (USE STEREO HEADPHONES IF POSSIBLE)</h2>
  361. <div style="border-style:inset;border-width:1px;background-color:#eeeeee">
  362. <button class="vidbtn" data-inline="true" onclick="playvid('vuc.mp4')">FreeSWITCH Team on VUC (Summer 2014)</button>
  363. <button class="vidbtn" data-inline="true" onclick="playvid('briancc.mp4')">Brian West ClueCon Spot (Summer 2010)</button>
  364. <button class="vidbtn" data-inline="true" onclick="playvid('bin1.mp4')">Binaural Audio Demo</button>
  365. <button class="vidbtn" data-inline="true" onclick="playvid('binrafting.mp4')">Binaural River Rafting</button>
  366. <button class="vidbtn" data-inline="true" onclick="playvid('splash.mp4')">Binaural Splash Mountian</button>
  367. <br>
  368. <button class="vidbtn" data-inline="true" onclick="playvid('3d_demo.mp4')">Binaural Spatial Demo</button>
  369. <button class="vidbtn" data-inline="true" onclick="playvid('gravity.mp4')">Gravity Movie Trailer(2k)</button>
  370. <button class="vidbtn" data-inline="true" onclick="playvid('awesome1.mp4')">Everything is Awesome</button>
  371. <button class="vidbtn" data-inline="true" onclick="playvid('awesome2.mp4')">Everything is Awesome 2</button>
  372. <button class="vidbtn" data-inline="true" onclick="playvid('sirius.mp4')">Sirius Live</button>
  373. <br>
  374. <button class="vidbtn" data-inline="true" onclick="playvid('swimp.mp4')">Imperial March Live</button>
  375. <button class="vidbtn" data-inline="true" onclick="playvid('imphd.mp4')">Imperial March on Floppy Drives</button>
  376. <button class="vidbtn" data-inline="true" onclick="playvid('notime.mp4')">Ain't Nobody Got Time</button>
  377. <button class="vidbtn" data-inline="true" onclick="playvid('hdtest.mp4')">Video HD Demo</button>
  378. </div>
  379. <br>
  380. <h2>Codec Test and Conference</h2>
  381. <div style="border-style:inset;border-width:1px;background-color:#eeeeee">
  382. <button class="vidbtn" data-inline="true" onclick="dial('decode')">Video from your Webcam decoded then re-encoded w/ MOH</button>
  383. <button class="vidbtn" data-inline="true" onclick="dial('3500')">Video Transcoded Conference</button>
  384. </div>
  385. </div>
  386. <br><br><br><hr><br>
  387. <div class="ui-field-contain" style="text-align:right;">
  388. <label for="name">Name</label>
  389. <input type="text" size="30" id="cidname"/>
  390. </div>
  391. <div class="ui-field-contain" style="text-align:right;">
  392. <label for="name">CID Number</label>
  393. <input type="text" size="20" id="cid"/>
  394. </div>
  395. <div class="ui-field-contain" style="text-align:right;">
  396. <label for="name">Email</label>
  397. <input type="text" size="20" id="email"/>
  398. </div>
  399. <div class="ui-field-contain" style="text-align:right;">
  400. <label for="name">Avatar</label>
  401. <input type="text" size="20" id="avatar" />
  402. </div>
  403. <div class="ui-field-contain" style="text-align:right;">
  404. <label for="name">Extension</label>
  405. <input type="text" id="ext""/>
  406. </div>
  407. <img width="200" id="avatar_img"/><br>
  408. <!--Comment out to "EOC" comment to disable Googleb Login -->
  409. <button data-inline="true" id="signinButton">Import Google Credentials</button>
  410. <!--<button data-inline="true" id="signoutButton">Sign out with Google</button>-->
  411. <button data-inline="true" id="callbtn">Call Extension</button>
  412. <br>
  413. <hr>
  414. <br><br>
  415. <div style="color:blue" id="main_info">&nbsp;</div><br><br>
  416. </div>
  417. <br>
  418. <br>
  419. <!--
  420. <b>TEXT</b><br>To: <input type="text" size="20" id="textto"/> MSG: <input type="text" size="40" id="textmsg"/>
  421. <button id="vtxtbtn">Send</button>
  422. -->
  423. </div>
  424. <table id="directory" width=500 style="font-size:11pt;font-face:arial">
  425. <tr><td align=center colspan=2><b>FreeSWITCH VERTO&trade; WebRTC Demo Directory<Br><br></td></tr>
  426. <tr><td width=100><b>Dial</b></td><td><b>Desc</b></td></tr>
  427. <tr><td align=left colspan=2><hr></td></tr>
  428. <tr><td>3d1</td><td> 3D sound demo #1</td></tr>
  429. <tr><td>3d2</td><td> 3D sound demo #2</td></tr>
  430. <tr><td>stereo1</td><td> Stereo sound demo #1</td></tr>
  431. <tr><td>stereo2</td><td> Stereo sound demo #2</td></tr>
  432. <tr><td>stereo3</td><td> Stereo sound demo #3</td></tr>
  433. <tr><td>3500</td><td>Local 48k Stereo Conference</td></tr>
  434. <tr><td>&nbsp;</td></tr>
  435. <tr><td>cluecon</td><td> ClueCon Hotline</td></tr>
  436. <tr><td>&lt;number&gt;</td><td>Call a US/Canda Number</td></tr>
  437. <tr><td>vuc</td><td>VoIP Users Conference</td></tr>
  438. <tr><td>888</td><td>FreeSWITCH Community Conference</td></tr>
  439. <tr><td>3300</td><td>Local 48k Conference</td></tr>
  440. <tr><td>5000</td><td>Try the Demo IVR</td></tr>
  441. <tr><td>9664</td><td>Listen to Hold Music</td></tr>
  442. <tr><td>9386</td><td>Funny Prompts</td></tr>
  443. <tr><td>9198</td><td>Tetris (tone generator)</td></tr>
  444. <tr><td colspan=2><Br>
  445. <center>
  446. <br><br><br>
  447. </td></tr>
  448. </td></tr>
  449. </table>
  450. </div><!-- /page -->
  451. <div data-role="page" id="dialog-logout" data-close-btn="none">
  452. <div data-role="header">
  453. <h2>Logged Out</h2>
  454. </div>
  455. <div data-role="content">
  456. <p>You have been logged out or disconnected from the server.</p>
  457. <button onclick="$('#dialog-logout').dialog('close')">OK</button>
  458. </div>
  459. </div>
  460. <div data-role="page" id="dialog-login-error" data-close-btn="none">
  461. <div data-role="header">
  462. <h2>Login Error</h2>
  463. </div>
  464. <div data-role="content">
  465. <p>Error logging in</p>
  466. <button onclick="$('#dialog-login-error').dialog('close')">OK</button>
  467. </div>
  468. </div>
  469. <div data-role="page" id="dialog-hold" data-close-btn="none">
  470. <div data-role="header">
  471. <h2>Call On hold</h2>
  472. </div>
  473. <div data-role="content">
  474. <p>The call is on hold</p>
  475. <button onclick="$('#dialog-hold').dialog('close');cur_call.toggleHold();">Resume Call</button>
  476. </div>
  477. </div>
  478. <div data-role="page" id="dialog-incoming-call" data-close-btn="none">
  479. <div data-role="header">
  480. <h2>Incoming Call</h2>
  481. </div>
  482. <div data-role="content">
  483. <div id="dialog-incoming-call-txt"><p>Incoming Call</p></div>
  484. <button id="ansbtn">Answer</button>
  485. <div id="vansdiv"><button id="vansbtn">Answer Video</button></div>
  486. <button id="declinebtn">Decline</button>
  487. </div>
  488. </div>
  489. <script type="text/javascript" src="js/jquery-2.1.1.min.js"></script>
  490. <script type="text/javascript" src="js/jquery.mobile.min.js"></script>
  491. <script type="text/javascript" src="js/jquery.json-2.4.min.js"></script>
  492. <script type="text/javascript" src="js/jquery.cookie.js"></script>
  493. <script type="text/javascript" src="js/jquery.dataTables.min.js"></script>
  494. <script type="text/javascript" src="js/verto-min.js"></script>
  495. <script type="text/javascript" src="js/getScreenId.js"></script>
  496. <script type="text/javascript" src="js/md5.min.js"></script>
  497. <script type="text/javascript" src="js/jquery.hipchat.js"></script>
  498. <script type="text/javascript" src="verto.js"></script>
  499. <script src="https://apis.google.com/js/client:platform.js?onload=render" async defer></script>
  500. <div id="preload" hidden=true>
  501. <img src="images/search.gif"/>
  502. </div>
  503. </body>
  504. </html>