diff --git a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs index 77c714710f..29a862916e 100644 --- a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs @@ -446,7 +446,10 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage } - protected virtual void SendGridInstantMessageViaXMLRPC(GridInstantMessage im, MessageResultNotification result) + //protected virtual void SendGridInstantMessageViaXMLRPC(GridInstantMessage im, MessageResultNotification result) + //DSG: make this function public, so that we can call from outside to + //use the Grid Service to send the instant message. + public virtual void SendGridInstantMessageViaXMLRPC(GridInstantMessage im, MessageResultNotification result) { GridInstantMessageDelegate d = SendGridInstantMessageViaXMLRPCAsync; diff --git a/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncAvatar.cs b/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncAvatar.cs index 758943f59e..87d26689ee 100644 --- a/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncAvatar.cs +++ b/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/RegionSyncAvatar.cs @@ -33,6 +33,8 @@ using OpenSim.Framework; using OpenSim.Framework.Client; using OpenSim.Region.Framework.Scenes; +using OpenSim.Region.Framework.Interfaces; + namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule { public class RegionSyncAvatar : IClientAPI, IClientCore @@ -509,7 +511,12 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule public void SendInstantMessage(GridInstantMessage im) { - + IMessageTransferModule m_msgTransferModule = m_scene.RequestModuleInterface(); + + if (m_msgTransferModule != null) + { + m_msgTransferModule.SendGridInstantMessageViaXMLRPC(im, delegate(bool success) { }); + } } public void SendGenericMessage(string method, List message) diff --git a/OpenSim/Region/Framework/Interfaces/IMessageTransferModule.cs b/OpenSim/Region/Framework/Interfaces/IMessageTransferModule.cs index b0b47a787b..1ecb85df92 100644 --- a/OpenSim/Region/Framework/Interfaces/IMessageTransferModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IMessageTransferModule.cs @@ -37,5 +37,8 @@ namespace OpenSim.Region.Framework.Interfaces event UndeliveredMessage OnUndeliveredMessage; void SendInstantMessage(GridInstantMessage im, MessageResultNotification result); + + //DSG: add this to the interface to enable outsiders to call it + void SendGridInstantMessageViaXMLRPC(GridInstantMessage im, MessageResultNotification result); } }