aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--OpenSim/Framework/GridInstantMessage.cs19
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs8
-rw-r--r--OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs6
3 files changed, 9 insertions, 24 deletions
diff --git a/OpenSim/Framework/GridInstantMessage.cs b/OpenSim/Framework/GridInstantMessage.cs
index 53d98db..6954c64 100644
--- a/OpenSim/Framework/GridInstantMessage.cs
+++ b/OpenSim/Framework/GridInstantMessage.cs
@@ -47,7 +47,6 @@ namespace OpenSim.Framework
47 public uint ParentEstateID; 47 public uint ParentEstateID;
48 public Guid RegionID; 48 public Guid RegionID;
49 public uint timestamp; 49 public uint timestamp;
50 public Guid ID;
51 50
52 public GridInstantMessage() 51 public GridInstantMessage()
53 { 52 {
@@ -68,8 +67,7 @@ namespace OpenSim.Framework
68 binaryBucket = im.binaryBucket; 67 binaryBucket = im.binaryBucket;
69 RegionID = im.RegionID; 68 RegionID = im.RegionID;
70 ParentEstateID = im.ParentEstateID; 69 ParentEstateID = im.ParentEstateID;
71 ID = im.ID; 70
72
73 if (addTimestamp) 71 if (addTimestamp)
74 timestamp = (uint)Util.UnixTimeSinceEpoch(); 72 timestamp = (uint)Util.UnixTimeSinceEpoch();
75 } 73 }
@@ -78,7 +76,7 @@ namespace OpenSim.Framework
78 string _fromAgentName, UUID _toAgentID, 76 string _fromAgentName, UUID _toAgentID,
79 byte _dialog, bool _fromGroup, string _message, 77 byte _dialog, bool _fromGroup, string _message,
80 UUID _imSessionID, bool _offline, Vector3 _position, 78 UUID _imSessionID, bool _offline, Vector3 _position,
81 byte[] _binaryBucket, UUID _ID, bool addTimestamp) 79 byte[] _binaryBucket, bool addTimestamp)
82 { 80 {
83 fromAgentID = _fromAgentID.Guid; 81 fromAgentID = _fromAgentID.Guid;
84 fromAgentName = _fromAgentName; 82 fromAgentName = _fromAgentName;
@@ -87,7 +85,6 @@ namespace OpenSim.Framework
87 fromGroup = _fromGroup; 85 fromGroup = _fromGroup;
88 message = _message; 86 message = _message;
89 imSessionID = _imSessionID.Guid; 87 imSessionID = _imSessionID.Guid;
90 ID = _ID.Guid;
91 88
92 if (_offline) 89 if (_offline)
93 offline = 1; 90 offline = 1;
@@ -107,21 +104,11 @@ namespace OpenSim.Framework
107 } 104 }
108 105
109 public GridInstantMessage(IScene scene, UUID _fromAgentID, 106 public GridInstantMessage(IScene scene, UUID _fromAgentID,
110 string _fromAgentName, UUID _toAgentID,
111 byte _dialog, bool _fromGroup, string _message,
112 UUID _imSessionID, bool _offline, Vector3 _position,
113 byte[] _binaryBucket, bool addTimestamp) : this (scene, _fromAgentID,
114 _fromAgentName, _toAgentID, _dialog, _fromGroup, _message,
115 _imSessionID, _offline, _position, _binaryBucket, UUID.Zero, addTimestamp)
116 {
117 }
118
119 public GridInstantMessage(IScene scene, UUID _fromAgentID,
120 string _fromAgentName, UUID _toAgentID, byte _dialog, 107 string _fromAgentName, UUID _toAgentID, byte _dialog,
121 string _message, bool _offline, 108 string _message, bool _offline,
122 Vector3 _position) : this(scene, _fromAgentID, _fromAgentName, 109 Vector3 _position) : this(scene, _fromAgentID, _fromAgentName,
123 _toAgentID, _dialog, false, _message, 110 _toAgentID, _dialog, false, _message,
124 _fromAgentID ^ _toAgentID, _offline, _position, new byte[0], UUID.Zero, true) 111 _fromAgentID ^ _toAgentID, _offline, _position, new byte[0], true)
125 { 112 {
126 } 113 }
127 } 114 }
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index 0bb5dc6..26fc85e 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -961,11 +961,15 @@ namespace OpenSim.Region.ClientStack.LindenUDP
961 = (ImprovedInstantMessagePacket)PacketPool.Instance.GetPacket(PacketType.ImprovedInstantMessage); 961 = (ImprovedInstantMessagePacket)PacketPool.Instance.GetPacket(PacketType.ImprovedInstantMessage);
962 962
963 msg.AgentData.AgentID = new UUID(im.fromAgentID); 963 msg.AgentData.AgentID = new UUID(im.fromAgentID);
964 msg.AgentData.SessionID = new UUID(im.imSessionID); 964 msg.AgentData.SessionID = UUID.Zero;
965 msg.MessageBlock.FromAgentName = Util.StringToBytes256(im.fromAgentName); 965 msg.MessageBlock.FromAgentName = Util.StringToBytes256(im.fromAgentName);
966 msg.MessageBlock.Dialog = im.dialog; 966 msg.MessageBlock.Dialog = im.dialog;
967 msg.MessageBlock.FromGroup = im.fromGroup; 967 msg.MessageBlock.FromGroup = im.fromGroup;
968 msg.MessageBlock.ID = new UUID(im.ID); 968 // this is odd
969 if (im.imSessionID == UUID.Zero.Guid)
970 msg.MessageBlock.ID = new UUID(im.fromAgentID) ^ new UUID(im.toAgentID);
971 else
972 msg.MessageBlock.ID = new UUID(im.imSessionID);
969 msg.MessageBlock.Offline = im.offline; 973 msg.MessageBlock.Offline = im.offline;
970 msg.MessageBlock.ParentEstateID = im.ParentEstateID; 974 msg.MessageBlock.ParentEstateID = im.ParentEstateID;
971 msg.MessageBlock.Position = im.Position; 975 msg.MessageBlock.Position = im.Position;
diff --git a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs
index 1366103..6b120fb 100644
--- a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs
@@ -216,7 +216,6 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
216 UUID fromAgentID = UUID.Zero; 216 UUID fromAgentID = UUID.Zero;
217 UUID toAgentID = UUID.Zero; 217 UUID toAgentID = UUID.Zero;
218 UUID imSessionID = UUID.Zero; 218 UUID imSessionID = UUID.Zero;
219 UUID imID = UUID.Zero;
220 uint timestamp = 0; 219 uint timestamp = 0;
221 string fromAgentName = ""; 220 string fromAgentName = "";
222 string message = ""; 221 string message = "";
@@ -263,7 +262,6 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
263 UUID.TryParse((string)requestData["to_agent_id"], out toAgentID); 262 UUID.TryParse((string)requestData["to_agent_id"], out toAgentID);
264 UUID.TryParse((string)requestData["im_session_id"], out imSessionID); 263 UUID.TryParse((string)requestData["im_session_id"], out imSessionID);
265 UUID.TryParse((string)requestData["region_id"], out RegionID); 264 UUID.TryParse((string)requestData["region_id"], out RegionID);
266 UUID.TryParse((string)requestData["id"], out imID);
267 265
268 try 266 try
269 { 267 {
@@ -391,8 +389,6 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
391 gim.ParentEstateID = ParentEstateID; 389 gim.ParentEstateID = ParentEstateID;
392 gim.Position = Position; 390 gim.Position = Position;
393 gim.binaryBucket = binaryBucket; 391 gim.binaryBucket = binaryBucket;
394 gim.ID = imID.Guid;
395
396 392
397 // Trigger the Instant message in the scene. 393 // Trigger the Instant message in the scene.
398 foreach (Scene scene in m_Scenes) 394 foreach (Scene scene in m_Scenes)
@@ -702,8 +698,6 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
702 gim["from_agent_session"] = UUID.Zero.ToString(); 698 gim["from_agent_session"] = UUID.Zero.ToString();
703 gim["to_agent_id"] = msg.toAgentID.ToString(); 699 gim["to_agent_id"] = msg.toAgentID.ToString();
704 gim["im_session_id"] = msg.imSessionID.ToString(); 700 gim["im_session_id"] = msg.imSessionID.ToString();
705 if(msg.ID != Guid.Empty)
706 gim["id"] = msg.ID.ToString();
707 gim["timestamp"] = msg.timestamp.ToString(); 701 gim["timestamp"] = msg.timestamp.ToString();
708 gim["from_agent_name"] = msg.fromAgentName; 702 gim["from_agent_name"] = msg.fromAgentName;
709 gim["message"] = msg.message; 703 gim["message"] = msg.message;