富信 - 概览
1 卓鹰平台对接视频短信发送功能流程
1. 创建卓鹰平台帐号
2. 联系客服开通富信功能并根据客服引导提供签名报备资质材料 获取 APPID 和 APPSecret
3. 富信-平台设置-系统设置-数据推送 中设置审核回执地址
4. 前置条件:签名审核通过,调用模版创建接口创建模版
5. 模版ID提供运营人员审核通过该模版,之后产生审核通知信息到 第3步 设置的回执地址中
6. 前置条件:模版审核通过,调用模版消息发送接口
7. 发送状态回执到 第3步 设置的回执地址中
8. 完成流程
2 SIGN 生成规则
sign=MD5(nonce+timestamp+appKey+appSecret)
注意事项:md5 32 位小写
参数定义:
nonce 用户自定义字符串
timestamp 时间戳转(yyyyMMddHHmmss)格式,如:20210601093004
appKey 平台提供
appSecret 平台提供
例如 :
{"nonce":"shinx","timestamp":"20210727141938","appKey":"OiW6txJ8AZ1WkJPYFmxx","appSecret":"yVvXJM0SvFZuBRpCmGwK"}
MD5("shinx20210727141938OiW6txJ8AZ1WkJPYFmxxyVvXJM0SvFZuBRpCmGwK)
生成sign为: c0e6a1e4d125bf4cfc01a933ced8f5e5
3 Authorization生成规则
Authorization=SHA256(URI+sign)
注意事项:SHA256 使用 HmacSHA256 类型
参数定义:
URI 调用接口时不同接口使用不同uri
sign 根据SIGN 生成规则生成
secret 卓鹰平台提供接口秘钥,值为 RICH_ZY
例如:2.1 模版创建接口 则所需 加签字符为
/v1/api/rich/template/createc0e6a1e4d125bf4cfc01a933ced8f5e5
加签后字符为
YmRjMmVkNmZiODIyZTYxMjRhYzk4NjQ5NTY5MzM2MzkyNzc3OWNhMGRjY2NiMzQ5NThiYzc2NzllMGQwMzA1Mg%3D%3D
4 JAVA参考代码如下:
private static String byteToHex(byte[] bytes) {
if (bytes == null) return null;
StringBuffer stringBuffer = new StringBuffer();
String temp = null;
for (int i = 0; i < bytes.length; i++) {
temp = Integer.toHexString(bytes[i] & 0xff);
if (temp.length() == 1) {
stringBuffer.append("0");
}
stringBuffer.append(temp);
}
return stringBuffer.toString();
}
public static void main(String[] args) {
try {
String secret="RICH_ZY";
String message="/v1/api/rich/template/createc0e6a1e4d125bf4cfc01a933ced8f5e5";
Mac sha256_HMAC = Mac.getInstance("HmacSHA256");
SecretKeySpec secretKey = new SecretKeySpec(secret.getBytes("utf-8"), "HmacSHA256");
sha256_HMAC.init(secretKey);
byte[] hash = sha256_HMAC.doFinal(message.getBytes("utf-8"));
String SHA256 = byteToHex(hash);
String encodeStr = Base64.getEncoder().encodeToString(SHA256.getBytes("utf-8"));
String Authorization = URLEncoder.encode(encodeStr, "utf-8");
System.out.println(Authorization);
} catch (Exception e) {
}
}
5 公共输入参数说明:
| 名称 | 类型 | 是否必须 | 备注 | 其他信息 |
|---|
| Authorization | Header | 必须 | header参数用于接口鉴权 | 参见 Authorization生成规则 |
| Content-Type | Header | 必须 | header参数请求体格式 | 值为:application/json |
| appKey | String | 必须 | 卓鹰平台AppID | 平台提供APPID |
| nonce | String | 必须 | 客户自定义唯一标识 | 用户自定义 长度不超过32位 |
| sign | String | 必须 | 加签字符,32位小写MD5(nonce+timestamp+appKey+appSecret) | MD5计算得出 该字符串小写 |
| timestamp | String | 必须 | 时间戳字符串(yyyyMMddHHmmss) | 例:20210601103030 |
6 附录
错误码表
| 错误码 | 编码值 | 编码描述 |
| AUTH_API_ERROR | 830 | APP鉴权失败 |
| SIGN_NAME_DUPLICATE | 1004 | 签名名称重复 |
| SIGN_UPDATE_ERROR | 1006 | 该签名正在审核中或已审核,无法修改 |
| SIGN_ENABLE_ERROR | 1007 | 该签名还未审核通过,无法禁用 |
| SIGN_EDIT_ERROR | 1009 | 改签名已被使用,无法修改 |
| SIGN_AUDIT_SP_WAIT | 1011 | 运营商审核中,请等待结果 |
| SIGN_AUDIT_SP_FAIL | 1012 | 运营商审核失败 |
| SIGN_AUDIT_SP_ERROR | 1013 | 运营商通道异常 |
| SIGN_AUDIT_SP_UNIQUE | 1014 | 签名对应运营商签名不唯一 |
| SIGN_NOT_FOUND | 1015 | 签名不存在 |
| PROVIDER_SIGN_AUDIT_ERROR | 1016 | 服务商签名线下送审不合规 |
| TEMPLATE_SIGN_FAIL | 2003 | 模板签名添加失败 |
| TEMPLATE_NAME_DUPLICATE | 2004 | 模板名称重复 |
| PARAM_ERROR | 2005 | 参数校验失败 |
| TEMPLATE_UPDATE_ERROR | 2006 | 只可修改未审核通过的模板 |
| CHANNEL_NOT_FOND | 2010 | 通道不存在 |
| TEMPLATE_NOT_EXIST | 2011 | 模板不是待审核状态 |
| TEMPLATE_DISABLE | 2013 | 模板不可用 |
| TEMPLATE_CODE_ERR | 2014 | 模板CODE为空 |
| INSTITUTION_ERR | 2015 | institutionId为空 |
| FILE_NULL | 2016 | 文件为空 |
| CMCC_CHANNEL_NOT_FOND | 2019 | 移动通道配置不存在 |
| CUCC_CHANNEL_NOT_FOND | 2020 | 联通通道配置不存在 |
| CTCC_CHANNEL_NOT_FOND | 2021 | 电信通道配置不存在 |
| TEMPLATE_TYPE_NOT_SUPPORT | 2022 | 模板类型不支持 |
| TEMPLATE_TYPE_VERIFYCODE_NOT_SUPPORT | 2023 | 模板类型-验证码类型不支持 |
| CHANNEL_API_ERROR | 2041 | 通道api调用错误 |
| TEMPLATE_DYNAMIC_PARAM_ERROR | 2042 | 动态模板参数校验异常 |
| TEMPLATE_EDIT_ERROR | 2043 | 该模板已被使用,无法修改 |
| SEND_TEMPLATE_NOT_ENABLE | 3001 | 模板不可用 |
| SEND_BALANCE_SPENT | 3002 | 用户余额不足 |
| SEND_ISP_TEMPLATE_INFO_ERROR | 3003 | 运营商模板信息不全 |
| SEND_CHANNEL_INFO_ERROR | 3004 | 通道信息不全 |
| TASK_NAME_DUPLICATE | 3007 | 任务名称重复 |
| CHECK_ERROR | 3008 | 任务不是待审核状态 |
| TASK_UPDATE_ERROR | 3009 | 只可撤销待发送或待审核任务 |
| PHONE_ERR | 3010 | 手机号格式有误 |
| PHONE_SOURCE_ERR | 3011 | 手机号码来源不存在 |
| PHONE_NOT_EMPTY | 3012 | 手机号列表不可为空 |
| RECORD_QUERY_TIME_ERROR | 5000 | 查询跨度超过3天 |
| RECORD_QUERY_INSTITUTION_EMPTY | 5001 | 商户ID为空 |
| RECORD_QUERY_USER_EMPTY | 5002 | UserID为空 |
| CHANNEL_SERVICE_NOT_EXIST | 8000 | 指定通道不存在 |
| TEMPLATE_CREATE_FAIL | 8001 | 模板创建失败 |
| SEND_CREATE_FAIL | 8002 | 短信发送失败 |
| SIGN_CREATE_FAIL | 8003 | 签名送审失败 |
| SEND_PHONE_EXIST | 8004 | 发送手机号码不存在 |
| RECEIPT_MSG_PHONE_MAPPING_ERROR | 8005 | 回执任务ID对应手机号码解析错误 |
| FILE_TYPE_NOT_SUPPORTED | 8100 | 素材类型不支持 |
| IMAGE_TYPE_NOT_SUPPORTED | 8101 | 图片类型不支持 |
| VIDEO_TYPE_NOT_SUPPORTED | 8102 | 视频类型不支持 |
| AUDIO_TYPE_NOT_SUPPORTED | 8103 | 音频类型不支持 |
效果示例
素材要求
| 素材类型 | 要求**(素材包组合不超过 1.9M) |
| 文本 | 文案主标题:20 字符以内,建议 15 字以内(简明扼要的标题党) 文案内容:文字+标点建议不超过 500个字符,附链接; |
| 图片 | 两个尺寸:640*640 / 640*360 格式:png/jpg |
| 视频 | 任选一尺寸:横 640*360(建议)/竖版 640*820, 单个模板视频类素材最多上传一个 |
| 音频 | 建议大小不超过 1MB、60S |