void Self_IM(object sender, InstantMessageEventArgs e) { if(m_GroupInvitation != null && e.IM.Dialog == InstantMessageDialog.GroupInvitation) { GroupInvitationEventArgs args = new GroupInvitationEventArgs(e.Simulator, e.IM.FromAgentID, e.IM.FromAgentName, e.IM.Message); OnGroupInvitation(args); if (args.Accept) { Client.Self.InstantMessage("name", e.IM.FromAgentID, "message", e.IM.IMSessionID, InstantMessageDialog.GroupInvitationAccept, InstantMessageOnline.Online, Client.Self.SimPosition, UUID.Zero, Utils.EmptyBytes); } else { Client.Self.InstantMessage("name", e.IM.FromAgentID, "message", e.IM.IMSessionID, InstantMessageDialog.GroupInvitationDecline, InstantMessageOnline.Online, Client.Self.SimPosition, UUID.Zero, new byte[1] { 0 }); } } }
/// <summary>Raises the GroupInvitation event</summary> /// <param name="e">An GroupInvitationEventArgs object containing the /// data returned from the simulator</param> protected virtual void OnGroupInvitation(GroupInvitationEventArgs e) { EventHandler<GroupInvitationEventArgs> handler = m_GroupInvitation; if (handler != null) handler(this, e); }