aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs68
1 files changed, 68 insertions, 0 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 412f969..19983dc 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -1009,6 +1009,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1009 1009
1010 public event MapItemRequest OnMapItemRequest; 1010 public event MapItemRequest OnMapItemRequest;
1011 1011
1012 public event OfferCallingCard OnOfferCallingCard;
1013 public event AcceptCallingCard OnAcceptCallingCard;
1014 public event DeclineCallingCard OnDeclineCallingCard;
1015
1012 // voire si c'est necessaire 1016 // voire si c'est necessaire
1013 public void ActivateGesture(UUID assetId, UUID gestureId) 1017 public void ActivateGesture(UUID assetId, UUID gestureId)
1014 { 1018 {
@@ -6447,6 +6451,38 @@ namespace OpenSim.Region.ClientStack.LindenUDP
6447 parcelSetOtherCleanTimePacket.ParcelData.OtherCleanTime); 6451 parcelSetOtherCleanTimePacket.ParcelData.OtherCleanTime);
6448 } 6452 }
6449 break; 6453 break;
6454
6455 case PacketType.OfferCallingCard:
6456 OfferCallingCardPacket offerCallingCardPacket = (OfferCallingCardPacket)Pack;
6457 if (OnOfferCallingCard != null)
6458 {
6459 OnOfferCallingCard(this,
6460 offerCallingCardPacket.AgentBlock.DestID,
6461 offerCallingCardPacket.AgentBlock.TransactionID);
6462 }
6463 break;
6464
6465 case PacketType.AcceptCallingCard:
6466 AcceptCallingCardPacket acceptCallingCardPacket = (AcceptCallingCardPacket)Pack;
6467 // according to http://wiki.secondlife.com/wiki/AcceptCallingCard FolderData should
6468 // contain exactly one entry
6469 if (OnAcceptCallingCard != null && acceptCallingCardPacket.FolderData.Length > 0)
6470 {
6471 OnAcceptCallingCard(this,
6472 acceptCallingCardPacket.TransactionBlock.TransactionID,
6473 acceptCallingCardPacket.FolderData[0].FolderID);
6474 }
6475 break;
6476
6477 case PacketType.DeclineCallingCard:
6478 DeclineCallingCardPacket declineCallingCardPacket = (DeclineCallingCardPacket)Pack;
6479 if (OnDeclineCallingCard != null)
6480 {
6481 OnDeclineCallingCard(this,
6482 declineCallingCardPacket.TransactionBlock.TransactionID);
6483 }
6484 break;
6485
6450 default: 6486 default:
6451 m_log.Warn("[CLIENT]: unhandled packet " + Pack.ToString()); 6487 m_log.Warn("[CLIENT]: unhandled packet " + Pack.ToString());
6452 break; 6488 break;
@@ -7161,6 +7197,38 @@ namespace OpenSim.Region.ClientStack.LindenUDP
7161 7197
7162 } 7198 }
7163 7199
7200 public void SendOfferCallingCard(UUID srcID, UUID transactionID)
7201 {
7202 // a bit special, as this uses AgentID to store the source instead
7203 // of the destination. The destination (the receiver) goes into destID
7204 OfferCallingCardPacket p = (OfferCallingCardPacket)PacketPool.Instance.GetPacket(PacketType.OfferCallingCard);
7205 p.AgentData.AgentID = srcID;
7206 p.AgentData.SessionID = UUID.Zero;
7207 p.AgentBlock.DestID = AgentId;
7208 p.AgentBlock.TransactionID = transactionID;
7209 OutPacket(p, ThrottleOutPacketType.Task);
7210 }
7211
7212 public void SendAcceptCallingCard(UUID transactionID)
7213 {
7214 AcceptCallingCardPacket p = (AcceptCallingCardPacket)PacketPool.Instance.GetPacket(PacketType.AcceptCallingCard);
7215 p.AgentData.AgentID = AgentId;
7216 p.AgentData.SessionID = UUID.Zero;
7217 p.FolderData = new AcceptCallingCardPacket.FolderDataBlock[1];
7218 p.FolderData[0] = new AcceptCallingCardPacket.FolderDataBlock();
7219 p.FolderData[0].FolderID = UUID.Zero;
7220 OutPacket(p, ThrottleOutPacketType.Task);
7221 }
7222
7223 public void SendDeclineCallingCard(UUID transactionID)
7224 {
7225 DeclineCallingCardPacket p = (DeclineCallingCardPacket)PacketPool.Instance.GetPacket(PacketType.DeclineCallingCard);
7226 p.AgentData.AgentID = AgentId;
7227 p.AgentData.SessionID = UUID.Zero;
7228 p.TransactionBlock.TransactionID = transactionID;
7229 OutPacket(p, ThrottleOutPacketType.Task);
7230 }
7231
7164 public void KillEndDone() 7232 public void KillEndDone()
7165 { 7233 {
7166 KillPacket kp = new KillPacket(); 7234 KillPacket kp = new KillPacket();