云豹腾讯小直播接入腾讯云接口详细说明文档

发布来源:云豹科技
发布人:云豹科技
2018-03-26 11:25:38

云豹腾讯小直播API/SDK接入解决方案,提供了更全面稳定的接入服务。通过云豹腾讯小直播Open API和开发工具包(SDK),可以帮助客户快速的搭建一套属于自己的直播系统平台。

1. 公共参数

公共参数是用于标识用户和接口鉴权的参数, 每次请求均需要携带这些参数, 才能正常发起请求。

名称

类型

描述

必选

 

Action

String

接口指令的名称,例如: DataManipulation

 

Region

String

区域参数,用来标识希望操作哪个区域的实例。

 

Timestamp

UInt

当前UNIX时间戳

 

Nonce

UInt

随机正整数,与Timestamp联合起来, 用于防止重放攻击

 

SecretId

String

由腾讯云平台上申请的标识身份的SecretId和SecretKey,

 

 

Signature

String

请求签名,用来验证此次请求的合法性, 

 

2. 数据操作(更新/删除)

2.1 接口描述

域名:yunsou.api.qcloud.com
接口名: DataManipulation
对数据进行添加和删除操作

2.2 输入参数

参数名称

必选

类型

描述

appId

Int

云搜的业务ID,用以表明当前数据请求的业务

op_type

String

操作类型,可为"add"或者"del"

contents.n

Array

文档内容(UTF8编码,长度限制在32k以下)

2.3 输出参数

参数名称

类型

描述

code

Int

错误码, 0: 成功, 其他值: 失败

message

String

错误信息

data

Array

返回详细信息

2.4.1 接口鉴权

示例要新增的业务数据为:{"NA": 1000, "TA": "test1", "TB": "testtitle1", "TC": "testcontent1"}
则上述业务的参数列表如下:

   {

        'Action' : 'DataManipulation',

        'Nonce' : 345122,

        'Region' : 'sz',

        'SecretId' : 'AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA',

        'Timestamp' : 1408704141,

        'op_type': add,

        'appId': 1,

        'contents.0.NA': 1000,

        'contents.0.TA': test1,

        'contents.0.TB': testtitle1,

        'contents.0.TC': testcontent1

    }

根据上述参数列表进行签名,得出的数字签名为:HgIYOPcx5lN6gz8JsCFBNAWp2oQ
注意:
1)在生成签名的过程中,需要将加密字符串中包含的“_”改写成“.”,从而加密产生签名;
2)鉴权时,需要将参数列表按key进行排序:字典序,同时大写在前。

2.4.2 数据更新

根据上一步(2.4.1)中得到的数字签名,以GET请求为例构造请求URL,将数字签名加入到参数Signature中。

   https://yunsou.api.qcloud.com/v2/index.php?

    Action=DataManipulation

    &Nonce=345122

    &Region=sz

    &SecretId=AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA

    &Timestamp=1408704141

        &Signature=HgIYOPcx5lN6gz8JsCFBNAWp2oQ

        &op_type=add

    &appId=1

    &contents.0.NA=1000

    &contents.0.TA=test1

    &contents.0.TB=testtitle1

执行上述操作之后,会将文档{"NA":"1000", "TA":"test1", "TB": "testtitle1", "TC": "testcontent1"}插入到用户的应用中,从而参与检索。
注意:在发送请求过程中,不能将参数字符串中包含的“_”改写成“.”。
上述指令返回的数据结构如下:

   {

        retcode: 0,

        errmsg: "succ",

        data: {

            app_id: 14950002,

            result: [

                   {

                    doc_id: "1000",

                    errno: 0,

                    result: "succ"

            }

            ],

            seq: 1427872563,

            total_result: "succ"

        },

        code: 0,

        message: ""

    }

2.4.3 数据删除

   https://yunsou.api.qcloud.com/v2/index.php?

    Action=DataManipulation

    &Nonce=345122

    &Region=sz

    &SecretId=AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA

    &Timestamp=1408704141

    &Signature=HgIYOPcx5lN6gz8JsCFBNAWp2oQ

        &op_type=del

    &appId=1

    &contents.0.doc_id=1000

    &contents.1.doc_id=2000

执行上述操作之后,会将文档ID为:1000和2000的文档从用户应用中删除,从而不被检索到。

注意:在发送请求过程中,不能将参数字符串中包含的“_”改写成“.”。

3. 数据检索(查询)

3.1 接口描述

域名:yunsou.api.qcloud.com

接口名: DataSearch

对数据进行查询操作

3.1.1 数值过滤

数值过滤功能对应检索请求中的num_filter参数,其参数值的结构描述为:

[N:meta:start:end]

该表达式含义为:属性满足start <= meta值 <= end的文档将会被留下,其它的被过滤。其中,meta字段必须为数值字段。

另外,数值过滤表达式之间支持“与”“或”关系。用&和|符号连接,支持使用括号标识优先级。如,[N:meta1:start:end]&([N:meta2:start:end]|[N:meta3:start:end])

示例:数值过滤表达式

[N:NA:100:150]&[N:NB:200:200]

上述表达式的含义为:查找NA字段在100-150之间,并且NB等于200的结果(其中NA和NB为数值字段)。

