Пример #1
0
        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            switch (comboBox1.SelectedIndex)
            {
            case 1: chat = Chat_Type.LOBBY_CHAT_ALL; break;

            case 2: chat = Chat_Type.LOBBY_CHAT_CLAN; break;

            case 3: chat = Chat_Type.LOBBY_CHAT_WHISPER; break;
            }
        }
Пример #2
0
        /// <summary>
        /// 清除消息未读状态
        /// </summary>
        /// <param name="accessToken"></param>
        /// <param name="opUser">会话所有者的userid</param>
        /// <param name="type">会话类型:single|group,分别表示:群聊|单聊</param>
        /// <param name="chatIdOrUserId">会话值,为userid|chatid,分别表示:成员id|会话id,单聊是userid,群聊是chatid</param>
        /// <param name="timeOut"></param>
        /// <returns></returns>
        public static QyJsonResult ClearNotify(string accessToken, string opUser, Chat_Type type, string chatIdOrUserId, int timeOut = Config.TIME_OUT)
        {
            var url = string.Format("https://qyapi.weixin.qq.com/cgi-bin/chat/clearnotify?access_token={0}", accessToken.AsUrlData());

            var data = new
            {
                op_user = opUser,
                chat    = new
                {
                    type,
                    id = chatIdOrUserId
                }
            };

            return(CommonJsonSend.Send <QyJsonResult>(null, url, data, CommonJsonSendType.POST, timeOut));
        }
Пример #3
0
        /// <summary>
        /// 清除消息未读状态
        /// </summary>
        /// <param name="accessToken"></param>
        /// <param name="opUser">会话所有者的userid</param>
        /// <param name="type">会话类型:single|group,分别表示:群聊|单聊</param>
        /// <param name="chatIdOrUserId">会话值,为userid|chatid,分别表示:成员id|会话id,单聊是userid,群聊是chatid</param>
        /// <param name="timeOut"></param>
        /// <returns></returns>
        public static QyJsonResult ClearNotify(string accessToken, string opUser, Chat_Type type, string chatIdOrUserId, int timeOut = Config.TIME_OUT)
        {
            var url = string.Format("https://qyapi.WeiXin.qq.com/cgi-bin/chat/clearnotify?access_token={0}", accessToken);

            var data = new
            {
                op_user = opUser,
                chat = new
                {
                    type = type,
                    id = chatIdOrUserId
                }
            };

            return CommonAPIs.CommonJsonSend.Send<QyJsonResult>(null, url, data, CommonJsonSendType.POST, timeOut);
        }
Пример #4
0
        static public void Player_RouteChatRaw(IChatTarget target, String from, string message, byte bong, Chat_Type chatType)
        {
            SC_Chat schat = new SC_Chat();

            schat.chatType = chatType;

            schat.from    = from;
            schat.message = message;
            schat.bong    = bong;

            //Go!
            foreach (Player player in target.getChatTargets())
            {
                player._client.sendReliable(schat);
            }
        }
Пример #5
0
        public static async Task <WorkJsonResult> ClearNotifyAsync(string accessTokenOrAppKey, string opUser, Chat_Type type, string chatIdOrUserId, int timeOut = Config.TIME_OUT)
        {
            return(await ApiHandlerWapper.TryCommonApiAsync(async accessToken =>
            {
                var url = string.Format(Config.ApiWorkHost + "/cgi-bin/chat/clearnotify?access_token={0}", accessToken.AsUrlData());

                var data = new
                {
                    op_user = opUser,
                    chat = new
                    {
                        type = type,
                        id = chatIdOrUserId
                    }
                };

                return await Senparc.Weixin.CommonAPIs.CommonJsonSend.SendAsync <WorkJsonResult>(null, url, data, CommonJsonSendType.POST, timeOut);
            }, accessTokenOrAppKey));
        }
 public CLAN_CHATTING_ACK(Chat_Type type, string MSG) : base(1358)
 {
     this.Type = type;
     this.MSG  = MSG;
 }
