public RemoteConsole getConsole() { RemoteConsole rc = new RemoteConsole(); VirtualMachineMksTicket ticket = testMks(); //Console.WriteLine( "Ticket dump:" ); //Console.WriteLine( " host: " + ticket.host ); //Console.WriteLine( " port: " + ticket.port ); //Console.WriteLine( " port specified: " + ticket.portSpecified ); //Console.WriteLine( " ssl: " + ticket.sslThumbprint ); //Console.WriteLine( " ticket: " + ticket.ticket ); //Console.WriteLine( " cfgFile: " + ticket.cfgFile ); //Console.WriteLine( " string: " + ticket.ToString() ); String hostname = "192.168.1.3:9443"; String serverGuid = "11111111-1111-1111-1111-111111111111"; serverGuid = "22222222-2222-2222-2222-222222222222"; // TODO do this proceduraly :-| String host = "192.168.1.3:443"; //debugAllProperties(); String vmId = vmmor.Value; String sessionTicket = "cst-VCT-" + ticket.ticket + "--tp-" + ticket.sslThumbprint.Replace(":", "-"); // TODO find/replace : with - String url = "https://" + hostname + "/vsphere-client/webconsole.html?vmId=" + vmId + "&vmName=" + getName() + "&serverGuid=" + serverGuid + "&locale=en_US&host=" + host + "&sessionTicket=" + sessionTicket + "&thumbprint=" + ticket.sslThumbprint; //Console.WriteLine( url ); rc.url = url; return(rc); }
private VirtualMachineMksTicket testMks() { try { //ManagedObjectReference hostmor = cb.getServiceUtil().GetFirstDecendentMoRef( null, "HostSystem" ); VirtualMachineMksTicket ticket = cb.getConnection().Service.AcquireMksTicket(vmmor); return(ticket); } catch (SoapException e) { Console.WriteLine(e.Detail); return(null); } }
protected void Page_Load(object sender, EventArgs e) { bool boolError = true; if (Request.QueryString["name"] != null && Request.QueryString["name"] != "" & Request.QueryString["token"] != null && Request.QueryString["token"] != "") { Tokens oToken = new Tokens(0, dsn); string strName = Request.QueryString["name"]; string strToken = Request.QueryString["token"]; if (oToken.Get(strName, strToken) == true) { // Delete Token oToken.Update(strName, strToken); // Render Preview VMWare oVMWare = new VMWare(0, dsn); //strName = "WDBIX103A"; string strConnect = oVMWare.Connect(strName); VimService _service = oVMWare.GetService(); if (strConnect == "") { ManagedObjectReference vmRef = oVMWare.GetVM(strName); if (vmRef.Value != null) { try { VirtualMachineMksTicket oTicket = _service.AcquireMksTicket(vmRef); string strVMHost = oTicket.host; string strVMPort = oTicket.port.ToString(); string strVMPath = oTicket.cfgFile; string strVMTicket = oTicket.ticket; Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "start_count", "<script type=\"text/javascript\">window.onload = new Function(\"connect('" + strVMHost + "','" + strVMPath + "','" + strVMTicket + "','" + strVMPort + "');\");<" + "/" + "script>"); boolError = false; } catch { } } } if (_service != null) { ServiceContent _sic = oVMWare.GetSic(); _service.Abort(); if (_service.Container != null) { _service.Container.Dispose(); } try { _service.Logout(_sic.sessionManager); } catch { } _service.Dispose(); _service = null; _sic = null; } } } if (boolError == true) { Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "start_count", "<script type=\"text/javascript\">window.onload = new Function(\"window.parent.VMWareNoPreview();\");<" + "/" + "script>"); } }