rendered paste bodydiff -r -B -u -P --exclude-from=ignore ../opensim-ref/OpenSim/Region/Environment/Modules/BetaGridLikeMoneyModule.cs ./OpenSim/Region/Environment/Modules/BetaGridLikeMoneyModule.cs
--- ../opensim-ref/OpenSim/Region/Environment/Modules/BetaGridLikeMoneyModule.cs 2008-04-14 05:26:33.000000000 +0100
+++ ./OpenSim/Region/Environment/Modules/BetaGridLikeMoneyModule.cs 2008-04-15 01:26:23.000000000 +0100
@@ -135,6 +135,7 @@
{
// Centralized grid structure using OpenSimWi Redux revision 9+
scene.AddXmlRPCHandler("dynamic_balance_update_request", GridMoneyUpdate);
+ scene.AddXmlRPCHandler("user_alert", UserAlert);
}
else
{
@@ -1059,6 +1061,39 @@
return r;
}
+ /// <summary>
+ /// XMLRPC handler to send alert message and sound to client
+ /// </summary>
+ public XmlRpcResponse UserAlert(XmlRpcRequest request)
+ {
+ XmlRpcResponse ret = new XmlRpcResponse();
+ Hashtable retparam = new Hashtable();
+ Hashtable requestData = (Hashtable)request.Params[0];
+
+ LLUUID agentId = LLUUID.Zero;
+ LLUUID soundId = LLUUID.Zero;
+
+ Helpers.TryParse((string)requestData["agentId"], out agentId);
+ Helpers.TryParse((string)requestData["soundId"], out soundId);
+ string text=(string)requestData["text"];
+
+ IClientAPI client = LocateClientObject(agentId);
+
+ if (client != null)
+ {
+ client.SendBlueBoxMessage(LLUUID.Zero, LLUUID.Zero, "", text);
+ retparam.Add("success", true);
+ }
+ else
+ {
+ retparam.Add("success", true);
+ }
+
+ ret.Value = retparam;
+
+ return ret;
+ }
+
# region Standalone box enablers only
public XmlRpcResponse quote_func(XmlRpcRequest request)