Пример #7
0
        /// <summary>
        /// 【异步方法】发消息
        /// </summary>
        /// <param name="accessToken"></param>
        /// <param name="sender">发送人的userId</param>
        /// <param name="type">接收人类型:single|group,分别表示:群聊|单聊</param>
        /// <param name="msgType">消息类型,text|image|file</param>
        /// <param name="chatIdOrUserId">会话值,为userid|chatid,分别表示:成员id|会话id,单聊是userid,群聊是chatid</param>
        /// <param name="contentOrMediaId">文本消息是content,图片或文件是mediaId</param>
        /// <param name="timeOut"></param>
        /// <returns></returns>
        public static async Task <QyJsonResult> SendChatMessageAsync(string accessToken, string sender, Chat_Type type, ChatMsgType msgType, string chatIdOrUserId, string contentOrMediaId, int timeOut = Config.TIME_OUT)
        {
            var url = string.Format("https://qyapi.weixin.qq.com/cgi-bin/chat/send?access_token={0}", accessToken.AsUrlData());

            BaseSendChatMessageData data;

            switch (msgType)
            {
            case ChatMsgType.text:
                data = new SendTextMessageData
                {
                    receiver = new Receiver
                    {
                        type = type.ToString(),
                        id   = chatIdOrUserId
                    },
                    sender  = sender,
                    msgtype = msgType.ToString(),
                    text    = new Chat_Content
                    {
                        content = contentOrMediaId
                    }
                };
                break;

            case ChatMsgType.image:
                data = new SendImageMessageData
                {
                    receiver = new Receiver
                    {
                        type = type.ToString(),
                        id   = chatIdOrUserId
                    },
                    sender  = sender,
                    msgtype = msgType.ToString(),
                    image   = new Chat_Image
                    {
                        media_id = contentOrMediaId
                    }
                };
                break;

            case ChatMsgType.file:
                data = new SendFileMessageData
                {
                    receiver = new Receiver
                    {
                        type = type.ToString(),
                        id   = chatIdOrUserId
                    },
                    sender  = sender,
                    msgtype = msgType.ToString(),
                    file    = new Chat_File
                    {
                        media_id = contentOrMediaId
                    }
                };
                break;

            default:
                throw new ArgumentOutOfRangeException("msgType");
            }

            return(await Core.CommonAPIs.CommonJsonSend.SendAsync <QyJsonResult>(null, url, data, CommonJsonSendType.POST, timeOut));
        }
Пример #8
0
        /// <summary>
        /// 【异步方法】发消息
        /// </summary>
        /// <param name="accessToken"></param>
        /// <param name="sender">发送人的userId</param>
        /// <param name="type">接收人类型:single|group,分别表示:群聊|单聊</param>
        /// <param name="msgType">消息类型,text|image|file</param>
        /// <param name="chatIdOrUserId">会话值,为userid|chatid,分别表示:成员id|会话id,单聊是userid,群聊是chatid</param>
        /// <param name="contentOrMediaId">文本消息是content,图片或文件是mediaId</param>
        /// <param name="timeOut"></param>
        /// <returns></returns>
        public static async Task<QyJsonResult> SendChatMessageAsync(string accessToken, string sender, Chat_Type type, ChatMsgType msgType, string chatIdOrUserId, string contentOrMediaId, int timeOut = Config.TIME_OUT)
        {
            var url = string.Format("https://qyapi.weixin.qq.com/cgi-bin/chat/send?access_token={0}", accessToken.AsUrlData());

            BaseSendChatMessageData data;

            switch (msgType)
            {
                case ChatMsgType.text:
                    data = new SendTextMessageData()
                    {
                        receiver = new Receiver()
                        {
                            type = type.ToString(),
                            id = chatIdOrUserId
                        },
                        sender = sender,
                        msgtype = msgType.ToString(),
                        text = new Chat_Content()
                        {
                            content = contentOrMediaId
                        }
                    };
                    break;
                case ChatMsgType.image:
                    data = new SendImageMessageData()
                    {
                        receiver = new Receiver()
                        {
                            type = type.ToString(),
                            id = chatIdOrUserId
                        },
                        sender = sender,
                        msgtype = msgType.ToString(),
                        image = new Chat_Image()
                        {
                            media_id = contentOrMediaId
                        }
                    };
                    break;
                case ChatMsgType.file:
                    data = new SendFileMessageData()
                    {
                        receiver = new Receiver()
                        {
                            type = type.ToString(),
                            id = chatIdOrUserId
                        },
                        sender = sender,
                        msgtype = msgType.ToString(),
                        file = new Chat_File()
                        {
                            media_id = contentOrMediaId
                        }
                    };
                    break;
                default:
                    throw new ArgumentOutOfRangeException("msgType");
            }

            return await Senparc.Weixin.CommonAPIs.CommonJsonSend.SendAsync<QyJsonResult>(null, url, data, CommonJsonSendType.POST, timeOut);
        }
Пример #9
0
        /// <summary>
        /// 【异步方法】清除消息未读状态
        /// </summary>
        /// <param name="accessToken"></param>
        /// <param name="opUser">会话所有者的userid</param>
        /// <param name="type">会话类型:single|group,分别表示:群聊|单聊</param>
        /// <param name="chatIdOrUserId">会话值,为userid|chatid,分别表示:成员id|会话id,单聊是userid,群聊是chatid</param>
        /// <param name="timeOut"></param>
        /// <returns></returns>
        public static async Task<QyJsonResult> ClearNotifyAsync(string accessToken, string opUser, Chat_Type type, string chatIdOrUserId, int timeOut = Config.TIME_OUT)
        {
            var url = string.Format("https://qyapi.weixin.qq.com/cgi-bin/chat/clearnotify?access_token={0}", accessToken.AsUrlData());

            var data = new
            {
                op_user = opUser,
                chat = new
                {
                    type = type,
                    id = chatIdOrUserId
                }
            };

            return await Senparc.Weixin.CommonAPIs.CommonJsonSend.SendAsync<QyJsonResult>(null, url, data, CommonJsonSendType.POST, timeOut);
        }
