- 添加视频短信模板
- 请求
- 请求参数
- 请求示例
- python3:
- 响应
- Json返回示例
添加视频短信模板
HTTP头信息:
Accept:application/json;charset=utf-8;Content-Type:multipart/form-data;
请求
URL:https://vsms.yunpian.com/v2/vsms/add_tpl.json
访问方式:POST
特别说明 该功能需联系在线客服开通。
请求参数
| 参数名 | 类型 | 是否必传 | 是否默认开放 | 描述 | 示例 |
|---|---|---|---|---|---|
| apikey | String | 是 | 是 | 用户唯一标识,在管理控制台获取 | 9b11127a9701975c734b8aee81ee3526 |
| sign | String | 是 | 是 | 短信签名 | 【视频短信测试】 |
| layout | json | 是 | 是 | 内容布局的json描述文件 | 详见备注 |
| material | Byte | 是 | 是 | 素材的字节数组,即素材内容压成zip包后转成字节数组。注意: 所有素材文件直接放在zip包根目录下,zip包内没有文件夹,且所有资源小于1.8M。 | 参考demo示例 |
备注:
layout参数示例
可参考Java定义类:https://github.com/yunpian/yunpian-java-sdk/blob/v1.2.6/src/main/java/com/yunpian/sdk/model/VideoLayout.java
{"vlVersion": "0.0.1", //布局文件版本号"subject": "title", //主题说明,限制20个字符"frames": [ //布局的帧内容,手机将从上到下依次显示index值从1-N{"index": 1, //第1帧"playTimes": 1, //播放次数,目前没有使用"attachments": [ //帧内容{"index": 1, //帧内素材出现次序,实际次序由供应商决定"fileName": "text1.txt" //对应material压缩包里的文件},{"index": 2,"fileName": "vedio.mp4" //对应material压缩包里的文件}]},{"index": 2, // 第2帧"playTimes": 1,"attachments": [{"index": 1,"fileName": "text2.txt"},{"index": 2,"fileName": "image.jpg"}]}... // 其他帧]}
请求示例
python3:
import jsonimport requestsfrom requests_toolbelt.multipart import MultipartEncoderlayout = {"vlVersion": "0.0.1","subject": "title","frames": [{"index": 1,"playTimes": 1,"attachments": [{"index": 1,"fileName": "text1.txt"},{"index": 2,"fileName": "img1.jpg"}]}]}def add_tpl(filepath):""":param filepath: 文件路径:return:"""url = 'https://vsms.yunpian.com/v2/vsms/add_tpl.json'm_data = MultipartEncoder(fields={'apikey': 'xxxxxxx','sign': 'xxxxxxxx','layout': json.dumps(layout),'material': (filepath, open(filepath, 'rb'), 'application/octet-stream')},)headers = {'Content-Type': m_data.content_type}r = requests.post(url, data=m_data, headers=headers)print(r.text)return 0
响应
| 名称 | 类型 | 描述 |
|---|---|---|
| code | integer | 0代表请求成功 |
| msg | text | 接口状态 |
| tpl_id | integer | 模板id |
Json返回示例
{"code": 0,"msg": "OK","data":{"tpl_id": 126}}
