设置频道自定义授权

使用场景:与客户的用户系统对接,客户自定义验证逻辑,验证通过后返回带参的指定链接,才能打开保利威视直播观看页,并且拥有终端唯一性,PC端移动端同时生效。

1、后台设置

​ (1). 登录保利威视管理系统首页(http://my.polyv.net/v2/login),点击【云直播】进入直播后台,然后点击【频道列表】,点击所需要设置的频道名称(若还没有创建频道,可点击【创建频道】新创建一个频道),在左侧菜单栏中找到【观看条件设置】点击进入,选择自定义授权。

自定义授权观看进入方式1

​ (2). 在教师登录直播系统页面(http://live.polyv.net/teacher/login.htm)进行登录,在左侧菜单栏中找到【观看条件设置】点击进入,选择自定义授权。

自定义授权观看进入方式2

2.自定义授权步骤

​ (1)在自定义授权处填写用户定义的api接口,需要完整的地址,如http://demo.polyv.net/wfy/shouquan1.php;
(2)直播系统会将直播的频道(id)、当前毫秒级时间(ts)、用于校验的签名(sign)、回调的url地址(url)等参数提交给用户自定义的api接口,用户需要对字符串secretkey + id + secretkey + ts进行MD5加密后与sign参数的值做比较判断是否合法;
​ (3)通过上一步的校验后,用户设置相关学员参数,如学员唯一标示(userid)、学员昵称(nickname)、学员头像(avatar)、当前毫秒级时间(ts)、校验签名(sign)等参数;
​ (4)用户接口需要将以上学员相关的参数提交到回调的url接口,直播系统会对签名做校验后判断是否允许学员观看.一次成功请求后,该链接将失效;
​ (5)观看直播页的聊天区将显示学员的昵称和头像。
​ 流程图如下:
自定义授权流程图

3.参数说明

自定义授权观看参数说

4.php示例

<?php
  $secretkey = "jlw42byyJ6"; //后台secretKey,在自定义授权地址设置页面
  $id = $_GET["id"]; //直播的频道id
  $ts = $_GET["ts"]; //当前时间
  $sign = $_GET["sign"]; //用于检验的签名
  $url = $_GET["url"]; //回调的url
  $md5 = md5($secretkey.$id.$secretkey.$ts);//若md5字符串与sign不符合,则不做任何处理
  if(!($sign==$md5)){
   return;
  }
  $userid = "eciyhturt8"; //学员唯一标识
  $nickname = urlencode(base64_encode("保利威视"));//学员的昵称
  $avatar = "http://live.polyv.net/assets/images/avatars/9avatar.jpg"; //学员的头像
  $callbackTs = time() * 1000; //当前的系统时间
  $callbackSign = md5($secretkey.$id.$secretkey.$callbackTs.$secretkey.$userid); //用于检验的签名
  $callbackUrl = $url."?userid=".$userid."&nickname=".$nickname."&avatar=".$avatar."&ts=".$callbackTs."&sign=".$callbackSign; //新的直播页面url
  //打开新的直播页面url
  echo"<script language='javascript' type='text/javascript'>location.href='".$callbackUrl."'</script>"
?>

5.展示效果

​ 直播观看页 http://live.polyv.cn/watch/105420
​ 直播观看页(含登录页Demo:) http://live.polyv.cn/watch/104400

6.注意事项

​ 1.要保证userid的唯一性,当多个学员使用同一个userid进入观看页时,前面登录的学员会被后面登录的学员踢出,观看页面会提示 "帐号在另外的地方登录,您将被退出观看。"如下图:

退出观看提示

​ 2.学员的昵称进行base64加密后再进行urlencode加密,否则可能会造成观看页昵称显示乱码现象。

以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...