예제 #1
0
        /// <summary>
        /// 推送客服图片
        /// </summary>
        /// <param name="openid"></param>
        /// <param name="mediaID"></param>
        /// <returns></returns>
        public async Task SendCustomerImage(string openid, string mediaID)
        {
            var access_token = await _accessTokenContainer.TryGetAccessTokenAsync(_account.AppId, _account.AppSecret);


            try
            {
                await CustomApi.SendImageAsync(access_token, openid, mediaID);
            }
            catch
            {
                access_token = await _accessTokenContainer.TryGetAccessTokenAsync(_account.AppId, _account.AppSecret, true);

                await CustomApi.SendImageAsync(access_token, openid, mediaID);
            }
        }
예제 #2
0
        public async Task CustomSendImageAsync(string accessTokenOrAppId, string openId, int siteId, int materialId, string mediaId)
        {
            if (string.IsNullOrEmpty(mediaId))
            {
                mediaId = await PushMaterialAsync(accessTokenOrAppId, MaterialType.Image, materialId);
            }

            await _wxChatRepository.ReplyAdd(new WxChat
            {
                SiteId       = siteId,
                OpenId       = openId,
                IsReply      = true,
                MaterialType = MaterialType.Image,
                MaterialId   = materialId,
                Text         = MaterialType.Image.GetDisplayName()
            });

            await CustomApi.SendImageAsync(accessTokenOrAppId, openId, mediaId);
        }