微信发送图文消息,查看图文media 您所在的位置:网站首页 企业微信怎么发送图文到微信上 微信发送图文消息,查看图文media

微信发送图文消息,查看图文media

2024-07-11 13:44| 来源: 网络整理| 查看: 265

前言

微信PC后台群发送服务号的通知消息会消耗发送次数,每月4次;这里想通过微信API发送。 注:本文只需要使用CURL工具即可全部完成

比较微信后台微信API富文本美观,不限字数,排版整齐使用图片替代大文本,可以写少量文字,需要HTML格式,且不能大于2W字符发送次数无论怎么群发,只有4次每个openid四次操作简单,方便熟练后也可达到操作方便

实现目标 查看发送后效果&广东人保(手机微信打开效果更好) 在这里插入图片描述

准备 登录微信测试

打开这三个链接 微信公众平台接口测试帐号申请 微信官方开发文档 微信开发-错误码大全

1、获取access_token

测试账号里边都有参数,获取后时效2H

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET https请求方式: GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

在这里插入图片描述

2、上传封面

这里看你发图文消息需要新增永久素材,首先上传封面主图,然后上传你点击图文通知后的页面中所需要的图片(也就是你点击封面跳转的主页,用图片可以解决内容限制问题)

https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=ACCESS_TOKEN&type=TYPE http请求方式: POST,需使用https https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=ACCESS_TOKEN&type=TYPE 调用示例(使用curl命令,用FORM表单方式新增一个其他类型的永久素材,curl命令的使用请自行查阅资料)

在这里插入图片描述

2.1 返回值 {"media_id":"JhEacS4lHSZQWtj5CO01-g-SPRIwcR9O0MbUl_yC6mQ", "url":"http:\/\/mmbiz.qpic.cn\/mmbiz_png\/xGfbYHhGLIaeUpoYUJ1PEoJ4LeUtxkias9lK331qhl6J8zbycVVbQyx4DCODLbAibTafXkBSlga8hPBVHwnkKMVw\/0?wx_fmt=png", "item":[]}

我们需要的封面图片的永久素材链接就拿到了,第一张图片做封面,其他图片作为图文内容

3、上传图文消息素材【订阅号与服务号认证后均可用】 3.1 上传素材模板 https://api.weixin.qq.com/cgi-bin/material/add_news?access_token=ACCESS_TOKEN http请求方式: POST,https协议 https://api.weixin.qq.com/cgi-bin/material/add_news?access_token=ACCESS_TOKEN { "articles": [ { "thumb_media_id":"qI6_Ze_6PtV7svjolgs-rN6stStuHIjs9_DidOHaj0Q-mwvBelOXCFZiq2OsIU-p", "author":"xxx", "title":"Happy Day", "content_source_url":"www.qq.com", "content":"content", "digest":"digest", "show_cover_pic":1, "need_open_comment":1, "only_fans_can_comment":1 }, { "thumb_media_id":"qI6_Ze_6PtV7svjolgs-rN6stStuHIjs9_DidOHaj0Q-mwvBelOXCFZiq2OsIU-p", "author":"xxx", "title":"Happy Day", "content_source_url":"www.qq.com", "content":"content", "digest":"digest", "show_cover_pic":0, "need_open_comment":1, "only_fans_can_comment":1 } ] }

在这里插入图片描述

3.2 举例

多图文就上传多个,我做的单图文,就上传了一个,内容写其他图片的链接,写HTML,注意不要引入外部链接,需要的是微信自己的永久链接,包括content内引入

{ "articles": [ { "title": "倒计时4天!这项福利马上截止!", "thumb_media_id": "JhEacS4lHSZQWtj5CO01-pmMTWyiwf9dmaLNNYz7-bc", "author": "广东人保财险", "digest": "潮州市民专属", "show_cover_pic":0, "content": " 点击阅读原文", "content_source_url": "https://mp.weixin.qq.com/s/PwX_aYbDWQjGSr8sHH2eZQ", "need_open_comment":1, "only_fans_can_comment":1 } ] } 3.3 返回值

需要这个media_id

