<!-- noVNC Example: Automatically connect on page load. Connect parameters are provided in query string: http://example.com/?host=HOST&port=PORT&encrypt=1&true_color=1 --> <html> <head> <title>VNC Client</title> <link rel="stylesheet" href="include/plain.css"> <!-- <script type='text/javascript' src='http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js'></script> --> <script src="include/vnc.js"></script> </head> <body style="margin: 0px;"> <div id="VNC_screen"> <div id="VNC_status_bar" class="VNC_status_bar" style="margin-top: 0px;"> <table border=0 width=100%><tr> <td><div id="VNC_status">Loading</div></td> <td width=10%><div id="VNC_buttons"> <input type=button value="Send CtrlAltDel" id="sendCtrlAltDelButton" onclick="sendCtrlAltDel();"></div></td> </tr></table> </div> <canvas id="VNC_canvas" width="640px" height="20px"> Canvas not supported. </canvas> </div> </body> <script> function setPassword() { RFB.sendPassword($('password_input').value); return false; } function sendCtrlAltDel() { RFB.sendCtrlAltDel(); } function updateState(state, msg) { var s, sb, klass, html; s = $('VNC_status'); sb = $('VNC_status_bar'); cad = $('sendCtrlAltDelButton'); switch (state) { case 'failed': case 'fatal': klass = "VNC_status_error"; break; case 'normal': klass = "VNC_status_normal"; break; case 'disconnected': case 'loaded': klass = "VNC_status_normal"; break; case 'password': msg = '<form onsubmit="return setPassword();"'; msg += ' style="margin-bottom: 0px">'; msg += 'Password Required: '; msg += '<input type=password size=10 id="password_input" class="VNC_status">'; msg += '</form>'; // Fall through default: klass = "VNC_status_warn"; } if (state === "normal") { cad.disabled = false; } else { cad.disabled = true; } if (typeof(msg) !== 'undefined') { sb.setAttribute("class", klass); s.innerHTML = msg; } } window.onload = function () { var host, port, password, encrypt; url = document.location.href; host = (url.match(/host=([A-Za-z0-9.\-]*)/) || ['',''])[1]; port = (url.match(/port=([0-9]*)/) || ['',''])[1]; password = (url.match(/password=([^&#]*)/) || ['',''])[1]; encrypt = (url.match(/encrypt=([A-Za-z0-9]*)/) || ['',1])[1]; true_color = (url.match(/true_color=([A-Za-z0-9]*)/) || ['',1])[1]; if ((!host) || (!port)) { updateState('failed', "Must specify host and port in URL"); return; } RFB.setUpdateState(updateState); RFB.load(); RFB.connect(host, port, password, encrypt, true_color); } </script> </html>