private byte[] NewURLs(OSDMap args) { UUID userID = args["UserID"]; ulong regionhandle = args["RegionHandle"]; string ident = userID + "|" + regionhandle; IWC.AddNewConnectionFromRequest(ident, args); OSDMap result = new OSDMap(); result["Success"] = true; string json = OSDParser.SerializeJsonString(result); UTF8Encoding enc = new UTF8Encoding(); return(enc.GetBytes(json)); }
/// <summary> /// Query the given host (by connection) and verify that we can connect to it. /// </summary> /// <param name = "connector">The host to connect to</param> /// <returns>The connection that has been recieved from the host</returns> public bool AttemptConnection(string host) { IGridRegistrationService module = IWC.Registry.RequestModuleInterface <IGridRegistrationService>(); if (module != null) { module.RemoveUrlsForClient(host); IWC.IsGettingUrlsForIWCConnection = true; OSDMap callThem = module.GetUrlForRegisteringClient(host); IWC.IsGettingUrlsForIWCConnection = false; callThem["OurIdentifier"] = Utilities.GetAddress(); callThem["Method"] = "ConnectionRequest"; OSDMap result = WebUtils.PostToService(host, callThem, true, false, true); if (result["Success"]) { //Add their URLs back again MainConsole.Instance.Warn("Successfully Connected to " + host); IWC.AddNewConnectionFromRequest(result["OurIdentifier"], result); return(true); } } return(false); }