Пример #10
0
        /// <summary>
        /// 发消息
        /// </summary>
        /// <param name="accessTokenOrAppKey"></param>
        /// <param name="sender">发送人的userId</param>
        /// <param name="type">接收人类型:single|group,分别表示:群聊|单聊</param>
        /// <param name="msgType">消息类型,text|image|file</param>
        /// <param name="chatIdOrUserId">会话值,为userid|chatid,分别表示:成员id|会话id,单聊是userid,群聊是chatid</param>
        /// <param name="contentOrMediaId">文本消息是content,图片或文件是mediaId</param>
        /// <param name="timeOut"></param>
        /// <returns></returns>
        public static WorkJsonResult SendChatMessage(string accessTokenOrAppKey, string sender, Chat_Type type, ChatMsgType msgType, string chatIdOrUserId, string contentOrMediaId, int timeOut = Config.TIME_OUT)
        {
            return(ApiHandlerWapper.TryCommonApi(accessToken =>
            {
                var url = string.Format("https://qyapi.weixin.qq.com/cgi-bin/chat/send?access_token={0}", accessToken.AsUrlData());

                BaseSendChatMessageData data;

                switch (msgType)
                {
                case ChatMsgType.text:
                    data = new SendTextMessageData()
                    {
                        receiver = new Receiver()
                        {
                            type = type.ToString(),
                            id = chatIdOrUserId
                        },
                        sender = sender,
                        msgtype = msgType.ToString(),
                        text = new Chat_Content()
                        {
                            content = contentOrMediaId
                        }
                    };
                    break;

                case ChatMsgType.image:
                    data = new SendImageMessageData()
                    {
                        receiver = new Receiver()
                        {
                            type = type.ToString(),
                            id = chatIdOrUserId
                        },
                        sender = sender,
                        msgtype = msgType.ToString(),
                        image = new Chat_Image()
                        {
                            media_id = contentOrMediaId
                        }
                    };
                    break;

                case ChatMsgType.file:
                    data = new SendFileMessageData()
                    {
                        receiver = new Receiver()
                        {
                            type = type.ToString(),
                            id = chatIdOrUserId
                        },
                        sender = sender,
                        msgtype = msgType.ToString(),
                        file = new Chat_File()
                        {
                            media_id = contentOrMediaId
                        }
                    };
                    break;

                default:
                    throw new ArgumentOutOfRangeException("msgType");
                }

                return CommonJsonSend.Send <WorkJsonResult>(null, url, data, CommonJsonSendType.POST, timeOut);
            }, accessTokenOrAppKey));
        }
Пример #11
0
        /// <summary>
        /// 清除消息未读状态
        /// </summary>
        /// <param name="accessTokenOrAppKey"></param>
        /// <param name="opUser">会话所有者的userid</param>
        /// <param name="type">会话类型:single|group,分别表示:群聊|单聊</param>
        /// <param name="chatIdOrUserId">会话值,为userid|chatid,分别表示:成员id|会话id,单聊是userid,群聊是chatid</param>
        /// <param name="timeOut"></param>
        /// <returns></returns>
        public static WorkJsonResult ClearNotify(string accessTokenOrAppKey, string opUser, Chat_Type type, string chatIdOrUserId, int timeOut = Config.TIME_OUT)
        {
            return(ApiHandlerWapper.TryCommonApi(accessToken =>
            {
                var url = string.Format("https://qyapi.weixin.qq.com/cgi-bin/chat/clearnotify?access_token={0}", accessToken.AsUrlData());

                var data = new
                {
                    op_user = opUser,
                    chat = new
                    {
                        type = type,
                        id = chatIdOrUserId
                    }
                };

                return CommonJsonSend.Send <WorkJsonResult>(null, url, data, CommonJsonSendType.POST, timeOut);
            }, accessTokenOrAppKey));
        }
Пример #12
0
 public LOBBY_CHATTING_ACK(string Mensagem, Chat_Type Chat) : base(2627)
 {
     this.Mensagem = Mensagem;
     this.Chat     = Chat;
 }
 public LOBBY_CHATTING_ACK(string Mensagem, Chat_Type type) : base(2627)
 {
     this.Mensagem = Mensagem;
     this.type     = type;
 }