private static int EventSystemGroupMemberDecrease(int subType, int sendTime, long fromGroup, long fromQQ, long beingOperateQQ) { CqGroupMemberDecreaseEventArgs args = new CqGroupMemberDecreaseEventArgs(); args.SendTime = NativeConvert.FotmatUnixTime(sendTime.ToString()); args.FromGroup = fromGroup; args.FromQQ = fromQQ; args.BeingOperateQQ = beingOperateQQ; args.Handler = false; if (subType == 1) // 群员离开 { args.FromQQ = beingOperateQQ; // 此时 FormQQ 为操作者QQ ReceiveMemberLeave(null, args); } else if (subType == 2) { ReceiveMemberRemove(null, args); } else { Common.CqApi.AddLoger(LogerLevel.Info, "Native提示", "EventSystemGroupMemberDecrease 方法发现新的消息类型"); } return((int)(args.Handler ? MessageHanding.Intercept : MessageHanding.Ignored)); //如果处理过就截断消息 }
/// <summary> /// Type=102 群事件 - 群成员减少 - 成员离开<para/> /// 处理收到的群成员减少 (成员离开) 事件 /// </summary> /// <param name="sender">事件的触发对象</param> /// <param name="e">事件的附加参数</param> public void ReceiveGroupMemberLeave(object sender, CqGroupMemberDecreaseEventArgs e) { // 本子程序会在酷Q【线程】中被调用, 请注意使用对象等需要初始化(ConIntialize, CoUninitialize). // 这里处理消息 e.Handler = LuaEnv.LuaEnv.RunLua( "", "envent/ReceiveGroupMemberLeave.lua", new ArrayList() { "fromqq", e.BeingOperateQQ, "operateqq", e.FromQQ, "fromgroup", e.FromGroup, }); //e.Handled = false; // 关于返回说明, 请参见 "Event_FriendMessage.ReceiveFriendMessage" 方法 }
private static int Evnet__eventSystem_GroupMemberDecrease(int subType, int sendTime, long fromGroup, long fromQQ, long beingOperateQQ) { CqGroupMemberDecreaseEventArgs args = new CqGroupMemberDecreaseEventArgs(6, sendTime.ToDateTime(), fromGroup, fromQQ, beingOperateQQ); if (subType == 1) { if (ReceiveMemberLeave_6 != null) { ReceiveMemberLeave_6(null, args); } } else if (subType == 2) { if (ReceiveMemberRemove_6 != null) { ReceiveMemberRemove_6(null, args); } } return(Convert.ToInt32(args.Handler)); }
/// <summary> /// 群成员减少:被移除 /// </summary> /// <param name="e"></param> public static int ReceiveGroupMemberRemove(CqGroupMemberDecreaseEventArgs e) { return(1); }
public static int OQ_Event(string micqq, int type, int lowtype, string from, string fromqq, string bqq, string msg, string MsgNum, string msgID, string teamsg, string json, int note) { int ret = 1; switch (type) { case 12000: ret = Event.Event_AppMain.CqStartup(); break; case 12001: ret = Event.Event_AppMain.CqAppEnable(); break; case 12002: ret = Event.Event_AppMain.CqAppDisable(); break; } if (type > 1100 && type < 1110) { CqQQStuatsChangeEventArgs e = new CqQQStuatsChangeEventArgs(Convert.ToInt64(micqq), type); ret = Event.Event_QQStauts.LoginSucess(e); } else if (type < 0) //未定义事件 { } else if (type == 1) //好友消息 { CqPrivateMessageEventArgs e = new CqPrivateMessageEventArgs(msgID, MsgNum, Convert.ToInt64(micqq), Convert.ToInt64(from), msg); ret = Event.Event_Private.ReceiveFriendMessage(e); } else if (type == 2) //群消息 { CqGroupMessageEventArgs e = new CqGroupMessageEventArgs("群聊消息", msgID, MsgNum, Convert.ToInt64(micqq), Convert.ToInt64(from), Convert.ToInt64(fromqq), msg); ret = Event.Event_Group.ReceiveGroupMessage(e); } else if (type == 4) //群私聊消息 { CqGroupPrivateMessageEventArgs e = new CqGroupPrivateMessageEventArgs(msgID, MsgNum, Convert.ToInt64(micqq), Convert.ToInt64(from), Convert.ToInt64(fromqq), msg); ret = Event.Event_Group.ReceiveGroupPrivateMessage(e); } else if (type == 6) //收到转账消息 { CqTransferAccountsEventArgs e = new CqTransferAccountsEventArgs(Convert.ToInt64(micqq), Convert.ToInt64(from), lowtype, msg); ret = Event.Event_Private.ReceiveTranceAccounts(e); } else if (type == 101) //收到好友申请 { CqAddFriendRequestEventArgs e = new CqAddFriendRequestEventArgs(DateTime.Now, Convert.ToInt64(micqq), Convert.ToInt64(from), msg, teamsg); ret = Event.Event_Private.ReceiveFriendAddRequest(e); } else if (type == 202) //群成员被移除 { CqGroupMemberDecreaseEventArgs e = new CqGroupMemberDecreaseEventArgs(DateTime.Now, Convert.ToInt64(from), Convert.ToInt64(micqq), Convert.ToInt64(fromqq), Convert.ToInt64(bqq)); ret = Event.Event_Group.ReceiveGroupMemberRemove(e); } else if (type == 212) //群成员主动进群 { CqGroupMemberIncreaseEventArgs e = new CqGroupMemberIncreaseEventArgs(DateTime.Now, Convert.ToInt64(micqq), Convert.ToInt64(from), Convert.ToInt64(fromqq), Convert.ToInt64(bqq)); ret = Event.Event_Group.ReceiveGroupMemberPass(e); } else if (type == 201) //群成员退出群 { CqGroupMemberDecreaseEventArgs e = new CqGroupMemberDecreaseEventArgs(DateTime.Now, Convert.ToInt64(from), Convert.ToInt64(micqq), Convert.ToInt64(fromqq), Convert.ToInt64(bqq)); ret = Event.Event_Group.ReceiveGroupMemberLeave(e); } else if (type == 213) //有人申请进群 { CqAddGroupRequestEventArgs e = new CqAddGroupRequestEventArgs(DateTime.Now, Convert.ToInt64(from), Convert.ToInt64(micqq), Convert.ToInt64(fromqq), msg, teamsg); ret = Event.Event_Group.ReceiveAddGroupRequest(e); } else if (type == 214) //机器人被邀请事件 { CqAddGroupRequestEventArgs e = new CqAddGroupRequestEventArgs(DateTime.Now, Convert.ToInt64(from), Convert.ToInt64(micqq), Convert.ToInt64(fromqq), msg, teamsg); ret = Event.Event_Group.ReceiveAddGroupBeInvitee(e); } else if (type == 219) //群成员被邀请进群 { CqGroupMemberIncreaseEventArgs e = new CqGroupMemberIncreaseEventArgs(DateTime.Now, Convert.ToInt64(micqq), Convert.ToInt64(from), Convert.ToInt64(fromqq), Convert.ToInt64(bqq)); ret = Event.Event_Group.ReceiveGroupMemberBeInvitee(e); } return(1); }