v20180711

package
v3.0.86+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 6, 2019 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const APIVersion = "2018-07-11"

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	common.Client
}

func NewClient

func NewClient(credential *common.Credential, region string, clientProfile *profile.ClientProfile) (client *Client, err error)

func NewClientWithSecretId

func NewClientWithSecretId(secretId, secretKey, region string) (client *Client, err error)

Deprecated

func (*Client) DescribeFilterResult

func (c *Client) DescribeFilterResult(request *DescribeFilterResultRequest) (response *DescribeFilterResultResponse, err error)

根据应用ID和文件ID查询识别结果

func (*Client) DescribeFilterResultList

func (c *Client) DescribeFilterResultList(request *DescribeFilterResultListRequest) (response *DescribeFilterResultListResponse, err error)

根据日期查询识别结果列表

func (*Client) DescribeScanResultList

func (c *Client) DescribeScanResultList(request *DescribeScanResultListRequest) (response *DescribeScanResultListResponse, err error)

本接口(DescribeScanResultList)用于查询语音检测结果,查询任务列表最多支持100个。 <p style="color:red">如果在提交语音检测任务时未设置 Callback 字段,则需要通过本接口获取检测结果</p>

func (*Client) ScanVoice

func (c *Client) ScanVoice(request *ScanVoiceRequest) (response *ScanVoiceResponse, err error)

本接口(ScanVoice)用于提交语音检测任务,检测任务列表最多支持100个。 </br></br> <h4><b>接口功能说明:</b></h4> <li>支持对语音流或语音文件进行检测,判断其中是否包含违规内容。</li> <li>支持设置回调地址 Callback 获取检测结果,同时支持通过接口(查询语音检测结果)主动轮询获取检测结果。</li> <li>支持场景输入,包括:谩骂、色情、涉政等场景</li> <li>支持批量提交检测任务。检测任务列表最多支持100个。</li> </br> <h4><b>音频文件限制说明:</b></h4> <li>音频文件大小限制:100 M</li> <li>音频文件时长限制:30分钟</li> <li>音频文件格式支持的类型:.wav、.m4a、.amr、.mp3、.aac、.wma、.ogg</li> </br> <h4><b>语音流限制说明:</b></h4> <li>语音流格式支持的类型:.m3u8、.flv</li> <li>语音流支持的传输协议:RTMP、HTTP、HTTPS</li> <li>语音流时长限制:4小时</li> </br> <h4 id="Label_Value"><b>Scenes 与 Label 参数说明:</b></h4> <p>提交语音检测任务时,需要指定 Scenes 场景参数,<font color="red">目前要求您设置 Scenes 参数值为:["default"]</font>;而在检测结果中,则包含请求时指定的场景,以及对应类型的检测结果。</p> <table> <thread> <tr> <th>场景</th> <th>描述</th> <th>Label</th> </tr> </thread> <tbody> <tr> <td>语音检测</td> <td>语音检测的检测类型</td> <td> <p>normal:正常文本</p> <p>porn:色情</p> <p>politics:涉政</p> <p>abuse:谩骂</p> <p>ad :广告</p> <p>terrorism:暴恐</p> <p>contraband :违禁</p> <p>customized:自定义词库</p> </td> </tr> </tbody> </table> </br> <h4 id="Callback_Declare"><b>回调相关说明:</b></h4> <li>如果在请求参数中指定了回调地址参数 Callback,即一个 HTTP(S) 协议接口的 URL,则需要支持 POST 方法,传输数据编码采用 UTF-8。</li> <li>在推送回调数据后,接收到的 HTTP 状态码为 200 时,表示推送成功。</li> <li>HTTP 头参数说明:</li> <table> <thread> <tr> <th>名称</th> <th>类型</th> <th>是否必需</th> <th>描述</th> </tr> </thread> <tbody> <tr> <td>Signatue</td> <td>string</td> <td>是</td> <td>签名,具体见<a href="#Callback_Signatue">签名生成说明</a></td> </tr> </tbody> </table> <ul id="Callback_Signatue">

<li>签名生成说明:</li>
<ul>
	<li>使用 HMAC-SH1 算法, 最终结果做 BASE64 编码;</li>
	<li>签名原文串为 POST+body 的整个json内容(长度以 Content-Length 为准);</li>
	<li>签名key为应用的 secrectkey,可以通过控制台查看。</li>
</ul>

</ul>

<ul>

<li>回调请求 Body 的字段说明如下:</li>