3.1.2 分类检索

分类检索对应检索请求中的cl_filter参数,其参数值的结构描述为:

[C:meta:value]

该表达式含义为:对该meta域使用特殊的倒排索引进行检索,特别适用于导航检索。其中meta字段可为数字或数值。

另外,分类检索表达式支持“与”“或”关系。用&和|符号连接,支持使用括号标识优先级。如,[C:meta1:value1]&([C:meta2:value2]|[C:meta3:value3])。

示例:分类过滤表达式

[C:CA:store]&[C:CB:log]

上述表达式的含义为:查找CA字段为store,并且CB字段为log的结果(其中CA和CB为分类域字段)。

3.1.3 用户指定排序

用户指定排序涉及到检索请求中的两个参数:rank_type和extra。

其使用方法如下:

1)rank_type=0:搜索结果按照文本相关性打分降序排列,extra字段被忽略;

2)rank_type=1:搜索结果按照文本相关性打分升序排列,extra字段被忽略;

3) rank_type=2:按照用户输入的extra字段,结合用户在高级组件中定制的排序对返回结果的顺序进行排序

4) rank_type=5:不使用额外的排序策略,按搜索结果直接返回,extra字段被忽略;

rank_type的值被指定为2时,extra参数值的格式为:

META1_TYPE1_META2_TYPE2_rel_TYPE3

以上表达式表示的含义为,排序分成三档,仅在前一档值相同情况下,才会进行下一档排序:

1)第一档按照META1的属性值进行排序,排序类型为TYPE1

2)第二档按照META2的属性值进行排序,排序类型为TYPE2

3)第三档按照rel(即文本相关性得分进行排序),排序类型为TYPE3。注意:rel字段的值非业务数据,而是搜索侧的计算结果

表达式取值方法:

1) Meta:meta本身为属性字段名即可(不含下划线,避免冲突),但是需要保证需要进行排序的属性是数值字段

2) Type:

Type=0: 当前属性越小,排序越靠前;

Type=1:当前属性越大,排序越靠前;

3.2输出参数

参数名称

类型

描述

code

Int

错误码, 0: 成功, 其他值: 失败

message

String

错误信息

echo

String

与检索请求中的echo相对应

result_num

Int

检索返回的当前页码结果数

display_num

Int

搜索最多可展示结果数,多页

eresult_num

Int

检索结果的估算篇数

cost_time

Int

检索耗时,单位为ms

result_list

Array

检索结果列表

seg_list

Array

检索的分词结果,array类型,可包含多个

检索结果列表说明:

参数名称

类型

描述

doc_id

Int

检索文档id

doc_meta

String

摘要信息

search_debuginfo

String

文档级回传信息

l2_score

Float

精计算打分

3.3 详细示例

示例业务详细信息如下表:

 

参数名称

参数描述

必选

参数值示例

腾讯云公共参数

Action

方法名

DataSearch

SecretId

SecretId

AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA

Timestamp

当前时间戳

1408704141

Nonce

随机正整数

345122

业务参数

appId

业务ID

1

search_query

检索串

qq

page_id

检索页码

0

num_per_page

每页结果数

10

下面以上述业务为例,详细说明“数据检索”接口的使用方法。

3.4 接口鉴权

上述业务的参数列表如下:

   {

        'Action' : 'DataSearch',

        'Nonce' : 345122,

        'Region' : 'sz',

        'SecretId' : 'AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA',

        'Timestamp' : 1408704141,

        'appId': 1,

        'search_query': 'qq',

        'page_id': 0,

        'num_per_page': 10

    }

根据上述参数列表进行签名,得出的数字签名为:HgIYOPcx5lN6gz8JsCFBNAWp2oQ(示例),详细的数字签名的生成方法请参照:《腾讯云接口鉴权》。
注意:
1)在生成签名的过程中,需要将加密字符串中包含的“_”改写成“.”,从而加密产生签名;
2)鉴权时,需要将参数列表按key进行排序:字典序,同时大写在前。

3.5 数据检索

根据上一步(3.4.1)中得到的数字签名,以GET请求为例构造请求URL,将数字签名加入到参数Signature中。

   https://yunsou.api.qcloud.com/v2/index.php?

    Action=DataSearch

    &Nonce=345122

    &Region=sz

    &SecretId=AKIDz8krbsJ5yKBZQpn74WFkmLPx3gnPhESA

    &Timestamp=1408704141

    &Signature=HgIYOPcx5lN6gz8JsCFBNAWp2oQ

        &appId=1

    &search_query=qq

    &page_id=0

    &num_per_page=10

执行上述操作之后,会将文档{"NA":"1000", "TA":"test1", "TB": "testtitle1", "TC": "testcontent1"}插入到用户的应用中,从而参与检索。

注意:在发送请求过程中,不能将参数字符串中包含的“_”改写成“.”。

云豹腾讯小直播的接口是根据腾讯云接口配置的,无论是并发量还是承载量都远远大于市面上的直播系统;云豹腾讯云小直播是经过无数次压力测试验证过的,值得客户信赖的一份产品。

注:本文接口转自腾讯云直播接口文档

声明:
以上内容为云豹科技作者本人原创,未经作者本人同意,禁止转载,否则将追究相关法律责任