diff options
author | Teravus Ovares | 2008-05-31 12:18:29 +0000 |
---|---|---|
committer | Teravus Ovares | 2008-05-31 12:18:29 +0000 |
commit | febe78d06249cd4d36a86e97610dd45ab518a757 (patch) | |
tree | 7b9733fc14045f09e874440b923cfe443b781b6a /OpenSim/Region/Communications/OGS1/OGS1UserServices.cs | |
parent | Mantis#1425. Thank you kindly, Melanie for a patch that: (diff) | |
download | opensim-SC-febe78d06249cd4d36a86e97610dd45ab518a757.zip opensim-SC-febe78d06249cd4d36a86e97610dd45ab518a757.tar.gz opensim-SC-febe78d06249cd4d36a86e97610dd45ab518a757.tar.bz2 opensim-SC-febe78d06249cd4d36a86e97610dd45ab518a757.tar.xz |
* Implements UserServer logoff in a few situations
* User tries to log-in but is already logged in. Userserver will send message to simulator user was in to log the user out there.
* From the UserServer, admin types 'logoff-user firstname lastname message'.
* Some regions may not get the message because they're not updated yet.
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Communications/OGS1/OGS1UserServices.cs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/OpenSim/Region/Communications/OGS1/OGS1UserServices.cs b/OpenSim/Region/Communications/OGS1/OGS1UserServices.cs index 8807eab..e0e17df 100644 --- a/OpenSim/Region/Communications/OGS1/OGS1UserServices.cs +++ b/OpenSim/Region/Communications/OGS1/OGS1UserServices.cs | |||
@@ -196,6 +196,36 @@ namespace OpenSim.Region.Communications.OGS1 | |||
196 | return GetUserProfile(firstName + " " + lastName); | 196 | return GetUserProfile(firstName + " " + lastName); |
197 | } | 197 | } |
198 | 198 | ||
199 | public void UpdateUserCurrentRegion(LLUUID avatarid, LLUUID regionuuid, ulong regionhandle) | ||
200 | { | ||
201 | Hashtable param = new Hashtable(); | ||
202 | param.Add("avatar_id", avatarid.ToString()); | ||
203 | param.Add("region_uuid", regionuuid.ToString()); | ||
204 | param.Add("region_handle", regionhandle.ToString()); | ||
205 | IList parameters = new ArrayList(); | ||
206 | parameters.Add(param); | ||
207 | XmlRpcRequest req = new XmlRpcRequest("update_user_current_region", parameters); | ||
208 | XmlRpcResponse resp = req.Send(m_parent.NetworkServersInfo.UserURL, 3000); | ||
209 | Hashtable respData = (Hashtable)resp.Value; | ||
210 | if (respData.ContainsKey("returnString")) | ||
211 | { | ||
212 | if ((string)respData["returnString"] == "TRUE") | ||
213 | { | ||
214 | m_log.Info("[OSG1 USER SERVICES]: Successfully updated user record"); | ||
215 | } | ||
216 | else | ||
217 | { | ||
218 | m_log.Error("[OSG1 USER SERVICES]: Error updating user record"); | ||
219 | } | ||
220 | } | ||
221 | else | ||
222 | { | ||
223 | m_log.Warn("[OSG1 USER SERVICES]: Error updating user record, Grid server may not be updated."); | ||
224 | } | ||
225 | |||
226 | |||
227 | } | ||
228 | |||
199 | public List<AvatarPickerAvatar> GenerateAgentPickerRequestResponse(LLUUID queryID, string query) | 229 | public List<AvatarPickerAvatar> GenerateAgentPickerRequestResponse(LLUUID queryID, string query) |
200 | { | 230 | { |
201 | List<AvatarPickerAvatar> pickerlist = new List<AvatarPickerAvatar>(); | 231 | List<AvatarPickerAvatar> pickerlist = new List<AvatarPickerAvatar>(); |