</ul> <table> <thread> <tr> <th>名称</th> <th>类型</th> <th>是否必需</th> <th>描述</th> </tr> </thread> <tbody> <tr> <td>Data</td> <td>Array of <a href="https://cloud.tencent.com/document/api/607/35375#DescribeScanResult">DescribeScanResult</a></td> <td>是</td> <td>语音检测任务的结果</td> </tr> </tbody> </table> <li>回调示例如下<font color="red">(详细字段说明见上述表格中 Data 字段说明)</font>:</li>

<pre><code>{
	"Data": [{
		"Code": 0,
		"DataId": "1400000000_test_data_id",
		"ScanFinishTime": 1566720906,
		"HitFlag": true,
		"Live": false,
		"Msg": "",
		"ScanPiece": [{
			"DumpUrl": "",
			"HitFlag": true,
			"MainType": "abuse",
			"RoomId": "123",
			"OpenId": "xxx",
			"ScanDetail": [{
				"EndTime": 1110,
				"KeyWord": "xxx",
				"Label": "abuse",
				"Rate": "90.00",
				"StartTime": 1110
			}, {
				"EndTime": 1380,
				"KeyWord": "xxx",
				"Label": "abuse",
				"Rate": "90.00",
				"StartTime": 930
			}, {
				"EndTime": 1560,
				"KeyWord": "xxx",
				"Label": "abuse",
				"Rate": "90.00",
				"StartTime": 930
			}, {
				"EndTime": 2820,
				"KeyWord": "xxx",
				"Label": "abuse",
				"Rate": "90.00",
				"StartTime": 2490
			}]
		}],
		"ScanStartTime": 1566720905,
		"Scenes": [
			"default"
		],
		"Status": "Success",
		"TaskId": "xxx",
		"Url": "https://xxx/xxx.m4a"
	}],
	"RequestId": "xxx"
}</code></pre>

func (*Client) VoiceFilter

func (c *Client) VoiceFilter(request *VoiceFilterRequest) (response *VoiceFilterResponse, err error)

本接口用于识别涉黄、涉政等违规音频,成功会回调配置在应用的回调地址。回调示例如下: {"BizId":0,"FileId":"test_file_id","FileName":"test_file_name","FileUrl":"test_file_url","OpenId":"test_open_id","TimeStamp":"0000-00-00 00:00:00","Data":[{"Type":1,"Word":"xx"}]} Type表示过滤类型,1:政治,2:色情,3:谩骂

type DescribeFilterResultListRequest

type DescribeFilterResultListRequest struct {
	*tchttp.BaseRequest

	// 应用ID
	BizId *uint64 `json:"BizId,omitempty" name:"BizId"`

	// 开始时间,格式为 年-月-日,如: 2018-07-11
	StartDate *string `json:"StartDate,omitempty" name:"StartDate"`

	// 结束时间,格式为 年-月-日,如: 2018-07-11
	EndDate *string `json:"EndDate,omitempty" name:"EndDate"`

	// 偏移量,默认值为0。
	Offset *uint64 `json:"Offset,omitempty" name:"Offset"`

	// 返回数量,默认值为10,最大值为100。
	Limit *uint64 `json:"Limit,omitempty" name:"Limit"`
}

func NewDescribeFilterResultListRequest

func NewDescribeFilterResultListRequest() (request *DescribeFilterResultListRequest)

func (*DescribeFilterResultListRequest) FromJsonString

func (r *DescribeFilterResultListRequest) FromJsonString(s string) error

func (*DescribeFilterResultListRequest) ToJsonString

func (r *DescribeFilterResultListRequest) ToJsonString() string

type DescribeFilterResultListResponse

type DescribeFilterResultListResponse struct {
	*tchttp.BaseResponse
	Response *struct {

		// 过滤结果总数
		// 注意:此字段可能返回 null,表示取不到有效值。
		TotalCount *uint64 `json:"TotalCount,omitempty" name:"TotalCount"`

		// 当前分页过滤结果列表
		// 注意:此字段可能返回 null,表示取不到有效值。
		Data []*VoiceFilterInfo `json:"Data,omitempty" name:"Data" list`

		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
	} `json:"Response"`
}

func NewDescribeFilterResultListResponse

func NewDescribeFilterResultListResponse() (response *DescribeFilterResultListResponse)

func (*DescribeFilterResultListResponse) FromJsonString

func (r *DescribeFilterResultListResponse) FromJsonString(s string) error

