diff options
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r-- | OpenSim/Region/ClientStack/ClientView.API.cs | 38 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/ClientView.ProcessPackets.cs | 2 |
2 files changed, 22 insertions, 18 deletions
diff --git a/OpenSim/Region/ClientStack/ClientView.API.cs b/OpenSim/Region/ClientStack/ClientView.API.cs index e88995f..5be82dd 100644 --- a/OpenSim/Region/ClientStack/ClientView.API.cs +++ b/OpenSim/Region/ClientStack/ClientView.API.cs | |||
@@ -245,23 +245,29 @@ namespace OpenSim.Region.ClientStack | |||
245 | /// <remarks>TODO</remarks> | 245 | /// <remarks>TODO</remarks> |
246 | /// <param name="message"></param> | 246 | /// <param name="message"></param> |
247 | /// <param name="target"></param> | 247 | /// <param name="target"></param> |
248 | public void SendInstantMessage(string message, LLUUID target) | 248 | public void SendInstantMessage(string message, LLUUID target, string fromName) |
249 | { | 249 | { |
250 | ImprovedInstantMessagePacket msg = new ImprovedInstantMessagePacket(); | 250 | if (message != "typing") |
251 | msg.AgentData.AgentID = this.AgentID; | 251 | { |
252 | msg.AgentData.SessionID = this.SessionID; | 252 | Encoding enc = Encoding.ASCII; |
253 | 253 | ImprovedInstantMessagePacket msg = new ImprovedInstantMessagePacket(); | |
254 | msg.MessageBlock.Dialog = 0; | 254 | msg.AgentData.AgentID = this.AgentID; |
255 | msg.MessageBlock.FromGroup = false; | 255 | msg.AgentData.SessionID = this.SessionID; |
256 | msg.MessageBlock.ID = target.Combine(this.AgentID); | 256 | msg.MessageBlock.FromAgentName = enc.GetBytes(fromName + " \0"); |
257 | msg.MessageBlock.Offline = 0; | 257 | msg.MessageBlock.Dialog = 0; |
258 | msg.MessageBlock.ParentEstateID = 0; | 258 | msg.MessageBlock.FromGroup = false; |
259 | msg.MessageBlock.Position = new LLVector3(); | 259 | msg.MessageBlock.ID = target.Combine(this.SecureSessionID); |
260 | msg.MessageBlock.RegionID = new LLUUID(); | 260 | msg.MessageBlock.Offline = 0; |
261 | msg.MessageBlock.Timestamp = 0; | 261 | msg.MessageBlock.ParentEstateID = 0; |
262 | msg.MessageBlock.ToAgentID = target; | 262 | msg.MessageBlock.Position = new LLVector3(); |
263 | 263 | msg.MessageBlock.RegionID = new LLUUID(); | |
264 | this.OutPacket(msg); | 264 | msg.MessageBlock.Timestamp = 0; |
265 | msg.MessageBlock.ToAgentID = target; | ||
266 | msg.MessageBlock.Message = enc.GetBytes(message + "\0"); | ||
267 | msg.MessageBlock.BinaryBucket = new byte[0]; | ||
268 | |||
269 | this.OutPacket(msg); | ||
270 | } | ||
265 | } | 271 | } |
266 | 272 | ||
267 | /// <summary> | 273 | /// <summary> |
diff --git a/OpenSim/Region/ClientStack/ClientView.ProcessPackets.cs b/OpenSim/Region/ClientStack/ClientView.ProcessPackets.cs index 3265898..e5249f9 100644 --- a/OpenSim/Region/ClientStack/ClientView.ProcessPackets.cs +++ b/OpenSim/Region/ClientStack/ClientView.ProcessPackets.cs | |||
@@ -102,9 +102,7 @@ namespace OpenSim.Region.ClientStack | |||
102 | this.OnInstantMessage(msgpack.AgentData.AgentID, msgpack.MessageBlock.ToAgentID, | 102 | this.OnInstantMessage(msgpack.AgentData.AgentID, msgpack.MessageBlock.ToAgentID, |
103 | msgpack.MessageBlock.Timestamp, IMfromName, IMmessage); | 103 | msgpack.MessageBlock.Timestamp, IMfromName, IMmessage); |
104 | } | 104 | } |
105 | |||
106 | break; | 105 | break; |
107 | |||
108 | case PacketType.RezObject: | 106 | case PacketType.RezObject: |
109 | RezObjectPacket rezPacket = (RezObjectPacket)Pack; | 107 | RezObjectPacket rezPacket = (RezObjectPacket)Pack; |
110 | AgentInventory inven = this.m_inventoryCache.GetAgentsInventory(this.AgentID); | 108 | AgentInventory inven = this.m_inventoryCache.GetAgentsInventory(this.AgentID); |