Exemplo n.º 1
0
        private void Message_Get(string data)
        {
            Task.Run(() =>
            {
                Poll();
            });

            JsonPollMessage poll = (JsonPollMessage)JsonConvert.DeserializeObject(data, typeof(JsonPollMessage));

            if (poll.retcode != 0)
            {
                var msg = message.ErrorMsg(poll);
                if (!string.IsNullOrEmpty(msg))
                {
                    ptwebqq = msg;
                }
            }
            else if (poll.result != null && poll.result.Count > 0)
            {
                for (int i = 0; i < poll.result.Count; i++)
                {
                    switch (poll.result[i].poll_type)
                    {
                    case "kick_message":
                        message.Running = false;
                        break;

                    case "message":
                        if (ProcessMsg)
                        {
                            message.ProcessMsg(poll.result[i].value, SendMsgAction);
                        }
                        break;

                    case "group_message":
                        if (ProcessGroupMsg)
                        {
                            message.GroupMessage(poll.result[i].value, SendMsgAction);
                        }
                        break;

                    case "discu_message":
                        if (ProcessDiscussMsg)
                        {
                            message.DisscussMessage(poll.result[i].value, SendMsgAction);
                        }
                        break;

                    default:
                        //poll.result[i].poll_type;
                        break;
                    }
                }
            }
        }
Exemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="poll"></param>
        /// <returns></returns>
        public string ErrorMsg(JsonPollMessage poll)
        {
            int TempCount103 = Count103;

            Count103 = 0;
            if (poll.retcode == 102)
            {
                return("");
            }
            else if (poll.retcode == 103)
            {
                Count103 = TempCount103 + 1;
                if (Count103 > 20)
                {
                    Running = false;
                }
                return("");
            }
            else if (poll.retcode == 116)
            {
                return(poll.p);
            }
            else if (poll.retcode == 108 || poll.retcode == 114)
            {
                Running = false;
                return("");
            }
            else if (poll.retcode == 120 || poll.retcode == 121)
            {
                Running = false;
                return("");
            }
            else if (poll.retcode == 100006 || poll.retcode == 100003)
            {
                Running = false;
                return("");
            }
            return("");
        }