更新时间:2024-12-12 GMT+08:00

创建智能直播间互动规则库

功能介绍

该接口用于创建智能直播间互动规则库。

调用方法

请参见如何调用API

URI

POST /v1/{project_id}/smart-live-interaction-rule-groups

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方法请参考获取项目ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。使用Token鉴权方式时必选。

通过调用IAM服务获取用户Token接口获取。

响应消息头中X-Subject-Token的值。

Authorization

String

使用AK/SK方式认证时必选,携带的鉴权信息。

X-Sdk-Date

String

使用AK/SK方式认证时必选,请求的发生时间。

格式为(YYYYMMDD'T'HHMMSS'Z')。

X-Project-Id

String

使用AK/SK方式认证时必选,携带项目ID信息。

X-App-UserId

String

第三方用户ID。不允许输入中文。

表3 请求Body参数

参数

是否必选

参数类型

描述

group_name

String

互动规则库名称

interaction_rules

Array of InteractionRuleInfo objects

互动规则列表

表4 InteractionRuleInfo

参数

是否必选

参数类型

描述

rule_index

String

参数解释

规则索引。用于触发规则时索引具体规则。

约束限制

无需用户填写。

取值范围

字符0-64位

默认取值

不涉及。

rule_name

String

参数解释

规则名称。

约束限制

不涉及。

取值范围

字符0-256位

默认取值

不涉及。

enabled

Boolean

参数解释

是否启用。

约束限制

不涉及。

取值范围

  • true:启用

  • fasle:不启用

默认取值

true

event_type

Integer

参数解释

规则匹配直播事件类型。接口的取值范围[0,100],实际业务取值如下所示:

  • 1:弹幕事件

  • 2:用户入场事件

  • 3:用户点赞事件

  • 4:用户送礼事件

  • 10: 预置话术事件

请以实际业务取值为准。

说明:
  • 1,2,3,4:与LiveEventReport中的event.type对应。

  • 10:匹配预置剧本

约束限制

不涉及。

默认取值

不涉及

取值范围:

0-100

hit_condition

HitCondition object

规则命中的条件

trigger

TriggerProcess object

规则命中后处理

review_config

ReviewConfig object

内容审核配置

表5 HitCondition

参数

是否必选

参数类型

描述

relation

String

参数解释

条件关系。对于多个条件的逻辑运算关系。

约束限制

不涉及。

取值范围

  • AND:表示多个条件同时满足。

  • OR:表示多个条件满足其一即可。

  • RESERVED:兜底回复不会去判断其他命中条件。

默认取值

不涉及。

priority

Integer

参数解释

优先级,数值越低优先级越高;取值0-999,默认值为500,为可选值

约束限制

不涉及

取值范围:

0-999

默认取值:

500

tags

Array of HitConditionTag objects

匹配关系配置

表6 HitConditionTag

参数

是否必选

参数类型

描述

tag

String

参数解释

事件内容关键字段

说明:
  • event_type为1,2,3,4:与LiveEventReport中event.content中反序列化后的JSON字段对应。如:弹幕事件上报事件。

    {

    "timestamp": 1694481224245,

    "type": 1,

    "content": "{"user":{"userId":"2027271526","name":"","level":17,"badge":"","badgeLevel":0},"content":""}"

    }

    匹配弹幕内容,填写content;匹配用户平台等级,填写level。

  • 10:固定填写content即可。

约束限制

不涉及

取值范围

字符长度0-256位

默认取值

不涉及

operation

String

参数解释

字段取值处理

约束限制

不涉及

取值范围

  • SUM:累计

  • AVG:平均

  • COUNT:计数

  • NONE:无处理

默认取值:

NONE

match

String

参数解释

匹配类型。关键词匹配建议使用REGEX。

约束限制

不涉及。

取值范围

  • EQUAL: 完全相等

  • REGEX:正则匹配

  • MATH_GT:数值大于

  • MATH_GE:数值大于等于

  • MATH_LT:数值小于

  • MATH_LE:数值小于等于

  • MATH_EQ:数值相等

默认取值

不涉及

value

String

参数解释

匹配值。

约束限制

不涉及

取值范围