{"media_id":"JhEacS4lHSZQWtj5CO01-lUmY_KyWn4ZA-jtCE-hBJA","item":[]} 4、预览接口【订阅号与服务号认证后均可用】 https://api.weixin.qq.com/cgi-bin/message/mass/preview?access_token=ACCESS_TOKEN http请求方式: POST https://api.weixin.qq.com/cgi-bin/message/mass/preview?access_token=ACCESS_TOKEN

图文消息(其中media_id与根据分组群发中的media_id相同): 其他消息类型

{ "touser":"OPENID", "mpnews":{ "media_id":"123dsdajkasd231jhksad" }, "msgtype":"mpnews" }

在这里插入图片描述

5、接收预览

进行完第4步你就可以获取到微信通知,在你的订阅号打开就可以看了,至此实现了开篇动图效果。预览完毕调用发送接口即可群发给指定用户,标签,所有群体

6、群发

在预览界面查看点击确认无问题后,执行群发。

URL https://api.weixin.qq.com/cgi-bin/message/mass/send?access_token=ACCESS_TOKEN http请求方式: POST https://api.weixin.qq.com/cgi-bin/message/mass/send?access_token=ACCESS_TOKEN

群发可以选择按照用户群发或者按照标签群发,这里推荐按照标签群发,只用调一遍接口

更多群发方式,语音,文字,视频

{ "filter":{ "is_to_all":false, "tag_id":137 }, "mpnews":{ "media_id":"XCRd2iesS4v24lqvDXkusDl268USWhP4qc3pjqPNPY4" }, "msgtype":"mpnews", "send_ignore_reprint":0 } 参数

在这里插入图片描述

返回值

这个msg_id需要用

{ "errcode": 0, "errmsg": "send job submission success", "msg_id": 3147494172, "msg_data_id": 2652648566 }

在这里插入图片描述

7、校验群发结果 URL http请求方式: POST https://api.weixin.qq.com/cgi-bin/message/mass/get?access_token=ACCESS_TOKEN 参数 { "msg_id": "201053012" } 返回值

成功发送

{ "msg_id": 3147494172, "msg_status": "SEND_SUCCESS" } 8、删除群发

当你觉得群发出现错误时,可以选择删除群发,相当于撤回,这里笔者没有尝试,任务发送复查没问题后结束任务 删除群发【订阅号与服务号认证后均可用】

URL https://api.weixin.qq.com/cgi-bin/message/mass/delete?access_token=ACCESS_TOKEN http请求方式: POST https://api.weixin.qq.com/cgi-bin/message/mass/delete?access_token=ACCESS_TOKEN 参数 { "msg_id":30124, "article_idx":2 }

在这里插入图片描述

返回值 { "errcode":0, "errmsg":"ok" } 9、查看图文media_id

有时候通过微信后台编辑好了模板media_id,但是我们自己CURL并不知道,所以就需要API获取 获取永久素材的列表

URL http请求方式: POST https://api.weixin.qq.com/cgi-bin/material/batchget_material?access_token=ACCESS_TOKEN https://api.weixin.qq.com/cgi-bin/material/batchget_material?access_token=ACCESS_TOKEN 参数 { "type":TYPE, "offset":OFFSET, "count":COUNT }

参考我的,offset是1就是第几条开始,类似于分页,查两条就找到最新的了,按照type来查询

{ "type":"news", "offset":1, "count":2 }

在这里插入图片描述

返回 { "total_count": TOTAL_COUNT, "item_count": ITEM_COUNT, "item": [{ "media_id": MEDIA_ID, "content": { "news_item": [{ "title": TITLE, "thumb_media_id": THUMB_MEDIA_ID, "show_cover_pic": SHOW_COVER_PIC(0 / 1), "author": AUTHOR, "digest": DIGEST, "content": CONTENT, "url": URL, "content_source_url": CONTETN_SOURCE_URL }, //多图文消息会在此处有多篇文章 ] }, "update_time": UPDATE_TIME }, //可能有多个图文消息item结构 ] }

其他类型(图片、语音、视频)的返回如下:

{ "total_count": TOTAL_COUNT, "item_count": ITEM_COUNT, "item": [{ "media_id": MEDIA_ID, "name": NAME, "update_time": UPDATE_TIME, "url":URL }, //可能会有多个素材 ] }

在这里插入图片描述 错误情况下的返回JSON数据包示例如下(示例为无效媒体类型错误):

{"errcode":40007,"errmsg":"invalid media_id"}


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有