aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorMelanie Thielker2008-11-09 01:16:42 +0000
committerMelanie Thielker2008-11-09 01:16:42 +0000
commitbdf9add8d1191b08bdaa9706484ac5da1f91af52 (patch)
treeae0a9c0ffb4dabd78a7286a73423a2c6dc4e0e2b /OpenSim
parentMantis#2591. Thank you kindly, Ruud Lathrop for a patch that: (diff)
downloadopensim-SC-bdf9add8d1191b08bdaa9706484ac5da1f91af52.zip
opensim-SC-bdf9add8d1191b08bdaa9706484ac5da1f91af52.tar.gz
opensim-SC-bdf9add8d1191b08bdaa9706484ac5da1f91af52.tar.bz2
opensim-SC-bdf9add8d1191b08bdaa9706484ac5da1f91af52.tar.xz
Reintroduce transactionID to the parameter list for SendInstantMessage.
It is required by group IM and also for a proper implementation of item give, group notice attachments and offline IM.
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Framework/Client/IClientIM.cs4
-rw-r--r--OpenSim/Framework/IClientAPI.cs4
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs12
-rw-r--r--OpenSim/Region/Environment/Modules/Avatar/InstantMessage/InstantMessageModule.cs4
-rw-r--r--OpenSim/Region/Environment/Modules/Avatar/Inventory/Transfer/InventoryTransferModule.cs6
-rw-r--r--OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs2
-rw-r--r--OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs2
7 files changed, 21 insertions, 13 deletions
diff --git a/OpenSim/Framework/Client/IClientIM.cs b/OpenSim/Framework/Client/IClientIM.cs
index a3498c2..1d55d10 100644
--- a/OpenSim/Framework/Client/IClientIM.cs
+++ b/OpenSim/Framework/Client/IClientIM.cs
@@ -39,7 +39,9 @@ namespace OpenSim.Framework.Client
39 39
40 void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, 40 void SendInstantMessage(UUID fromAgent, string message, UUID toAgent,
41 string fromName, byte dialog, uint timeStamp, 41 string fromName, byte dialog, uint timeStamp,
42 bool fromGroup, byte[] binaryBucket); 42 UUID transactionID, bool fromGroup,
43 byte[] binaryBucket);
44
43 event ImprovedInstantMessage OnInstantMessage; 45 event ImprovedInstantMessage OnInstantMessage;
44 } 46 }
45} 47}
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs
index 061676e..7a3931f 100644
--- a/OpenSim/Framework/IClientAPI.cs
+++ b/OpenSim/Framework/IClientAPI.cs
@@ -741,7 +741,7 @@ namespace OpenSim.Framework
741 uint timeStamp); 741 uint timeStamp);
742 742
743 void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog, 743 void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog,
744 uint timeStamp, bool fromGroup, byte[] binaryBucket); 744 uint timeStamp, UUID transactionID, bool fromGroup, byte[] binaryBucket);
745 745
746 void SendGenericMessage(string method, List<string> message); 746 void SendGenericMessage(string method, List<string> message);
747 747
@@ -1027,4 +1027,4 @@ namespace OpenSim.Framework
1027 1027
1028 void KillEndDone(); 1028 void KillEndDone();
1029 } 1029 }
1030} \ No newline at end of file 1030}
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index bb6e62d..3a9c17e 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -1067,15 +1067,18 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1067 /// </summary> 1067 /// </summary>
1068 public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog, uint timeStamp) 1068 public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog, uint timeStamp)
1069 { 1069 {
1070 SendInstantMessage(fromAgent, message, toAgent, fromName, dialog, timeStamp, false, new byte[0]); 1070 SendInstantMessage(fromAgent, message, toAgent, fromName, dialog, timeStamp, UUID.Zero, false, new byte[0]);
1071 } 1071 }
1072 1072
1073 /// <summary> 1073 /// <summary>
1074 /// Send an instant message to this client 1074 /// Send an instant message to this client
1075 /// </summary> 1075 /// </summary>
1076 //
1077 // Don't remove transaction ID! Groups and item gives need to set it!
1078 //
1076 public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, 1079 public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent,
1077 string fromName, byte dialog, uint timeStamp, 1080 string fromName, byte dialog, uint timeStamp,
1078 bool fromGroup, byte[] binaryBucket) 1081 UUID transactionID, bool fromGroup, byte[] binaryBucket)
1079 { 1082 {
1080 if (((Scene)(m_scene)).ExternalChecks.ExternalChecksCanInstantMessage(fromAgent, toAgent)) 1083 if (((Scene)(m_scene)).ExternalChecks.ExternalChecksCanInstantMessage(fromAgent, toAgent))
1081 { 1084 {
@@ -1087,7 +1090,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1087 msg.MessageBlock.FromAgentName = Utils.StringToBytes(fromName); 1090 msg.MessageBlock.FromAgentName = Utils.StringToBytes(fromName);
1088 msg.MessageBlock.Dialog = dialog; 1091 msg.MessageBlock.Dialog = dialog;
1089 msg.MessageBlock.FromGroup = fromGroup; 1092 msg.MessageBlock.FromGroup = fromGroup;
1090 msg.MessageBlock.ID = fromAgent ^ toAgent; 1093 if (transactionID == UUID.Zero)
1094 msg.MessageBlock.ID = fromAgent ^ toAgent;
1095 else
1096 msg.MessageBlock.ID = transactionID;
1091 msg.MessageBlock.Offline = 0; 1097 msg.MessageBlock.Offline = 0;
1092 msg.MessageBlock.ParentEstateID = 0; 1098 msg.MessageBlock.ParentEstateID = 0;
1093 msg.MessageBlock.Position = new Vector3(); 1099 msg.MessageBlock.Position = new Vector3();
diff --git a/OpenSim/Region/Environment/Modules/Avatar/InstantMessage/InstantMessageModule.cs b/OpenSim/Region/Environment/Modules/Avatar/InstantMessage/InstantMessageModule.cs
index a673f7b..eb82ad7 100644
--- a/OpenSim/Region/Environment/Modules/Avatar/InstantMessage/InstantMessageModule.cs
+++ b/OpenSim/Region/Environment/Modules/Avatar/InstantMessage/InstantMessageModule.cs
@@ -162,7 +162,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.InstantMessage
162 { 162 {
163 user.ControllingClient.SendInstantMessage(fromAgentID, message, 163 user.ControllingClient.SendInstantMessage(fromAgentID, message,
164 toAgentID, fromAgentName, dialog, 164 toAgentID, fromAgentName, dialog,
165 timestamp, fromGroup, binaryBucket); 165 timestamp, UUID.Zero, fromGroup, binaryBucket);
166 // Message sent 166 // Message sent
167 return; 167 return;
168 } 168 }
@@ -179,7 +179,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.InstantMessage
179 179
180 user.ControllingClient.SendInstantMessage(fromAgentID, message, 180 user.ControllingClient.SendInstantMessage(fromAgentID, message,
181 toAgentID, fromAgentName, dialog, 181 toAgentID, fromAgentName, dialog,
182 timestamp, fromGroup, binaryBucket); 182 timestamp, UUID.Zero, fromGroup, binaryBucket);
183 // Message sent 183 // Message sent
184 return; 184 return;
185 } 185 }
diff --git a/OpenSim/Region/Environment/Modules/Avatar/Inventory/Transfer/InventoryTransferModule.cs b/OpenSim/Region/Environment/Modules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
index d8b203f..b134591 100644
--- a/OpenSim/Region/Environment/Modules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
+++ b/OpenSim/Region/Environment/Modules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
@@ -136,7 +136,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Inventory.Transfer
136 136
137 user.ControllingClient.SendInstantMessage( 137 user.ControllingClient.SendInstantMessage(
138 fromAgentID, message, toAgentID, fromAgentName, 138 fromAgentID, message, toAgentID, fromAgentName,
139 dialog, timestamp, false, binaryBucket); 139 dialog, timestamp, UUID.Zero, false, binaryBucket);
140 140
141 return; 141 return;
142 } 142 }
@@ -168,7 +168,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Inventory.Transfer
168 { 168 {
169 user.ControllingClient.SendInstantMessage( 169 user.ControllingClient.SendInstantMessage(
170 fromAgentID, message, toAgentID, fromAgentName, 170 fromAgentID, message, toAgentID, fromAgentName,
171 dialog, timestamp, false, binaryBucket); 171 dialog, timestamp, UUID.Zero, false, binaryBucket);
172 172
173 if (m_pendingOffers.ContainsKey(imSessionID)) 173 if (m_pendingOffers.ContainsKey(imSessionID))
174 { 174 {
@@ -214,7 +214,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Inventory.Transfer
214 { 214 {
215 user.ControllingClient.SendInstantMessage( 215 user.ControllingClient.SendInstantMessage(
216 fromAgentID, message, toAgentID, fromAgentName, 216 fromAgentID, message, toAgentID, fromAgentName,
217 dialog, timestamp, false, binaryBucket); 217 dialog, timestamp, UUID.Zero, false, binaryBucket);
218 218
219 if (m_pendingOffers.ContainsKey(imSessionID)) 219 if (m_pendingOffers.ContainsKey(imSessionID))
220 { 220 {
diff --git a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
index 155a01b..cf8ba94 100644
--- a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
+++ b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
@@ -476,7 +476,7 @@ namespace OpenSim.Region.Environment.Modules.World.NPC
476 476
477 } 477 }
478 478
479 public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog, uint timeStamp, bool fromGroup, byte[] binaryBucket) 479 public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog, uint timeStamp, UUID transationID, bool fromGroup, byte[] binaryBucket)
480 { 480 {
481 481
482 } 482 }
diff --git a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
index 85d51e6..789d24b 100644
--- a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
+++ b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
@@ -388,7 +388,7 @@ namespace OpenSim.Region.Examples.SimpleModule
388 388
389 } 389 }
390 390
391 public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog, uint timeStamp, bool fromGroup, byte[] binaryBucket) 391 public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog, uint timeStamp, UUID transactionID, bool fromGroup, byte[] binaryBucket)
392 { 392 {
393 393
394 } 394 }