func (*DescribeFilterResultListResponse) ToJsonString

func (r *DescribeFilterResultListResponse) ToJsonString() string

type DescribeFilterResultRequest

type DescribeFilterResultRequest struct {
	*tchttp.BaseRequest

	// 应用ID
	BizId *uint64 `json:"BizId,omitempty" name:"BizId"`

	// 文件ID
	FileId *string `json:"FileId,omitempty" name:"FileId"`
}

func NewDescribeFilterResultRequest

func NewDescribeFilterResultRequest() (request *DescribeFilterResultRequest)

func (*DescribeFilterResultRequest) FromJsonString

func (r *DescribeFilterResultRequest) FromJsonString(s string) error

func (*DescribeFilterResultRequest) ToJsonString

func (r *DescribeFilterResultRequest) ToJsonString() string

type DescribeFilterResultResponse

type DescribeFilterResultResponse struct {
	*tchttp.BaseResponse
	Response *struct {

		// 过滤结果
		// 注意:此字段可能返回 null,表示取不到有效值。
		Data *VoiceFilterInfo `json:"Data,omitempty" name:"Data"`

		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
	} `json:"Response"`
}

func NewDescribeFilterResultResponse

func NewDescribeFilterResultResponse() (response *DescribeFilterResultResponse)

func (*DescribeFilterResultResponse) FromJsonString

func (r *DescribeFilterResultResponse) FromJsonString(s string) error

func (*DescribeFilterResultResponse) ToJsonString

func (r *DescribeFilterResultResponse) ToJsonString() string

type DescribeScanResult

type DescribeScanResult struct {

	// 业务返回码
	Code *int64 `json:"Code,omitempty" name:"Code"`

	// 数据唯一 ID
	DataId *string `json:"DataId,omitempty" name:"DataId"`

	// 检测完成的时间戳
	ScanFinishTime *uint64 `json:"ScanFinishTime,omitempty" name:"ScanFinishTime"`

	// 是否违规
	HitFlag *bool `json:"HitFlag,omitempty" name:"HitFlag"`

	// 是否为流
	Live *bool `json:"Live,omitempty" name:"Live"`

	// 业务返回描述
	// 注意:此字段可能返回 null,表示取不到有效值。
	Msg *string `json:"Msg,omitempty" name:"Msg"`

	// 检测结果,Code 为 0 时返回
	// 注意:此字段可能返回 null,表示取不到有效值。
	ScanPiece []*ScanPiece `json:"ScanPiece,omitempty" name:"ScanPiece" list`

	// 提交检测的时间戳
	ScanStartTime *uint64 `json:"ScanStartTime,omitempty" name:"ScanStartTime"`

	// 语音检测场景,对应请求时的 Scene
	Scenes []*string `json:"Scenes,omitempty" name:"Scenes" list`

	// 语音检测任务 ID,由后台分配
	TaskId *string `json:"TaskId,omitempty" name:"TaskId"`

	// 文件或接流地址
	Url *string `json:"Url,omitempty" name:"Url"`

	// 检测任务执行结果状态,分别为:
	// <li>Start: 任务开始</li>
	// <li>Success: 成功结束</li>
	// <li>Error: 异常</li>
	Status *string `json:"Status,omitempty" name:"Status"`
}

type DescribeScanResultListRequest

type DescribeScanResultListRequest struct {
	*tchttp.BaseRequest

	// 应用 ID,在控制台统一创建。
	BizId *uint64 `json:"BizId,omitempty" name:"BizId"`

	// 查询的任务 ID 列表,任务 ID 列表最多支持 100 个。
	TaskIdList []*string `json:"TaskIdList,omitempty" name:"TaskIdList" list`
}

func NewDescribeScanResultListRequest

func NewDescribeScanResultListRequest() (request *DescribeScanResultListRequest)

func (*DescribeScanResultListRequest) FromJsonString

func (r *DescribeScanResultListRequest) FromJsonString(s string) error

func (*DescribeScanResultListRequest) ToJsonString

func (r *DescribeScanResultListRequest) ToJsonString() string

type DescribeScanResultListResponse

type DescribeScanResultListResponse struct {
	*tchttp.BaseResponse
	Response *struct {

		// 要查询的语音检测任务的结果
		// 注意:此字段可能返回 null,表示取不到有效值。
		Data []*DescribeScanResult `json:"Data,omitempty" name:"Data" list`

		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
	} `json:"Response"`
}

