【图文信息】C#群发微信图文信息(Senparc.Weixin.MP.dll)
2016-11-08 14:23
429 查看
步骤1:上传图片素材得到media_id
步骤2:上传永久图文素材得到media_id(封面图片为步骤1图片素材的media_id)
步骤3:群发图文素材media_id
步骤2:上传永久图文素材得到media_id(封面图片为步骤1图片素材的media_id)
步骤3:群发图文素材media_id
#region 群发到微信 //根据appId判断获取 if (!AccessTokenContainer.CheckRegistered(appId)) //检查是否已经注册 { AccessTokenContainer.Register(appId, appSecret); //如果没有注册则进行注册 } string access_token = AccessTokenContainer.GetAccessTokenResult(appId).access_token; //获取AccessToken结果 string media_id_img = ""; //图片media_id string media_id_tuwen = ""; //图文media_id //新增永久素材(图片) 将作为微信群发消息的封面图片 UploadForeverMediaResult uploadResult_IMG = MediaApi.UploadForeverMedia(access_token, Server.MapPath(imgPathWX)); if (uploadResult_IMG.errcode.ToString().Contains("成功")) { media_id_img = uploadResult_IMG.media_id; } else { Js.JsAlert(this, "", "新增图片素材出错:" + uploadResult_IMG.errmsg, "error", ""); return; } //新增永久素材(图文) NewsModel newsmodel = new NewsModel(); newsmodel.title = title; newsmodel.thumb_media_id = media_id_img; //上面的图片素材media_id newsmodel.author = ""; newsmodel.digest = StringUtil.DropHTML(weixin_content, 250); newsmodel.show_cover_pic = "1"; #region 将内容中的图片转为微信图片 注:内容中的图片必须通过微信官方接口转换,否则微信将过滤图片,不显示 if (weixin_content.Contains("src=")) { Regex reg = new Regex("(i?)<img.*? src=\"?(.*?\\.(jpg|gif|bmp|bnp|png))\".*?\\s?/>"); //定义正则表达式 MatchCollection mc = reg.Matches(weixin_content); //在内容中匹配与正则表达式匹配的字符 foreach (Match m in mc) //循环匹配到的字符 { if (!m.Value.Contains("http://")) //外链的图片就不用转换了(外链的就是已经转换为微信链接的) { int srcIndex = m.Value.IndexOf("src=\""); string strSrc = m.Value.Substring(srcIndex); int firstIndex = strSrc.IndexOf("\""); int lastIndex = strSrc.IndexOf("\"", firstIndex + 1); string src = strSrc.Substring(firstIndex + 1, lastIndex - firstIndex - 1); string srcPath = Server.MapPath(src); //将内容中的图片上传到微信服务器 UploadImgResult uploadImgResult = MediaApi.UploadImg(access_token, srcPath); if (uploadImgResult.errcode.ToString().Contains("成功")) //返回的是请求成功 { weixin_content = weixin_content.Replace(src, uploadImgResult.url); } else { Js.JsAlert(this, "", "转为微信图片出错:" + uploadImgResult.errmsg, "error", ""); return; } } } } #endregion newsmodel.content = weixin_content; newsmodel.content_source_url = ""; UploadForeverMediaResult uploadResult_TUWEN = MediaApi.UploadNews(access_token, 10000, newsmodel); if (uploadResult_TUWEN.errcode.ToString().Contains("成功")) //返回的是请求成功 { media_id_tuwen = uploadResult_TUWEN.media_id; } else { Js.JsAlert(this, "", "新增图文素材出错:" + uploadResult_TUWEN.errmsg, "error", ""); return; } //群发图文消息(这个是根据openId群发的,根据实际修改) SendResult sendResult = GroupMessageApi.SendGroupMessageByOpenId(access_token, GroupMessageType.mpnews, media_id_tuwen, 10000, new string[] { "oLTAiwWgQvNmEerkShPq5YwICEXQ", "oLTAiwbWgpL8bYJZLGb_GewLSxm4" }); if (!sendResult.errcode.ToString().Contains("成功")) //返回的是请求成功 { Js.JsAlert(this, "", "微信群发出错:" + sendResult.errmsg, "error", ""); return; } #endregion
相关文章推荐
- 【模版消息】C#推送微信模版消息(Senparc.Weixin.MP.dll)
- 【模版消息】C#推送微信模版消息(Senparc.Weixin.MP.dll)
- [升级说明] Senparc.Weixin.MP v14.8.11 (微信群发接口调整)
- 【OAuth2.0网页授权】根据access_token和openId获取用户基本信息(Senparc.Weixin.MP.dll)
- 【JSSDK】微信分享JSSDK关键属性获取(Senparc.Weixin.MP.dll)
- [原创][下载]Senparc.Weixin.MP-微信公众平台SDK(C#) - 已支持微信6.x API
- [原创][下载]Senparc.Weixin.MP-微信公众平台SDK(C#) - 已支持微信6.x API
- [原创][下载]Senparc.Weixin.MP-微信公众平台SDK(C#) - 已支持微信6.x API
- [开源]微信在线信息模拟测试工具(基于Senparc.Weixin.MP开发)
- [原创][下载]Senparc.Weixin.MP-微信公众平台SDK(C#) - 已支持微信6.x API
- WeiXinMPSDK-微信C# SDK
- 微信公众账号 Senparc.Weixin.MP SDK 开发教程
- 【OAuth2.0网页授权】根据code获取access_token和openId(Senparc.Weixin.MP.dll)
- c# 微信模拟登录抓取公共帐号发送图文信息
- 微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引
- 【自定义菜单】创建自定义菜单(Senparc.Weixin.MP.dll)
- 微信公众平台C# SDK:Senparc.Weixin.MP.dll
- 【access_token】获取access_token(Senparc.Weixin.MP.dll)
- 捕获服务器返回的错误信息,微信开发群发多图文消息13
- 微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引