字符长度0-1024

默认取值

不涉及。

表7 TriggerProcess

参数

是否必选

参数类型

描述

time_window

Integer

参数解释

处理抑制时长。单位秒。

  • -1:表示整场直播仅触发一次。

  • 0:表示无抑制,每次都触发。

  • 其他值n:表示n秒内仅触发一次。

约束限制

不涉及

默认取值

不涉及

取值范围:

-1-7200

reply_mode

String

参数解释

回复类型。

约束限制

不涉及

取值范围

  • SYSTEM_REPLY:系统自动回复预先设置的话术。

  • CALLBACK:回调给其他服务,携带设置的话术。

  • SHOW_LAYER:仅显示叠加图层,不影响话术。

  • INTELLIGENT_REPLY:使用配置的大模型生成回复话术。

默认取值

不涉及

layer_config

SmartLayerConfig object

智能图层配置。

extra_layer_config

SmartLayerConfig object

额外图层,用于有产品同时需要显示动态文本场景,配置第二图层使用。

reply_texts

Array of strings

参数解释

回复话术集。

约束限制

不涉及

取值范围

最大支持5条预置话术。

单条话术字符长度0-1024位。

默认取值

不涉及

reply_audios

Array of ReplyAudioInfo objects

参数解释

回复音频集。填写audio_url。

约束限制

不涉及

取值范围

最大支持5条预置音频。

默认取值

不涉及

reply_order

String

参数解释

回复话术选择次序。

约束限制

不涉及

取值范围

  • RANDOM:随机

  • ORDER:顺序循环

默认取值

不涉及

reply_role

String

参数解释

回复角色。

约束限制

不涉及

取值范围

  • STREAMER:主播

  • CO_STREAMER:助播,仅声音。

默认取值:

STREAMER

robot_id

String

参数解释

机器人ID。

约束限制

reply_mode为INTELLIGENT_REPLY时必填,智能交互配置的大模型机器人ID。

获取方法请参考创建应用

取值范围

字符长度0-64位。

默认取值

不涉及

play_type

String

回复播放类型。

  • APPEND:追加,放置在场景播放队列尾部

  • INSERT: 插入,在两个音频文件,或者文本句末添加。

  • PLAY_NOW : 立即插入,收到指令后,立即播放,无需等待句末。

默认取值:

PLAY_NOW

表8 SmartLayerConfig

参数

是否必选

参数类型

描述

layer_type

String

图层类型。

  • IMAGE: 素材图片图层

  • VIDEO: 素材视频图层

  • TEXT: 文本图层

asset_id

String

图层所需资产的资产id,外部资产信息无需填写

position

LayerPositionConfig object

图层位置配置。

size

LayerSizeConfig object

图层大小配置。

image_config

SmartImageLayerConfig object

素材图片图层配置。

video_config

SmartVideoLayerConfig object

素材视频图层配置。

text_config

SmartTextLayerConfig object

素材视频图层配置。

表9 LayerPositionConfig

参数

是否必选

参数类型

描述

dx

Integer

参数解释

图层左上角像素点的X轴位置值(画布左上角坐标是0x0)。

横屏(16:9)画布像素为1920x1080;竖屏(9:16)画布像素为1080x1920。

约束限制

该值为相对于画布的像素值,仅表示布局位置关系,与输出画面分辨率无关。

取值范围:

-1920-3840

默认取值:

0

dy

Integer

参数解释

图层图片左上角像素点的Y轴位置值(画布左上角坐标是0x0)。

横屏(16:9)画布像素为1920x1080;竖屏(9:16)画布像素为1080x1920。

约束限制

该值为相对于画布的像素值,仅表示布局位置关系,与输出画面分辨率无关。

取值范围:

-1920-3840

默认取值:

0

layer_index

Integer

参数解释

图片、视频、人物图的层顺序。

说明:

图层顺序为从1开始的整数,底层图层顺序是1,往上依次增加。

约束限制

如果出现重复则重复图层叠加关系随机。

取值范围:

1-100

默认取值:

100

表10 LayerSizeConfig

参数

是否必选

参数类型

描述

width

Integer

参数解释

