public void AddOnAction(CoolqEvent coolqEvent) { foreach (var addon in AddOnList) { addon.Action(this, coolqEvent); } }
public void Action(Bot bot, CoolqEvent message) { Logger.Debug($"{bot.QQ} receives {message.post_type}"); if (message is CoolqMessage coolqMessage) { Logger.Debug($"{bot.QQ} receives message from {coolqMessage.user_id}"); if (!rx.IsMatch(coolqMessage.message)) { return; } var reply = string.Join("\n", bot.AddOnList .Select(addon => addon.Info()) .Where(s => !string.IsNullOrEmpty(s))); if (string.IsNullOrEmpty(reply)) { return; } switch (coolqMessage.message_type) { case "group": bot.SendGroupMsg(coolqMessage.group_id, reply, false); break; case "private": bot.SendPrivateMsg(coolqMessage.user_id, reply, false); break; case "discuss": bot.SendPrivateMsg(coolqMessage.discuss_id, reply, false); break; } } }
public void Action(Bot bot, CoolqEvent message) { Logger.Debug($"{bot.QQ} receives {message.post_type}"); if (message is CoolqMessage coolqMessage) { Logger.Debug($"{bot.QQ} receives message from {coolqMessage.user_id}"); var reply = onMessage(coolqMessage.message); if (string.IsNullOrEmpty(reply)) { return; } switch (coolqMessage.message_type) { case "group": bot.SendGroupMsg(coolqMessage.group_id, reply, false); break; case "private": bot.SendPrivateMsg(coolqMessage.user_id, reply, false); break; case "discuss": bot.SendPrivateMsg(coolqMessage.discuss_id, reply, false); break; } } }