Exemple #1
0
        public async Task <HttpResponseMessage> CreateGroupAsync(CreateGroup greateGroup)
        {
            ResponseBase <string> response = new ResponseBase <string>();

            if (greateGroup.ToWxIds == null || greateGroup.ToWxIds.Count == 0)
            {
                response.Success = false;
                response.Code    = "400";
                response.Message = "用户列表不能为空";
                return(await response.ToHttpResponseAsync());
            }
            try
            {
                IList <MMPro.MM.MemberReq> list = new List <MMPro.MM.MemberReq>();
                var memberReqCurrent            = new MMPro.MM.MemberReq();
                memberReqCurrent.member         = new MMPro.MM.SKBuiltinString();
                memberReqCurrent.member.@string = greateGroup.WxId;
                list.Add(memberReqCurrent);
                foreach (var item in greateGroup.ToWxIds)
                {
                    var memberReq = new MMPro.MM.MemberReq();
                    memberReq.member         = new MMPro.MM.SKBuiltinString();
                    memberReq.member.@string = item;
                    list.Add(memberReq);
                }
                var result = wechat.CreateChatRoom(greateGroup.WxId, list.ToArray(), greateGroup.GroupName);
                if (result == null || result.baseResponse.ret != (int)MMPro.MM.RetConst.MM_OK)
                {
                    response.Success = false;
                    response.Code    = "501";
                    response.Message = result.baseResponse.errMsg.@string ?? "创建失败";
                }
                else
                {
                    response.Data    = result.chatRoomName.@string;
                    response.Message = "创建成功";
                }
            }
            catch (ExpiredException ex)
            {
                response.Success = false;
                response.Code    = "401";
                response.Message = ex.Message;
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.Code    = "500";
                response.Message = ex.Message;
            }
            return(await response.ToHttpResponseAsync());
        }
Exemple #2
0
        public async Task <HttpResponseMessage> AddGroupMember(GroupMember addGroupMember)
        {
            ResponseBase response = new ResponseBase();

            if (addGroupMember.ToWxIds == null || addGroupMember.ToWxIds.Count == 0)
            {
                response.Success = false;
                response.Code    = "400";
                response.Message = "用户列表不能为空";
                return(await response.ToHttpResponseAsync());
            }
            try
            {
                IList <MMPro.MM.MemberReq> list = new List <MMPro.MM.MemberReq>();
                foreach (var item in addGroupMember.ToWxIds)
                {
                    var memberReq = new MMPro.MM.MemberReq();
                    memberReq.member         = new MMPro.MM.SKBuiltinString();
                    memberReq.member.@string = item;
                    list.Add(memberReq);
                }
                var result = wechat.AddChatRoomMember(addGroupMember.WxId, addGroupMember.ChatRoomName, list.ToArray());
                if (result == null || result.baseResponse.ret != (int)MMPro.MM.RetConst.MM_OK)
                {
                    response.Success = false;
                    response.Code    = "501";
                    response.Message = result.baseResponse.errMsg.@string ?? "添加失败";
                }
                else
                {
                    response.Message = "添加成功";
                }
            }
            catch (ExpiredException ex)
            {
                response.Success = false;
                response.Code    = "401";
                response.Message = ex.Message;
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.Code    = "500";
                response.Message = ex.Message;
            }
            return(await response.ToHttpResponseAsync());
        }