回调通知

在POLYV后台右上角【设置】->【回调设置】,【回调URL】的录入框填入用户的接口URL(例如:http://demo.polyv.net/callback),在每次视频上传、编码、审核时,保利威视会通过get方法请求用户的接口,将参数回调通知给用户。
一、上传完成/上传不合规格视频回调
上传完成后,系统会调用回调URL,会带来三个参数sign、type和vid
  • sign:系统签名,sign是由系统用"upload"这个字符串和vid、secretkey这两个参数的值按顺序组成的字符串做MD5计算得到(如,vid的值为e2e84a738302f20a4f6eb202976f5c63_e,secretkey的值为7UagtQOq2A,将字符串uploade2e84a738302f20a4f6eb202976f5c63_e7UagtQOq2A进行MD5计算,得到b245e3e65aa45b60dc02337b5cd914a7)
  • type:回调类型
    • upload:已上传
    • invalidVideo:不合规格视频(当上传的视频的信息无法被系统分析时,判断为不合规格视频)
  • vid:视频id
请求实例
http://demo.polyv.net/callback?sign=b245e3e65aa45b60dc02337b5cd914a7&type=upload&vid=e2e84a738302f20a4f6eb202976f5c63_e
二、编码完成/失败回调
同上传完成回调一样,编码完成之后,系统会调用回调URL:
  • sign:系统签名,sign是由系统用"encode"这个字符串和format、vid、df、secretkey这四个参数的值按顺序组成的字符串做MD5计算得到(如,format的值为flv,vid的值为e2e84a738302f20a4f6eb202976f5c63_e,df的值为1,secretkey的值为7UagtQOq2A,将字符串encodeflve2e84a738302f20a4f6eb202976f5c63_e17UagtQOq2A进行MD5计算,得到3c3eab358901ad19bc59b5df7704ed48)
  • type:回调类型
    • encode:已编码
    • encode_failed:处理失败
  • format:编码后的视频格式
  • vid:视频id
  • df:视频清淅度版本,1为流畅、2为高清、3为超清
请求实例
http://demo.polyv.net/callback?sign=3c3eab358901ad19bc59b5df7704ed48&type=encode&format=flv&vid=e2e84a738302f20a4f6eb202976f5c63_e&df=1
三、审核操作回调
那么审核完成,recieve的链接会收到一个调用,带来三个参数sign、type和vid
  • sign:系统签名,sign是由系统用"manage"这个字符串和type、vid、secretkey这三个参数的值按顺序组成的字符串做MD5计算得到(如,type的值为pass,vid的值为e2e84a738302f20a4f6eb202976f5c63_e,secretkey的值为7UagtQOq2A,将字符串managepasse2e84a738302f20a4f6eb202976f5c63_e7UagtQOq2A进行MD5计算,得到8ebb91d444ce53fafa3256670fb65d84)
  • type:回调类型
    • pass:通过
    • nopass:未通过
  • vid:视频id
请求实例
http://demo.polyv.net/callback?type=pass&vid=e2e84a738302f20a4f6eb202976f5c63_e&sign=8ebb91d444ce53fafa3256670fb65d84

以PHP为示例代码,如下:

<?php
$sign=$_GET["sign"];
$vid=$_GET["vid"];
$type=$_GET["type"];
$format=$_GET["format"];
$df=$_GET["df"];
$secretkey= "yourSecretkey"; //在“POLYV后台”——“系统管理”——“视频接口API”中获取

//获取当前上海标准时间
date_default_timezone_set("Asia/Shanghai");
$time = date('Y-m-d H:i:s',time());

//连接数据库huidiao,含upload,encode,pass三个表
$link = mysql_connect('localhost','root','');
mysql_select_db('huidiao',$link);

if($type=="upload"){
    $verifySign = md5($type.$vid.$secretkey);
    if($verifySign==$sign){
        //当上传完成时,向数据库插入上传记录
        mysql_query("insert into upload(vid,type,time) values('{$vid}','{$type}','{$time}')");
    }
}

if($type=="encode"){
    $verifySign = md5($type.$format.$vid.$df.$secretkey);
    if($verifySign==$sign){
        //当编码完成时,向数据库插入编码结果
        mysql_query("insert into encode(vid,type,format,df,time) values('{$vid}','{$type}','{$format}',{$df},'{$time}')");
    }
}

if($type=="pass"){
    $verifySign = md5("manage".$type.$vid.$secretkey);
    if($verifySign==$sign){
        //当审核通过时,向数据库插入视频状态
        mysql_query("insert into pass(vid,type,time) values('{$vid}','{$type}','{$time}')");
    }
}
?>
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...