protected override async Task <ContactPayload> ContactRawPayload(string contactId)
        {
            var request = new ContactPayloadRequest()
            {
                Id = contactId
            };
            var response = await grpcClient.ContactPayloadAsync(request);

            var payload = new ContactPayload()
            {
                Id        = response.Id,
                Name      = response.Name,
                Address   = response.Address,
                Alias     = response.Alias,
                Avatar    = response.Avatar,
                City      = response.City,
                Friend    = response.Friend,
                Gender    = (Schemas.ContactGender)response.Gender,
                Province  = response.Province,
                Signature = response.Signature,
                Star      = response.Star,
                Type      = (Schemas.ContactType)response.Type,
                Weixin    = response.Weixin,
            };

            return(payload);
        }
        public async Task <ContactPayload> ContactRawPayload(string id)
        {
            var payload = new ContactPayload();

            var request = new ContactPayloadRequest();

            request.Id = id;

            var response = await grpcClient.ContactPayloadAsync(request);

            if (response != null)
            {
                payload = new ContactPayload()
                {
                    Address   = response.Address,
                    Alias     = response.Alias,
                    Avatar    = response.Avatar,
                    City      = response.City,
                    Friend    = response.Friend,
                    Gender    = (PuppetModel.ContactGender)response.Gender,
                    Id        = response.Id,
                    Name      = response.Name,
                    Province  = response.Province,
                    Signature = response.Signature,
                    Star      = response.Star,
                    Type      = (PuppetModel.ContactType)response.Type,
                    Weixin    = response.Weixin,
                };
            }
            return(payload);
        }