diff options
author | Justin Clark-Casey (justincc) | 2014-05-12 23:30:44 +0100 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2014-05-12 23:38:48 +0100 |
commit | 87e2668529af4479e3dd94215193ff63ae685148 (patch) | |
tree | a5b8bc40112e3e4f749b372989acdde02e804ec5 /OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs | |
parent | Add send group notice regression test for when MessageOnlineUsersOnly=true (diff) | |
download | opensim-SC-87e2668529af4479e3dd94215193ff63ae685148.zip opensim-SC-87e2668529af4479e3dd94215193ff63ae685148.tar.gz opensim-SC-87e2668529af4479e3dd94215193ff63ae685148.tar.bz2 opensim-SC-87e2668529af4479e3dd94215193ff63ae685148.tar.xz |
For XmlRpcGroups (Flotsam) module, when MessageOnlineUsersOnly = true, handle notices to offline users directly as known undeliverable messages rather than discarding or attempting delivery.
Offline notices can still be controlled with the [Messaging] ForwardOfflineGroupMessages setting.
Looks to address more of http://opensimulator.org/mantis/view.php?id=7037
Only for Flotsam now for testing, but if approach works should be possible with core offline notices as well.
Diffstat (limited to 'OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs')
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs index 40a400f..7aa7123 100644 --- a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs | |||
@@ -181,7 +181,7 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | |||
181 | SendGridInstantMessageViaXMLRPC(im, result); | 181 | SendGridInstantMessageViaXMLRPC(im, result); |
182 | } | 182 | } |
183 | 183 | ||
184 | private void HandleUndeliveredMessage(GridInstantMessage im, MessageResultNotification result) | 184 | public void HandleUndeliverableMessage(GridInstantMessage im, MessageResultNotification result) |
185 | { | 185 | { |
186 | UndeliveredMessage handlerUndeliveredMessage = OnUndeliveredMessage; | 186 | UndeliveredMessage handlerUndeliveredMessage = OnUndeliveredMessage; |
187 | 187 | ||
@@ -511,14 +511,14 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | |||
511 | if (upd.RegionID == prevRegionID) | 511 | if (upd.RegionID == prevRegionID) |
512 | { | 512 | { |
513 | // m_log.Error("[GRID INSTANT MESSAGE]: Unable to deliver an instant message"); | 513 | // m_log.Error("[GRID INSTANT MESSAGE]: Unable to deliver an instant message"); |
514 | HandleUndeliveredMessage(im, result); | 514 | HandleUndeliverableMessage(im, result); |
515 | return; | 515 | return; |
516 | } | 516 | } |
517 | } | 517 | } |
518 | else | 518 | else |
519 | { | 519 | { |
520 | // m_log.Error("[GRID INSTANT MESSAGE]: Unable to deliver an instant message"); | 520 | // m_log.Error("[GRID INSTANT MESSAGE]: Unable to deliver an instant message"); |
521 | HandleUndeliveredMessage(im, result); | 521 | HandleUndeliverableMessage(im, result); |
522 | return; | 522 | return; |
523 | } | 523 | } |
524 | } | 524 | } |
@@ -567,12 +567,12 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | |||
567 | else | 567 | else |
568 | { | 568 | { |
569 | m_log.WarnFormat("[GRID INSTANT MESSAGE]: Unable to find region {0}", upd.RegionID); | 569 | m_log.WarnFormat("[GRID INSTANT MESSAGE]: Unable to find region {0}", upd.RegionID); |
570 | HandleUndeliveredMessage(im, result); | 570 | HandleUndeliverableMessage(im, result); |
571 | } | 571 | } |
572 | } | 572 | } |
573 | else | 573 | else |
574 | { | 574 | { |
575 | HandleUndeliveredMessage(im, result); | 575 | HandleUndeliverableMessage(im, result); |
576 | } | 576 | } |
577 | } | 577 | } |
578 | 578 | ||