推送回复短信

功能说明:开通此接口后,我们将为您实时推送最新的回复短信。您需要提供一个url地址,接受http post请求。

备注:该接口为高级接口,默认不开放,可以在云片用户后台开启并配置。

HTTP头信息:

  1. Accept:application/json;charset=utf-8;
  2. Content-Type:application/x-www-form-urlencoded;charset=utf-8;

请求

URL:http://your_receive_url_address

注意:海外服务器地址 us.yunpian.com

访问方式:POST

推送参数

参数名类型是否必须描述
sms_replystring经过urlencode编码的数据形式如:sms_reply=urlencode(json)

推送的数据格式:

参数名=经过urlencode编码的数据

形式如:

  1. sms_reply=urlencode(json)

服务端推送数据形式如下:

  1. curl --data "sms_reply=url_encode_json" http://your_receive_url_address

备注:

接收到数据后,请从参数sms_reply中取值,取到值使用urldecode解码后为实际json格式数据处理成功请返回字符串"SUCCESS"或"0",其他返回值将被认为是失败。该接口失败重试次数为5次,每次间隔1分钟。

添加签名字段是为了防止恶意推送,签名校验方式如下:把接收到的json字段以key的字母顺序,将值组合起来(签名字段除外),以英文逗号隔开,形成的字符串和用户的apikey连接,同样在之间插入英文逗号,得到最终字符串,然后使用md5加密转换成32位小写字符,即为签名字段,签名字段和接收到的签名对比,如果一致,说明数据来自我们推送,否则可能来自恶意推送。

如以上数据,把key按序排列为,base_extend、extend、id、mobile、reply_time、text,假设用户的apikey为0000,那么按照以上规则拼接得到的字符串为:“8888,01,2a70c6bb4f2845da816ea1bfe5732747,15205201314,2014-03-17 22:55:21,收到了,谢谢!,0000”,经过md5转换得到32位小写字符为“393d079e0a00912335adfe46f4a2e10f”,接收端计算出来的签名字段和接收到的签名应当一致,不一致,则数据存在问题。

推送json参数

名称类型描述
idstring唯一序列号,无特别含义及用途
mobilestring回复短信的手机号
reply_timestring回复短信的时间
texttext回复的短信内容
extendstring您发送时传入的扩展子号,未申请扩展功能或者未传入时为空串
base_extendstring系统分配的扩展子号
_signstring签名字段

其中json示例为:

  1. {
  2. "id": "2a70c6bb4f2845da816ea1bfe5732747",
  3. "mobile": "15205201314",
  4. "reply_time": "2014-03-17 22:55:21",
  5. "text": "收到了,谢谢!",
  6. "extend": "01",
  7. "base_extend": "8888",
  8. "_sign": "393d079e0a00912335adfe46f4a2e10f"
  9. }