diff options
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; |