//private MessageController messageController = new MessageController();
        public void ProcessGroupMessage(PrivateMessageFromGroupReceivedContext context)
        {
            string message = context.Message;

            if (message == "" || message.Length == 0 || message == null)
            {
                return;
            }
            IDatabase redis = RedisHelper.getRedis();

            // 判断用户是否在缓冲中
            if (redis.StringGet(context.FromQq).IsNull)
            {
                redis.StringSet(context.FromQq, "flag");
                redis.KeyExpire(context.FromQq, new TimeSpan(10000000 * Convert.ToInt16(Constants.sleepTime)));
            }
            else
            {
                string tmpStr = "为防止造成刷屏,您每次使用机器人的时间间隔" + Constants.sleepTime + "秒哦!";
                _mahuaApi.SendPrivateMessage(context.FromQq, tmpStr);
                return;
            };
            if (message == null || message == "" || message.Length == 0)
            {
                //
            }
            else
            {
                string tmpStr = MessageController.main(message, context.FromQq).SendMessage;
                if (tmpStr == null || tmpStr == "" || tmpStr.Length == 0)
                {
                    tmpStr = "\n无数据!";
                }
                if (tmpStr != "" && tmpStr.Length > 0)
                {
                    _mahuaApi.SendPrivateMessage(context.FromQq, tmpStr);
                }
            }
        }
Example #2
0
        System.Timers.Timer timer1 = new System.Timers.Timer(300000);//定义计时器,单位毫秒

        public void ProcessGroupMessage(PrivateMessageFromGroupReceivedContext context)
        {
            _mahuaApi.SendPrivateMessage(context.FromQq)
            .Text("输入解除口球来随机解除口球,解除概率为")
            .Text((100 - Common1.RandMin).ToString())
            .Text("%")
            .Done();

            if (Common1.i <= Common1.p)
            {
                if (context.Message == "解除口球")
                {
                    if (context.FromQq == Common1.a)
                    {
                        Common1.i++;
                    }
                    Common1.a = context.FromQq;
                    Random ran     = new Random();
                    int    RandKey = ran.Next(0, 100);
                    if (RandKey >= Common1.RandMin)
                    {
                        _mahuaApi.RemoveBanGroupMember("675236681", context.FromQq);
                        _mahuaApi.SendPrivateMessage(context.FromQq)
                        .Text("解除成功")
                        .Done();
                    }
                }
            }
            else
            {
                _mahuaApi.SendPrivateMessage(context.FromQq)
                .Text("本时段解禁尝试次数已达上限,请等待计数器自动回复后再试(每5分钟自动回复1点)")
                .Done();
            }
            timer1.Enabled   = true;
            timer1.Elapsed  += new System.Timers.ElapsedEventHandler(zero);
            timer1.AutoReset = true;
        }
 public void ProcessGroupMessage(PrivateMessageFromGroupReceivedContext context)
 {
     //异步发送消息
     Task.Factory.StartNew(() =>
     {
         using (var robotSession = MahuaRobotManager.Instance.CreateSession())
         {
             string ReturnMessage = string.Empty;
             var api          = robotSession.MahuaApi;
             string Message   = context.Message;
             string keyword   = GetKeyWord(Message);
             string resultUrl = @"http://52lequan.cn/index.php?r=l&kw=" + System.Web.HttpUtility.UrlEncode(keyword, System.Text.Encoding.UTF8);
             if (keyword != "NoKey")
             {
                 ReturnMessage = string.Format("关键词:{0}\n链接:{1}\n复制链接在浏览器中打开\n如果没有你想要的结果,点击右侧搜索全网", keyword, resultUrl);
             }
             else
             {
                 ReturnMessage = "没有识别出您想要的商品,请再输入\n我想要+商品名称\n进行搜索,如需人工服务,请联系所在群管理员";
             }
             api.SendPrivateMessage(context.FromQq, ReturnMessage);
         }
     });
 }
Example #4
0
 public void ProcessGroupMessage(PrivateMessageFromGroupReceivedContext context)
 {
     new PrivateMessage(context.FromQq, context.Message, PrivateMessage.TYPE.GROUP);
 }