更新时间:2024-09-23 GMT+08:00
分享

配置消息通知

直播服务使用消息通知服务对直播录制状态进行实时通知,如需使用该功能,需要先配置消息通知服务。由于消息通知由消息通知服务(SMN)完成,所以SMN将对发送的消息通知进行单独计费,具体的计费标准请参考SMN价格详情

背景介绍

  • 主题是消息发布或客户端订阅通知的特定事件类型。它作为发送消息和订阅通知的信道,为发布者和订阅者提供一个可以相互交流的通道。在配置直播消息订阅前必须定制主题。
  • 消息订阅是客户将订阅者注册到主题的操作,客户可以拥有多个主题,每个主题有多个订阅者。
  • 消息订阅暂以项目ID进行区分,即同一个项目ID的域名暂只能使用同一个消息订阅,消息订阅配置对同一个项目ID的所有域名生效。

配置流程

消息订阅的配置流程,如图1所示。

图1 消息订阅配置流程图
  1. 创建消息主题:在消息通知服务控制台新建消息主题,用于消息发送和订阅通知。
  2. 添加订阅:将消息主题添加到订阅中接收发布至主题的消息,在订阅主题且确认订阅后,终端节点能够接收到向该主题发布的所有消息。
  3. 设置主题策略:授权直播服务可对该主题发布消息。
  4. 配置直播消息订阅:在直播控制台配置消息订阅,在直播推流开始和结束,以及录制时收到对应的消息通知。

前提条件

步骤一:创建消息主题

  1. 登录管理控制台。
  2. 单击“服务列表 > 消息通知服务”。
  3. 在左侧导航树中,选择主题管理 > 主题,进入主题页面。
  4. 单击创建主题,设置主题名称等参数。

    参数配置说明,详见创建主题
    图2 创建主题

  5. 单击“确定”,消息主题创建成功。

步骤二:添加订阅

  1. 在消息通知服务的左侧导航树中,选择主题管理 > 主题,进入主题页面。
  2. 在已创建的主题行单击操作列的“添加订阅”,右侧弹出“添加订阅”页面。
  3. 配置消息通知的类型和对象。

    图3 添加订阅

    参数说明如表1所示,也可以直接参考添加订阅

    表1 添加订阅参数说明

    参数名

    描述

    主题名称

    待添加订阅的主题名称,不需要修改。

    协议

    消息通知的方式。在下拉框中选择需要订阅终端支持的协议。

    直播服务常用的消息通知方式为“短信”“邮件”“HTTP/HTTPS”

    • 短信协议

      订阅的终端为手机,接收到的消息只包含消息内容。

    • 邮件协议

      订阅终端为邮箱,接收到的消息包含消息内容和取消订阅的链接。

    • HTTP/HTTPS协议

      订阅终端为公网网址,消息通知服务向HTTP(S)终端发送的通知消息包括HTTP头部信息与HTTP Content部分。Content部分是JSON格式的字符串。具体详情请参见HTTP(S)消息格式

    订阅终端

    订阅的终端地址,短信、邮件、HTTP以及HTTPS终端支持批量输入,批量添加时,每个终端地址占一行。最多可输入10个终端。

    • 选择“短信”,请输入有效手机号码。

      输入规则为[+] [国家码][手机号码]。国内手机号码可省略[+]或[+] [国家码]。

      例如:

      +8600000000000

      +8600000000001

    • 选择“邮件”,请输入有效电子邮件地址。

      例如:

      username@example.com

      username2@example.com

    • 选择“HTTP”或“HTTPS”,请输入公网网址。

      例如:

      http://example.com/notification/action

      http://example2.com/notification/action

  4. 添加订阅后,配置的订阅终端将收到确认订阅消息。若订阅终端为邮件,如图4所示。确认后,设置的订阅终端才能收到该主题发布的消息。

    图4 消息订阅确认

步骤三:设置主题策略

  1. 在消息通知控制台的左侧导航树中,选择主题管理 > 主题,进入主题页面。
  2. 在创建的主题行单击操作列的“更多 > 设置主题策略”,弹出“设置主题策略”页面。
  3. 配置主题策略的参数

    图5 主题策略设置

    访问策略分为基本模式和高级模式,其中基本模式只可对用户和服务设置发布消息的操作权限,如表2所示。也可直接参考设置主题策略

    表2 基本模式说明

    策略对象

    参数名

    描述

    可发布消息的用户

    仅自己(主题创建者)

    仅主题创建者有权限向该主题发布消息。

    所有人

    所有用户均有权限向该主题发布消息。

    仅如下用户

    设置可向该主题发布消息的用户。

    格式为urn:csp:iam::domainId:root

    其中,domainId即为用户的账号ID。多个用户时,以英文逗号隔开,可输入的用户数量没有限制,但生成的策略总长度不超过30KB。
    说明:
    • 您只需填写用户的“账号ID”,输入完成后,单击“确定”。其余内容由系统自动补全。
    • “账号ID”的获取方式:登录消息通知服务控制台,单击右上角用户名下的我的凭证,可查看“账号ID”。

    可发布消息的服务

    设置项如上图所示。

    勾选“LIVE”,表示授权该云服务可对该主题进行操作。

步骤四:配置直播消息订阅

  1. 登录视频直播控制台
  2. 在左侧导航栏中,选择域名管理,进入域名管理页面。
  3. 在需要配置消息订阅的播放域名行,单击“管理”
  4. 在左侧导航树中,选择模板配置 > 消息订阅,进入消息订阅页签。

    消息模板详细介绍请参见录制通知消息模板

    图6 消息订阅模板

  5. 在需要配置消息通知的模板行单击“设置”,弹出消息通知配置页面。

    图7 模板设置
    • 模板名称:录制通知的模板名称,不可修改。
    • 订阅主题:单击右侧的+图标,添加在消息通知服务中创建的主题。
    • 是否开启:选择“开启”订阅终端才能收到该消息通知。

  6. 单击“确定”,完成消息订阅配置。

录制通知消息模板

录制通知的消息模板如下所示,消息中各字段说明如表3所示。

Live Record Notify, domain: {domain}, app_name: {app_name}, stream_name: {stream_name}, download_url: {download_url},  filename: {filename},asset_id: {asset_id}, duration: {duration}, event: {event}, timestamp: {timestamp}
表3 RecordNotifyTemplate字段说明

字段

描述

domain

推流域名。

app_name

应用名称,与推流地址中的AppName保持一致。

stream_name

直播流名称。

download_url

录制文件的下载地址,当event的值不为RECORD_NEW_FILE时,该字段为空。

filename

录制文件的名称,当event的值不为RECORD_NEW_FILE时,该字段为空。

asset_id

录制文件的媒资ID,点播服务分配给该录制文件的唯一标识,当event的值不为RECORD_NEW_FILE时,该字段为空。

duration

录制文件的时长,当event的值不为RECORD_NEW_FILE时,该字段为0。

event

录制事件,包括:

  • RECORD_START: 录制任务开始。
  • RECORD_NEW_FILE:产生新的录制文件。
  • RECORD_OVER:录制任务结束。
  • RECORD_FAIL:录制任务失败。

timestamp

录制时间戳。

相关文档