TiledViz
Loading...
Searching...
No Matches
vnc_multi.html
1<!DOCTYPE html>
2<html lang="en" class="noVNC_loading">
3<head>
4
5 <!--
6 noVNC example: simple example using default UI
7 Copyright (C) 2019 The noVNC authors
8 noVNC is licensed under the MPL 2.0 (see LICENSE.txt)
9 This file is licensed under the 2-Clause BSD license (see LICENSE.txt).
10
11 Connect parameters are provided in query string:
12 http://example.com/?host=HOST&port=PORT&encrypt=1
13 or the fragment:
14 http://example.com/#host=HOST&port=PORT&encrypt=1
15 -->
16 <title>noVNC</title>
17
18 <link rel="icon" type="image/x-icon" href="app/images/icons/novnc.ico">
19 <meta name="theme-color" content="#313131">
20
21 <!-- Apple iOS Safari settings -->
22 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
23 <meta name="apple-mobile-web-app-capable" content="yes">
24 <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
25
26 <!-- @2x -->
27 <link rel="apple-touch-icon" sizes="40x40" type="image/png" href="app/images/icons/novnc-ios-40.png">
28 <link rel="apple-touch-icon" sizes="58x58" type="image/png" href="app/images/icons/novnc-ios-58.png">
29 <link rel="apple-touch-icon" sizes="80x80" type="image/png" href="app/images/icons/novnc-ios-80.png">
30 <link rel="apple-touch-icon" sizes="120x120" type="image/png" href="app/images/icons/novnc-ios-120.png">
31 <link rel="apple-touch-icon" sizes="152x152" type="image/png" href="app/images/icons/novnc-ios-152.png">
32 <link rel="apple-touch-icon" sizes="167x167" type="image/png" href="app/images/icons/novnc-ios-167.png">
33 <!-- @3x -->
34 <link rel="apple-touch-icon" sizes="60x60" type="image/png" href="app/images/icons/novnc-ios-60.png">
35 <link rel="apple-touch-icon" sizes="87x87" type="image/png" href="app/images/icons/novnc-ios-87.png">
36 <link rel="apple-touch-icon" sizes="120x120" type="image/png" href="app/images/icons/novnc-ios-120.png">
37 <link rel="apple-touch-icon" sizes="180x180" type="image/png" href="app/images/icons/novnc-ios-180.png">
38
39 <!-- Stylesheets -->
40 <link rel="stylesheet" href="app/styles/constants.css">
41 <link rel="stylesheet" href="app/styles/base.css">
42
43 <link rel="preload" as="image" href="app/images/info.svg">
44 <link rel="preload" as="image" href="app/images/error.svg">
45 <link rel="preload" as="image" href="app/images/warning.svg">
46
47 <script type="module" crossorigin="anonymous" src="app/error-handler.js"></script>
48
49 <script type="module">
50 import UI from "./app/ui_multi.js";
51 import * as Log from './core/util/logging.js';
52
53 let response;
54
55 let defaults = {};
56 let mandatory = {};
57
58 // Default settings will be loaded from defaults.json. Mandatory
59 // settings will be loaded from mandatory.json, which the user
60 // cannot change.
61
62 try {
63 response = await fetch('./defaults.json');
64 if (!response.ok) {
65 throw Error("" + response.status + " " + response.statusText);
66 }
67
68 defaults = await response.json();
69 } catch (err) {
70 Log.Error("Couldn't fetch defaults.json: " + err);
71 }
72
73 try {
74 response = await fetch('./mandatory.json');
75 if (!response.ok) {
76 throw Error("" + response.status + " " + response.statusText);
77 }
78
79 mandatory = await response.json();
80 } catch (err) {
81 Log.Error("Couldn't fetch mandatory.json: " + err);
82 }
83
84 // You can also override any defaults you need here:
85 //
86 // defaults['host'] = 'vnc.example.com';
87
88 // Or force a specific setting, preventing the user from
89 // changing it:
90 //
91 // mandatory['view_only'] = true;
92
93 // See docs/EMBEDDING.md for a list of possible settings.
94
95 UI.start({ settings: { defaults: defaults,
96 mandatory: mandatory } });
97 </script>
98 </head>
99
100<body>
101
102 <div id="noVNC_fallback_error" class="noVNC_center">
103 <div>
104 <div>noVNC encountered an error:</div>
105 <br>
106 <div id="noVNC_fallback_errormsg"></div>
107 </div>
108 </div>
109
110 <!-- noVNC control bar -->
111 <div id="noVNC_control_bar_anchor" class="noVNC_vcenter">
112
113 <div id="noVNC_control_bar">
114 <div id="noVNC_control_bar_handle" title="Hide/Show the control bar"><div></div></div>
115
116 <div class="noVNC_scroll">
117
118 <h1 class="noVNC_logo" translate="no"><span>no</span><br>VNC</h1>
119
120 <hr>
121
122 <!-- Drag/Pan the viewport -->
123 <input type="image" alt="Drag" src="app/images/drag.svg"
124 id="noVNC_view_drag_button" class="noVNC_button noVNC_hidden"
125 title="Move/Drag Viewport">
126
127 <!--noVNC touch device only buttons-->
128 <div id="noVNC_mobile_buttons">
129 <input type="image" alt="Keyboard" src="app/images/keyboard.svg"
130 id="noVNC_keyboard_button" class="noVNC_button" title="Show Keyboard">
131 </div>
132
133 <input type="image" alt="Extra keys" src="app/images/toggleextrakeys.svg"
134 id="noVNC_toggle_extra_keys_button" class="noVNC_button"
135 title="Show Extra Keys">
136 <div class="noVNC_vcenter">
137 <div id="noVNC_modifiers" class="noVNC_panel">
138 <input type="image" alt="Ctrl" src="app/images/ctrl.svg"
139 id="noVNC_toggle_ctrl_button" class="noVNC_button"
140 title="Toggle Ctrl">
141 <input type="image" alt="Alt" src="app/images/alt.svg"
142 id="noVNC_toggle_alt_button" class="noVNC_button"
143 title="Toggle Alt">
144 <input type="image" alt="Windows" src="app/images/windows.svg"
145 id="noVNC_toggle_windows_button" class="noVNC_button"
146 title="Toggle Windows">
147 <input type="image" alt="Tab" src="app/images/tab.svg"
148 id="noVNC_send_tab_button" class="noVNC_button"
149 title="Send Tab">
150 <input type="image" alt="Esc" src="app/images/esc.svg"
151 id="noVNC_send_esc_button" class="noVNC_button"
152 title="Send Escape">
153 <input type="image" alt="Ctrl+Alt+Del" src="app/images/ctrlaltdel.svg"
154 id="noVNC_send_ctrl_alt_del_button" class="noVNC_button"
155 title="Send Ctrl-Alt-Del">
156 </div>
157 </div>
158
159 <!-- Shutdown/Reboot -->
160 <input type="image" alt="Shutdown/Reboot" src="app/images/power.svg"
161 id="noVNC_power_button" class="noVNC_button"
162 title="Shutdown/Reboot...">
163 <div class="noVNC_vcenter">
164 <div id="noVNC_power" class="noVNC_panel">
165 <div class="noVNC_heading">
166 <img alt="" src="app/images/power.svg"> Power
167 </div>
168 <input type="button" id="noVNC_shutdown_button" value="Shutdown">
169 <input type="button" id="noVNC_reboot_button" value="Reboot">
170 <input type="button" id="noVNC_reset_button" value="Reset">
171 </div>
172 </div>
173
174 <!-- Clipboard -->
175 <input type="image" alt="Clipboard" src="app/images/clipboard.svg"
176 id="noVNC_clipboard_button" class="noVNC_button"
177 title="Clipboard">
178 <div class="noVNC_vcenter">
179 <div id="noVNC_clipboard" class="noVNC_panel">
180 <div class="noVNC_heading">
181 <img alt="" src="app/images/clipboard.svg"> Clipboard
182 </div>
183 <p class="noVNC_subheading">
184 Edit clipboard content in the textarea below.
185 </p>
186 <textarea id="noVNC_clipboard_text" rows=5></textarea>
187 </div>
188 </div>
189
190 <!-- Toggle fullscreen -->
191 <input type="image" alt="Full Screen" src="app/images/fullscreen.svg"
192 id="noVNC_fullscreen_button" class="noVNC_button noVNC_hidden"
193 title="Full Screen">
194
195 <!-- Settings -->
196 <input type="image" alt="Settings" src="app/images/settings.svg"
197 id="noVNC_settings_button" class="noVNC_button"
198 title="Settings">
199 <div class="noVNC_vcenter">
200 <div id="noVNC_settings" class="noVNC_panel">
201 <div class="noVNC_heading">
202 <img alt="" src="app/images/settings.svg"> Settings
203 </div>
204 <ul>
205 <li>
206 <label><input id="noVNC_setting_shared" type="checkbox"> Shared Mode</label>
207 </li>
208 <li>
209 <label><input id="noVNC_setting_view_only" type="checkbox"> View Only</label>
210 </li>
211 <li><hr></li>
212 <li>
213 <label><input id="noVNC_setting_view_clip" type="checkbox"> Clip to Window</label>
214 </li>
215 <li>
216 <label for="noVNC_setting_resize">Scaling Mode:</label>
217 <select id="noVNC_setting_resize" name="vncResize">
218 <option value="off">None</option>
219 <option value="scale">Local Scaling</option>
220 <option value="remote">Remote Resizing</option>
221 </select>
222 </li>
223 <li><hr></li>
224 <li>
225 <div class="noVNC_expander">Advanced</div>
226 <div><ul>
227 <li>
228 <label for="noVNC_setting_quality">Quality:</label>
229 <input id="noVNC_setting_quality" type="range" min="0" max="9" value="6">
230 </li>
231 <li>
232 <label for="noVNC_setting_compression">Compression level:</label>
233 <input id="noVNC_setting_compression" type="range" min="0" max="9" value="2">
234 </li>
235 <li><hr></li>
236 <li>
237 <label for="noVNC_setting_repeaterID">Repeater ID:</label>
238 <input id="noVNC_setting_repeaterID" type="text" value="">
239 </li>
240 <li>
241 <div class="noVNC_expander">WebSocket</div>
242 <div><ul>
243 <li>
244 <label><input id="noVNC_setting_encrypt" type="checkbox"> Encrypt</label>
245 </li>
246 <li>
247 <label for="noVNC_setting_host">Host:</label>
248 <input id="noVNC_setting_host">
249 </li>
250 <li>
251 <label for="noVNC_setting_port">Port:</label>
252 <input id="noVNC_setting_port" type="number">
253 </li>
254 <li>
255 <label for="noVNC_setting_path">Path:</label>
256 <input id="noVNC_setting_path" type="text" value="websockify">
257 </li>
258 </ul></div>
259 </li>
260 <li><hr></li>
261 <li>
262 <label><input id="noVNC_setting_reconnect" type="checkbox"> Automatic Reconnect</label>
263 </li>
264 <li>
265 <label for="noVNC_setting_reconnect_delay">Reconnect Delay (ms):</label>
266 <input id="noVNC_setting_reconnect_delay" type="number">
267 </li>
268 <li><hr></li>
269 <li>
270 <label><input id="noVNC_setting_show_dot" type="checkbox"> Show Dot when No Cursor</label>
271 </li>
272 <li><hr></li>
273 <li>
274 <label>Logging:
275 <select id="noVNC_setting_logging" name="vncLogging">
276 </select>
277 </label>
278 </li>
279 </ul></div>
280 </li>
281 <li class="noVNC_version_separator"><hr></li>
282 <li class="noVNC_version_wrapper">
283 <span>Version:</span>
284 <span class="noVNC_version"></span>
285 </li>
286 </ul>
287 </div>
288 </div>
289
290 <input type="image" alt="Disconnect" src="app/images/disconnect.svg"
291 id="noVNC_disconnect_button" class="noVNC_button"
292 title="Disconnect">
293
294 </div>
295 </div>
296
297 </div> <!-- End of noVNC_control_bar -->
298
299 <div id="noVNC_hint_anchor" class="noVNC_vcenter">
300 <div id="noVNC_control_bar_hint">
301 </div>
302 </div>
303
304 <!-- Status dialog -->
305 <div id="noVNC_status"></div>
306
307 <!-- Connect button -->
308 <div class="noVNC_center">
309 <div id="noVNC_connect_dlg">
310 <p class="noVNC_logo" translate="no"><span>no</span>VNC</p>
311 <div class="button_row">
312 <button id="noVNC_connect_button">
313 <img alt="" src="app/images/connect.svg"> Connect
314 </button>
315 </div>
316 </div>
317 </div>
318
319 <!-- Server key verification dialog -->
320 <div class="noVNC_center noVNC_connect_layer">
321 <div id="noVNC_verify_server_dlg" class="noVNC_panel"><form>
322 <div class="noVNC_heading">
323 Server identity
324 </div>
325 <div>
326 The server has provided the following identifying information:
327 </div>
328 <div id="noVNC_fingerprint_block">
329 <b>Fingerprint:</b>
330 <span id="noVNC_fingerprint"></span>
331 </div>
332 <div>
333 Please verify that the information is correct and press
334 "Approve". Otherwise press "Reject".
335 </div>
336 <div class="button_row">
337 <input id="noVNC_approve_server_button" type="submit" value="Approve">
338 <input id="noVNC_reject_server_button" type="button" value="Reject">
339 </div>
340 </form></div>
341 </div>
342
343 <!-- Password dialog -->
344 <div class="noVNC_center noVNC_connect_layer">
345 <div id="noVNC_credentials_dlg" class="noVNC_panel"><form>
346 <div class="noVNC_heading">
347 Credentials
348 </div>
349 <div id="noVNC_username_block">
350 <label for="noVNC_username_input">Username:</label>
351 <input id="noVNC_username_input">
352 </div>
353 <div id="noVNC_password_block">
354 <label for="noVNC_password_input">Password:</label>
355 <input id="noVNC_password_input" type="password">
356 </div>
357 <div class="button_row">
358 <input id="noVNC_credentials_button" type="submit" value="Send credentials">
359 </div>
360 </form></div>
361 </div>
362
363 <!-- Transition screens -->
364 <div id="noVNC_transition">
365 <div id="noVNC_transition_text"></div>
366 <div>
367 <input type="button" id="noVNC_cancel_reconnect_button" value="Cancel">
368 </div>
369 <div class="noVNC_spinner"></div>
370 </div>
371
372 <!-- This is where the RFB elements will attach -->
373 <div id="noVNC_container">
374 <!-- Note that Google Chrome on Android doesn't respect any of these,
375 html attributes which attempt to disable text suggestions on the
376 on-screen keyboard. Let's hope Chrome implements the ime-mode
377 style for example -->
378 <textarea id="noVNC_keyboardinput" autocapitalize="off"
379 autocomplete="off" spellcheck="false" tabindex="-1"></textarea>
380 </div>
381
382 <audio id="noVNC_bell">
383 <source src="app/sounds/bell.oga" type="audio/ogg">
384 <source src="app/sounds/bell.mp3" type="audio/mpeg">
385 </audio>
386 </body>
387</html>