图层图片宽度像素值(相对画布大小)。

横屏(16:9)画布像素为1920x1080;竖屏(9:16)画布像素为1080x1920。

约束限制

该值为相对于画布的像素值,仅表示布局位置关系,与输出画面分辨率无关。

取值范围:

1-7680

height

Integer

参数解释

图层图片高度像素值(相对画布大小)。

横屏(16:9)画布像素为1920x1080;竖屏(9:16)画布像素为1080x1920。

约束限制

该值为相对于画布的像素值,仅表示布局位置关系,与输出画面分辨率无关。|

取值范围:

1-7680

表11 SmartImageLayerConfig

参数

是否必选

参数类型

描述

image_url

String

图片文件的URL。

display_duration

Integer

参数解释

图片显示时长,单位s。

显示时长规则为,若携带reply_texts、reply_audios,则与播放语音内容时长保持一致。若未携带,则与匹配的关键词语音内容时长保持一致。

取值范围:

0-3600

默认取值:

0

表12 SmartVideoLayerConfig

参数

是否必选

参数类型

描述

video_url

String

视频文件的URL。

video_cover_url

String

视频封面文件的URL。

display_duration

Integer

参数解释

图片显示时长,单位s。

显示时长规则为,若携带reply_texts、reply_audios,则与播放语音内容时长保持一致。若未携带,则与匹配的关键词语音内容时长保持一致。

取值范围:

0-3600

默认取值:

0

表13 SmartTextLayerConfig

参数

是否必选

参数类型

描述

text_type

String

参数解释

文本类型。

  • DYNAMIC:动态文本,需要进行关键字替换。

  • STATIC:静态文本。

默认取值:

DYNAMIC

text_context

String

文本。

font_name

String

参数解释

字体。当前支持的字体:

  • HarmonyOS_Sans_SC_Black:鸿蒙粗体

  • HarmonyOS_Sans_SC_Regular:鸿蒙常规

  • HarmonyOS_Sans_SC_Thin:鸿蒙细体

  • fzyouh:方正瘦体

默认取值:

HarmonyOS_Sans_SC_Black

font_size

Integer

参数解释

字体大小(像素)。

业务取值范围:[4, 120],请以业务取值范围为准。

取值范围:

0-120

默认取值:

16

font_color

String

参数解释

字体颜色。RGB颜色值。

默认取值:

#FFFFFF

display_duration

Integer

参数解释

文本显示时长,单位s。

显示时长规则为,若携带reply_texts、reply_audios,则与播放语音内容时长保持一致;若未携带,则与匹配的关键词语音内容时长保持一致。

取值范围:

0-3600

默认取值:

0

表14 ReplyAudioInfo

参数

是否必选

参数类型

描述

audio_url

String

音频URL

audio_name

String

音频名

表15 ReviewConfig

参数

是否必选

参数类型

描述

no_need_review

Boolean

免审核。 目前仅白名单用户可使用此参数,非白名单用户跟随系统策略审核。

响应参数

状态码: 200

表16 响应Header参数

参数

参数类型

描述

X-Request-Id

String

请求ID。

表17 响应Body参数

参数

参数类型

描述

group_id

String

互动规则库ID

状态码: 400

表18 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误描述。

状态码: 401

表19 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误描述。

状态码: 500

表20 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误描述。

请求示例

POST https://{endpoint}/v1/70b76xxxxxx34253880af501cdxxxxxx/smart-live-interaction-rule-groups

{
  "group_name" : "欢迎词"
}

响应示例

状态码: 200

成功。

{
  "group_id" : "26f06524-4f75-4b3a-a853-b649a21aaf66"
}

状态码: 400

{
  "error_code" : "MSS.00000003",
  "error_msg" : "Invalid parameter"
}

状态码: 401

{
  "error_code" : "MSS.00000001",
  "error_msg" : "Unauthorized"
}

状态码: 500

{
  "error_code" : "MSS.00000004",
  "error_msg" : "Internal Error"
}

状态码

状态码

描述

200

成功。

400

请求传参异常,包含错误码及对应描述。

401

未鉴权或鉴权失败。

500

内部服务错误。

错误码

请参见错误码