func NewDescribeScanResultListResponse

func NewDescribeScanResultListResponse() (response *DescribeScanResultListResponse)

func (*DescribeScanResultListResponse) FromJsonString

func (r *DescribeScanResultListResponse) FromJsonString(s string) error

func (*DescribeScanResultListResponse) ToJsonString

func (r *DescribeScanResultListResponse) ToJsonString() string

type ScanDetail

type ScanDetail struct {

	// 违规场景,参照Label定义
	Label *string `json:"Label,omitempty" name:"Label"`

	// 该场景下概率[0.00,100.00],分值越大违规概率越高
	Rate *string `json:"Rate,omitempty" name:"Rate"`

	// 违规关键字
	KeyWord *string `json:"KeyWord,omitempty" name:"KeyWord"`

	// 关键字在音频的开始时间,从0开始的偏移量,单位为毫秒
	StartTime *uint64 `json:"StartTime,omitempty" name:"StartTime"`

	// 关键字在音频的结束时间,从0开始的偏移量,,单位为毫秒
	EndTime *uint64 `json:"EndTime,omitempty" name:"EndTime"`
}

type ScanPiece

type ScanPiece struct {

	// 流检测时返回,音频转存地址,保留30min
	// 注意:此字段可能返回 null,表示取不到有效值。
	DumpUrl *string `json:"DumpUrl,omitempty" name:"DumpUrl"`

	// 是否违规
	HitFlag *bool `json:"HitFlag,omitempty" name:"HitFlag"`

	// 违规主要类型
	// 注意:此字段可能返回 null,表示取不到有效值。
	MainType *string `json:"MainType,omitempty" name:"MainType"`

	// 语音检测详情
	ScanDetail []*ScanDetail `json:"ScanDetail,omitempty" name:"ScanDetail" list`

	// gme实时语音房间id,透传任务传入时的RoomId
	// 注意:此字段可能返回 null,表示取不到有效值。
	RoomId *string `json:"RoomId,omitempty" name:"RoomId"`

	// gme实时语音用户id,透传任务传入时的OpenId
	// 注意:此字段可能返回 null,表示取不到有效值。
	OpenId *string `json:"OpenId,omitempty" name:"OpenId"`
}

type ScanVoiceRequest

type ScanVoiceRequest struct {
	*tchttp.BaseRequest

	// 应用ID,登录控制台创建应用得到的AppID。
	BizId *uint64 `json:"BizId,omitempty" name:"BizId"`

	// 语音检测场景,参数值目前要求为 default。 预留场景设置: 谩骂、色情、涉政、广告、暴恐、违禁等场景,<a href="#Label_Value">具体取值见上述 Label 说明。</a>
	Scenes []*string `json:"Scenes,omitempty" name:"Scenes" list`

	// 是否为直播流。值为 false 时表示普通语音文件检测;为 true 时表示语音流检测。
	Live *bool `json:"Live,omitempty" name:"Live"`

	// 语音检测任务列表,列表最多支持100个检测任务。结构体中包含:
	// <li>DataId:数据的唯一ID</li>
	// <li>Url:数据文件的url,为 urlencode 编码,流式则为拉流地址</li>
	Tasks []*Task `json:"Tasks,omitempty" name:"Tasks" list`

	// 异步检测结果回调地址,具体见上述<a href="#Callback_Declare">回调相关说明</a>。(说明:该字段为空时,必须通过接口(查询语音检测结果)获取检测结果)。
	Callback *string `json:"Callback,omitempty" name:"Callback"`
}

func NewScanVoiceRequest

func NewScanVoiceRequest() (request *ScanVoiceRequest)

func (*ScanVoiceRequest) FromJsonString

func (r *ScanVoiceRequest) FromJsonString(s string) error

func (*ScanVoiceRequest) ToJsonString

func (r *ScanVoiceRequest) ToJsonString() string

type ScanVoiceResponse

type ScanVoiceResponse struct {
	*tchttp.BaseResponse
	Response *struct {

		// 语音检测返回。Data 字段是 JSON 数组,每一个元素包含:<li>DataId: 请求中对应的 DataId。</li>
		// <li>TaskID :该检测任务的 ID,用于轮询语音检测结果。</li>
		Data []*ScanVoiceResult `json:"Data,omitempty" name:"Data" list`

		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
	} `json:"Response"`
}

func NewScanVoiceResponse

func NewScanVoiceResponse() (response *ScanVoiceResponse)

func (*ScanVoiceResponse) FromJsonString

func (r *ScanVoiceResponse) FromJsonString(s string) error

func (*ScanVoiceResponse) ToJsonString

func (r *ScanVoiceResponse) ToJsonString() string

type ScanVoiceResult

type ScanVoiceResult struct {

	// 数据ID
	DataId *string `json:"DataId,omitempty" name:"DataId"`

	// 任务ID
	TaskId *string `json:"TaskId,omitempty" name:"TaskId"`
}

type Task

type Task struct {

	// 数据的唯一ID
	DataId *string `json:"DataId,omitempty" name:"DataId"`

	// 数据文件的url,为 urlencode 编码,流式则为拉流地址
	Url *string `json:"Url,omitempty" name:"Url"`

	// gme实时语音房间id,通过gme实时语音进行语音分析时输入
	RoomId *string `json:"RoomId,omitempty" name:"RoomId"`

	// gme实时语音用户id,通过gme实时语音进行语音分析时输入
	OpenId *string `json:"OpenId,omitempty" name:"OpenId"`
}

type VoiceFilter

type VoiceFilter struct {

	// 过滤类型,1:政治,2:色情,3:涉毒,4:谩骂
	// 注意:此字段可能返回 null,表示取不到有效值。
	Type *uint64 `json:"Type,omitempty" name:"Type"`

	// 过滤命中关键词
	// 注意:此字段可能返回 null,表示取不到有效值。
	Word *string `json:"Word,omitempty" name:"Word"`
}

type VoiceFilterInfo

type VoiceFilterInfo struct {

	// 应用id
	// 注意:此字段可能返回 null,表示取不到有效值。
	BizId *uint64 `json:"BizId,omitempty" name:"BizId"`

	// 文件id,表示文件唯一id
	// 注意:此字段可能返回 null,表示取不到有效值。
	FileId *string `json:"FileId,omitempty" name:"FileId"`

	// 文件名
	// 注意:此字段可能返回 null,表示取不到有效值。
	FileName *string `json:"FileName,omitempty" name:"FileName"`

	// 用户id
	// 注意:此字段可能返回 null,表示取不到有效值。
	OpenId *string `json:"OpenId,omitempty" name:"OpenId"`

	// 数据创建时间
	// 注意:此字段可能返回 null,表示取不到有效值。
	Timestamp *string `json:"Timestamp,omitempty" name:"Timestamp"`

	// 过滤结果列表
	// 注意:此字段可能返回 null,表示取不到有效值。
	Data []*VoiceFilter `json:"Data,omitempty" name:"Data" list`
}

type VoiceFilterRequest

type VoiceFilterRequest struct {
	*tchttp.BaseRequest

	// 应用ID,登录[控制台](https://console.cloud.tencent.com/gamegme)创建应用得到的AppID
	BizId *uint64 `json:"BizId,omitempty" name:"BizId"`

	// 文件ID,表示文件唯一ID
	FileId *string `json:"FileId,omitempty" name:"FileId"`

	// 文件名
	FileName *string `json:"FileName,omitempty" name:"FileName"`

	// 文件url,urlencode编码,FileUrl和FileContent二选一
	FileUrl *string `json:"FileUrl,omitempty" name:"FileUrl"`

	// 文件内容,base64编码,FileUrl和FileContent二选一
	FileContent *string `json:"FileContent,omitempty" name:"FileContent"`

	// 用户ID
	OpenId *string `json:"OpenId,omitempty" name:"OpenId"`
}

func NewVoiceFilterRequest

func NewVoiceFilterRequest() (request *VoiceFilterRequest)

func (*VoiceFilterRequest) FromJsonString

func (r *VoiceFilterRequest) FromJsonString(s string) error

func (*VoiceFilterRequest) ToJsonString

func (r *VoiceFilterRequest) ToJsonString() string

type VoiceFilterResponse

type VoiceFilterResponse struct {
	*tchttp.BaseResponse
	Response *struct {

		// 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
		RequestId *string `json:"RequestId,omitempty" name:"RequestId"`
	} `json:"Response"`
}

func NewVoiceFilterResponse

func NewVoiceFilterResponse() (response *VoiceFilterResponse)

func (*VoiceFilterResponse) FromJsonString

func (r *VoiceFilterResponse) FromJsonString(s string) error

func (*VoiceFilterResponse) ToJsonString

func (r *VoiceFilterResponse) ToJsonString() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL