js-apis-intelligentVoice.md 57.4 KB
Newer Older
1 2
# @ohos.ai.intelligentVoice (智能语音)

L
lvqiang214 已提交
3 4 5 6 7 8 9
智能语音主要提供了语音注册及语音唤醒相关功能。

该模块提供以下智能语音相关的常用功能:

- [IntelligentVoiceManager](#intelligentvoicemanager):智能语音管理类,明确当前智能语音提供的相关功能,当前支持语音注册、语音唤醒。在进行智能语音相关开发前,需先调用[getIntelligentVoiceManager()](#intelligentvoicegetintelligentvoicemanager)确认当前支持智能语音的相关功能,再进行语音注册和语音唤醒的相关开发。
- [EnrollIntelligentVoiceEngine](#enrollintelligentvoiceengine):实现语音注册。开发者需要先进行智能语音的注册,然后才能进行唤醒。
- [WakeupIntelligentVoiceEngine](#wakeupintelligentvoiceengine):实现语音唤醒。开发者需要先进行智能语音的注册,然后才能进行唤醒。
10 11 12

> **说明:**
>
L
lvqiang214 已提交
13
> - 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
14
>
L
lvqiang214 已提交
15
> - 本模块接口为系统接口。
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48

## 导入模块
```js
import intelligentVoice from '@ohos.ai.intelligentVoice';
```

## intelligentVoice.getIntelligentVoiceManager

getIntelligentVoiceManager(): IntelligentVoiceManager

获取智能语音管理类。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**返回值:**

| 类型                          | 说明         |
| ----------------------------- | ------------ |
| [IntelligentVoiceManager](#intelligentvoicemanager) | 智能语音管理类。 |

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
| 22700101 | No memory.                              |

**示例:** 

```js
L
lvqiang214 已提交
49
var intelligentVoiceManager = null;
L
lvqiang214 已提交
50 51
try {
    intelligentVoiceManager = intelligentVoice.getIntelligentVoiceManager();
L
lvqiang214 已提交
52 53
} catch (err) {
    console.error('Get IntelligentVoiceManager failed. Code:${err.code}, message:${err.message}');
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
}
```

## intelligentVoice.createEnrollIntelligentVoiceEngine

createEnrollIntelligentVoiceEngine(descriptor: EnrollIntelligentVoiceEngineDescriptor, callback: AsyncCallback<EnrollIntelligentVoiceEngine>): void

创建智能语音注册引擎实例,使用callback异步回调。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名   | 类型                                | 必填 | 说明                   |
| -------- | ----------------------------------- | ---- | ---------------------- |
L
lvqiang214 已提交
71 72
| descriptor    | [EnrollIntelligentVoiceEngineDescriptor](#enrollintelligentvoiceenginedescriptor)                              | 是   | 智能语音注册引擎描述符。   |
| callback    | AsyncCallback\<[EnrollIntelligentVoiceEngine](#enrollintelligentvoiceengine)\>         | 是   | 返回注册智能语音引擎。   |
73 74 75 76 77 78 79 80

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
| 22700101 | No memory.                           |
L
lvqiang214 已提交
81
| 22700102 | Input parameter value error.                            |
82 83 84 85 86

**示例:** 

```js
let engineDescriptor = {
L
lvqiang214 已提交
87
  wakeupPhrase: '小花小花',
88
}
L
lvqiang214 已提交
89
var enrollIntelligentVoiceEngine = null;
L
lvqiang214 已提交
90
intelligentVoice.createEnrollIntelligentVoiceEngine(engineDescriptor, (err, data) => {
91
  if (err) {
L
lvqiang214 已提交
92
    console.error(`Failed to create enrollIntelligentVoice engine, Code:${err.code}, message:${err.message}`);
93
  } else {
L
lvqiang214 已提交
94
    console.info('Succeeded in creating enrollIntelligentVoice engine.');
L
lvqiang214 已提交
95
    enrollIntelligentVoiceEngine = data;
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
  }
});
```

## intelligentVoice.createEnrollIntelligentVoiceEngine

createEnrollIntelligentVoiceEngine(descriptor: EnrollIntelligentVoiceEngineDescriptor): Promise&lt;EnrollIntelligentVoiceEngine&gt;


创建智能语音注册引擎实例,使用Promise异步回调。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名   | 类型                                | 必填 | 说明                   |
| -------- | ----------------------------------- | ---- | ---------------------- |
L
lvqiang214 已提交
115
| descriptor    | [EnrollIntelligentVoiceEngineDescriptor](#enrollintelligentvoiceenginedescriptor)                              | 是   | 智能语音注册引擎描述符。   |
116 117 118 119 120

**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
121
| Promise\<[EnrollIntelligentVoiceEngine](#enrollintelligentvoiceengine)\>           | 返回注册智能语音引擎。                   |
122 123 124 125 126 127 128 129

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
| 22700101 | No memory.                           |
L
lvqiang214 已提交
130
| 22700102 | Input parameter value error.                            |
131 132 133 134

**示例:** 

```js
L
lvqiang214 已提交
135
var enrollIntelligentVoiceEngine = null;
136
let engineDescriptor = {
L
lvqiang214 已提交
137
  wakeupPhrase: '小花小花',
138 139
}
intelligentVoice.createEnrollIntelligentVoiceEngine(engineDescriptor).then((data) => {
L
lvqiang214 已提交
140 141
  enrollIntelligentVoiceEngine = data;
  console.info('Succeeded in creating enrollIntelligentVoice engine.');
142
}).catch((err) => {
L
lvqiang214 已提交
143
  console.error(`Failed to create enrollIntelligentVoice engine, Code:${err.code}, message:${err.message}`);
144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161
});
```

## intelligentVoice.createWakeupIntelligentVoiceEngine

createWakeupIntelligentVoiceEngine(descriptor: WakeupIntelligentVoiceEngineDescriptor, callback: AsyncCallback&lt;WakeupIntelligentVoiceEngine&gt;): void


创建智能语音唤醒引擎实例,使用callback异步回调。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名   | 类型                                | 必填 | 说明                   |
| -------- | ----------------------------------- | ---- | ---------------------- |
L
lvqiang214 已提交
162 163
| descriptor    | [WakeupIntelligentVoiceEngineDescriptor](#wakeupintelligentvoiceenginedescriptor)                              | 是   | 唤醒智能语音引擎描述符。   |
| callback    | AsyncCallback\<[WakeupIntelligentVoiceEngine](#wakeupintelligentvoiceengine)\>         | 是   | 返回唤醒智能语音引擎。   |
164 165 166 167 168 169 170 171

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
| 22700101 | No memory.                           |
L
lvqiang214 已提交
172
| 22700102 | Input parameter value error.                            |
173 174 175 176 177

**示例:** 

```js
let engineDescriptor = {
L
lvqiang214 已提交
178 179
  needReconfirm: true,
  wakeupPhrase: '小花小花',
180
}
L
lvqiang214 已提交
181
var wakeupIntelligentVoiceEngine = null;
L
lvqiang214 已提交
182
intelligentVoice.createWakeupIntelligentVoiceEngine(engineDescriptor, (err, data) => {
183
  if (err) {
L
lvqiang214 已提交
184
    console.error(`Failed to create wakeupIntelligentVoice engine, Code:${err.code}, message:${err.message}`);
185
  } else {
L
lvqiang214 已提交
186 187
    console.info('Succeeded in creating wakeupIntelligentVoice engine.');
    wakeupIntelligentVoiceEngine = data;
188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205
  }
});
```

## intelligentVoice.createWakeupIntelligentVoiceEngine

createWakeupIntelligentVoiceEngine(descriptor: WakeupIntelligentVoiceEngineDescriptor): Promise&lt;WakeupIntelligentVoiceEngine&gt;

创建智能语音唤醒引擎实例,使用Promise异步回调。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名   | 类型                                | 必填 | 说明                   |
| -------- | ----------------------------------- | ---- | ---------------------- |
L
lvqiang214 已提交
206
| descriptor    | [WakeupIntelligentVoiceEngineDescriptor](#wakeupintelligentvoiceenginedescriptor)                              | 是   | 唤醒智能语音引擎描述符。   |
207 208 209 210 211

**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
212
| Promise\<[WakeupIntelligentVoiceEngine](#wakeupintelligentvoiceengine)>           | 返回唤醒智能语音引擎。                   |
213 214 215 216 217 218 219 220

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
| 22700101 | No memory.                           |
L
lvqiang214 已提交
221
| 22700102 | Input parameter value error.                            |
222 223 224 225 226

**示例:** 

```js
let engineDescriptor = {
L
lvqiang214 已提交
227 228
  needReconfirm: true,
  wakeupPhrase: '小花小花',
229
}
L
lvqiang214 已提交
230
var wakeupIntelligentVoiceEngine = null;
231
intelligentVoice.createWakeupIntelligentVoiceEngine(engineDescriptor).then((data) => {
L
lvqiang214 已提交
232 233
  wakeupIntelligentVoiceEngine = data;
  console.info('Succeeded in creating wakeupIntelligentVoice engine.');
234
}).catch((err) => {
L
lvqiang214 已提交
235
  console.error('Failed to create wakeupIntelligentVoice engine, Code:${err.code}, message:${err.message});
236 237 238 239 240
});
```

## IntelligentVoiceManager

L
lvqiang214 已提交
241
智能语音管理类,使用前需要通过[getIntelligentVoiceManager()](#intelligentvoicegetintelligentvoicemanager)获取智能语音管理实例。
242 243 244 245 246

### getCapabilityInfo

getCapabilityInfo(): Array&lt;IntelligentVoiceEngineType&gt;

L
lvqiang214 已提交
247
获取支持的智能语音引擎列表信息。
248 249 250 251 252 253 254 255 256 257 258 259 260 261

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
|  Array\<[IntelligentVoiceEngineType](#intelligentvoiceenginetype)\>            | 支持的智能语音引擎类型数组。              |

**示例:**

```js
L
lvqiang214 已提交
262
let info = intelligentVoiceManager.getCapabilityInfo();
263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279
```

### on('serviceChange')

on(type: 'serviceChange', callback: Callback&lt;ServiceChangeType&gt;): void

订阅服务变更事件。当智能语音业务状态发生变化时,调用回调。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| type     | string                           | 是   | 系统服务变更事件,固定取值为'serviceChange',表示服务变更事件。 |
L
lvqiang214 已提交
280
| callback | Callback\<[ServiceChangeType](#servicechangetype)\> | 是   | 服务状态变更对应的处理。|
281 282 283 284

**示例:**

```js
L
lvqiang214 已提交
285
intelligentVoiceManager.on('serviceChange', (serviceChangeType) => {});
286 287 288 289
```

### off('serviceChange')

L
lvqiang214 已提交
290
off(type: 'serviceChange', callback?: Callback\<ServiceChangeType\>): void
291 292 293 294 295 296 297 298 299 300 301 302

取消订阅服务变更事件。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| type     | string                           | 是   | 系统服务变更事件,固定取值为'serviceChange'。 |
L
lvqiang214 已提交
303
| callback | Callback\<[ServiceChangeType](#servicechangetype)\> | 否   | 服务状态变更对应的处理,无参数,则取消所有订阅,否则,取消对应的处理。|
304 305 306 307

**示例:**

```js
L
lvqiang214 已提交
308
intelligentVoiceManager.off('serviceChange');
309 310 311 312
```

## ServiceChangeType

L
lvqiang214 已提交
313
枚举,服务状态变更类型。
314 315 316 317 318

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称                       | 值   | 说明            |
| ------------------------- | ---- | ------------    |
L
lvqiang214 已提交
319
| SERVICE_UNAVAILABLE      | 0    | 服务状态不可用。   |
320 321 322

## IntelligentVoiceEngineType

L
lvqiang214 已提交
323
枚举,智能语音引擎类型。
324 325 326 327 328

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称                       | 值   | 说明            |
| ------------------------- | ---- | ------------    |
L
lvqiang214 已提交
329 330 331
| ENROLL_ENGINE_TYPE      | 0    | 语音注册引擎。   |
| WAKEUP_ENGINE_TYPE      | 1    | 语音唤醒引擎。   |
| UPDATE_ENGINE_TYPE      | 2    | 静默升级引擎。   |
332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350

## EnrollIntelligentVoiceEngineDescriptor

注册智能语音引擎描述符。

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称   | 类型                            |     必填     | 说明       |
| ------ | ----------------------------- | -------------- | ---------- |
| wakeupPhrase | string |        是       | 唤醒词。 |

## WakeupIntelligentVoiceEngineDescriptor

唤醒智能语音引擎描述符。

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称   | 类型                            |     必填     | 说明       |
| ------ | ----------------------------- | -------------- | ---------- |
L
lvqiang214 已提交
351
| needReconfirm | boolean |        是       | 是否需要再次确认唤醒结果,true为需要,false为不需要。 |
352 353 354 355 356 357 358 359 360 361
| wakeupPhrase | string |        是       | 唤醒词。 |

## EnrollEngineConfig

描述注册引擎配置。

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称   | 类型                            |     必填     | 说明       |
| ------ | ----------------------------- | -------------- | ---------- |
L
lvqiang214 已提交
362 363
| language | string |        是       | 注册引擎支持的语言,当前仅支持中文,取值为'zh'。 |
| region | string |        是       | 注册引擎支持的区域。当前仅支持中国,取值为'CN'。 |
364 365 366

## SensibilityType

L
lvqiang214 已提交
367
枚举,唤醒灵敏度类型。
L
lvqiang214 已提交
368
灵敏度用于调整唤醒的门限,灵敏度越高,门限越低,就越容易唤醒。
369 370 371 372 373

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称                       | 值   | 说明            |
| ------------------------- | ---- | ------------    |
L
lvqiang214 已提交
374 375 376
| LOW_SENSIBILITY      | 1    | 低灵敏度。   |
| MIDDLE_SENSIBILITY      | 2    | 中灵敏度。   |
| HIGH_SENSIBILITY      | 3    | 高灵敏度。   |
377 378 379

## WakeupHapInfo

L
lvqiang214 已提交
380
描述唤醒应用的hap信息。
381 382 383 384 385

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称   | 类型                            |     必填     | 说明       |
| ------ | ----------------------------- | -------------- | ---------- |
L
lvqiang214 已提交
386 387
| bundleName | string |        是       | 唤醒应用的bundleName。 |
| abilityName | string |        是       | 唤醒应用的ailityName。 |
388 389 390 391 392 393 394 395 396 397

## WakeupIntelligentVoiceEventType

枚举,唤醒智能语音事件类型。

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称                       | 值   | 说明            |
| ------------------------- | ---- | ------------    |
| INTELLIGENT_VOICE_EVENT_WAKEUP_NONE      | 0    | 无唤醒。   |
L
lvqiang214 已提交
398
| INTELLIGENT_VOICE_EVENT_RECOGNIZE_COMPLETE      | 1    | 唤醒识别完成。   |
399 400 401 402 403 404 405 406 407 408 409

## IntelligentVoiceErrorCode

枚举,智能语音错误码。

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称                       | 值   | 说明            |
| ------------------------- | ---- | ------------    |
| INTELLIGENT_VOICE_NO_MEMORY      | 22700101    | 内存不足。   |
| INTELLIGENT_VOICE_INVALID_PARAM      | 22700102    | 参数无效。  |
L
lvqiang214 已提交
410 411
| INTELLIGENT_VOICE_INIT_FAILED      | 22700103    | 注册失败。   |
| INTELLIGENT_VOICE_COMMIT_ENROLL_FAILED      | 22700104    | 确认注册结果失败。   |
412

L
lvqiang214 已提交
413
## EnrollResult
414

L
lvqiang214 已提交
415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432
枚举,注册结果。

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称                       | 值   | 说明            |
| ------------------------- | ---- | ------------    |
| SUCCESS      | 0    | 注册成功。   |
| VPR_TRAIN_FAILED      | -1    | 声纹训练失败。  |
| WAKEUP_PHRASE_NOT_MATCH      | -2    | 唤醒短语不匹配。   |
| TOO_NOISY      | -3    | 周边环境太吵。   |
| TOO_LOUD      | -4    | 声音太大。   |
| INTERVAL_LARGE      | -5    | 唤醒词时间间隔太大。   |
| DIFFERENT_PERSON      | -6    | 不同人注册唤醒词。   |
| UNKNOWN_ERROR      | -100    | 未知错误。   |

## EnrollCallbackInfo

注册回调信息。
433 434 435 436 437

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称   | 类型                            |     必填     | 说明       |
| ------ | ----------------------------- | -------------- | ---------- |
L
lvqiang214 已提交
438
| result | [EnrollResult](#enrollresult) |        是       | 注册结果。 |
439 440 441 442 443 444 445 446 447 448
| context | string |        是       | 描述注册事件上下文。 |

## WakeupIntelligentVoiceEngineCallbackInfo

描述唤醒智能语音引擎回调信息。

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 名称   | 类型                            |     必填     | 说明       |
| ------ | ----------------------------- | -------------- | ---------- |
L
lvqiang214 已提交
449
| eventId | [WakeupIntelligentVoiceEventType](#wakeupintelligentvoiceeventtype) |        是       | 唤醒智能语音事件类型。 |
L
lvqiang214 已提交
450 451
| isSuccess | boolean |        是       | 是否唤醒成功,false为唤醒失败,true为唤醒成功。 |
| context | string |        是       | 描述唤醒事件上下文。 |
452 453 454

## EnrollIntelligentVoiceEngine

L
lvqiang214 已提交
455
实现注册智能语音引擎,通过[createEnrollIntelligentVoiceEngine()](#intelligentvoicecreateenrollintelligentvoiceengine)获取注册智能语音引擎。
456 457 458 459 460 461 462 463 464 465 466 467 468 469 470

### getSupportedRegions

getSupportedRegions(callback: AsyncCallback&lt;Array&lt;string&gt;&gt;): void

获取支持的区域,使用callback异步回调。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
L
lvqiang214 已提交
471
| callback     | AsyncCallback&lt;Array&lt;string&gt;&gt;         | 是   | 返回支持区域的数组,当前只支持中国,对应取值为'CN'。 |
472 473 474 475

**示例:**

```js
L
lvqiang214 已提交
476
let regions = null;
477 478
enrollIntelligentVoiceEngine.getSupportedRegions((err, data) => {
  if (err) {
L
lvqiang214 已提交
479
    console.error(`Failed to get supported regions, Code:${err.code}, message:${err.message}`);
480
  } else {
L
lvqiang214 已提交
481
    regions = data;
L
lvqiang214 已提交
482
    console.info('Succeeded in getting supported regions, regions:${regions}.');
483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500
  }
});
```

### getSupportedRegions

getSupportedRegions(): Promise&lt;Array&lt;string&gt;&gt;

获取支持的区域,使用Promise异步回调。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
501
|  Promise&lt;Array&lt;string&gt;&gt;            | 返回支持区域的数组,当前只支持中国,对应取值为'CN'。                   |
502 503 504 505

**示例:**

```js
L
lvqiang214 已提交
506
let regions = null;
507 508
enrollIntelligentVoiceEngine.getSupportedRegions().then((data) => {
  regions = data;
L
lvqiang214 已提交
509
  console.info('Succeeded in getting supported regions, regions:${regions}.');
510
}).catch((err) => {
L
lvqiang214 已提交
511
  console.error(`Failed to get supported regions, Code:${err.code}, message:${err.message}`);
512 513 514 515 516
});
```

### init

L
lvqiang214 已提交
517
init(config: EnrollEngineConfig, callback: AsyncCallback&lt;void&gt;): void
518

L
lvqiang214 已提交
519
初始化注册智能语音引擎,使用callback异步回调。
520 521 522 523 524 525 526 527 528

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
L
lvqiang214 已提交
529 530
| config     | [EnrollEngineConfig](#enrollengineconfig)                           | 是   | 注册引擎配置。 |
| callback     |AsyncCallback&lt;void&gt;                           | 是   | 返回初始化结果。 |
531 532 533 534 535 536 537

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
538 539
| 22700102 | Input parameter value error.                            |
| 22700103 | Init failed.                           |
540 541 542 543 544

**示例:**

```js
let config = {
L
lvqiang214 已提交
545 546
  language: "zh",
  area: "CN",
547
}
L
lvqiang214 已提交
548
enrollIntelligentVoiceEngine.init(config, (err) => {
549
  if (err) {
L
lvqiang214 已提交
550
    console.error(`Failed to initialize enrollIntelligentVoice engine. Code:${err.code}, message:${err.message}`);
551
  } else {
L
lvqiang214 已提交
552
    console.info('Succeeded in initialzing enrollIntelligentVoice engine.');
553 554 555 556 557 558
  }
});
```

### init

L
lvqiang214 已提交
559
init(config: EnrollEngineConfig): Promise&lt;void&gt;
560

L
lvqiang214 已提交
561
初始化注册智能语音引擎,使用Promise异步回调。
562 563 564 565 566 567 568 569 570 571 572 573 574 575 576

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| config     | [EnrollEngineConfig](#enrollengineconfig)                           | 是   | config表示注册引擎配置。 |

**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
577
|  Promise&lt;void&gt;           | 无返回结果的Promise对象。                   |
578 579 580 581 582 583 584

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
585 586
| 22700102 | Input parameter value error.                            |
| 22700103 | Init failed.                           |
587 588 589 590 591

**示例:**

```js
let config = {
L
lvqiang214 已提交
592 593
  language: "zh",
  area: "CN",
594
}
L
lvqiang214 已提交
595
enrollIntelligentVoiceEngine.init(config).then(() => {
L
lvqiang214 已提交
596
  console.info('Succeeded in initializing enrollIntelligentVoice engine.');
597
}).catch((err) => {
L
lvqiang214 已提交
598
  console.error(`Failed to initialize enrollIntelligentVoice engine. Code:${err.code}, message:${err.message}`);
599 600 601
});
```

L
lvqiang214 已提交
602
### enrollForResult
603

L
lvqiang214 已提交
604
enrollForResult(isLast: boolean, callback: AsyncCallback&lt;EnrollCallbackInfo&gt;): void
605

L
lvqiang214 已提交
606
获取注册结果,使用callback异步回调。
607 608 609 610 611 612 613 614 615

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
L
lvqiang214 已提交
616 617
| isLast     | boolean                           | 是   | isLast表示是否为最后一次注册,false为非最后一次,true为最后一次。 |
| callback     | AsyncCallback&lt;[EnrollCallbackInfo](#enrollcallbackinfo)&gt;                           | 是   | 返回注册结果。 |
618 619 620 621 622

**示例:**

```js
let isLast = true;
L
lvqiang214 已提交
623
let callbackInfo = null;
L
lvqiang214 已提交
624
enrollIntelligentVoiceEngine.enrollForResult(isLast, (err, data) => {
625
  if (err) {
L
lvqiang214 已提交
626
    console.error(`Failed to enroll for result, Code:${err.code}, message:${err.message}`);
627
  } else {
L
lvqiang214 已提交
628
    callbackInfo = data;
L
lvqiang214 已提交
629
    console.info('Succeeded in enrolling for result, info:${callbackInfo}.');
630 631 632 633
  }
});
```

L
lvqiang214 已提交
634
### enrollForResult
635

L
lvqiang214 已提交
636
enrollForResult(isLast: boolean): Promise&lt;EnrollCallbackInfo&gt;
637

L
lvqiang214 已提交
638
获取注册结果,使用Promise异步回调。
639 640 641 642 643 644 645 646 647

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
L
lvqiang214 已提交
648
| isLast     | boolean                           | 是   | isLast表示是否为最后一次注册,false为非最后一次,true为最后一次。 |
649 650 651 652 653

**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
654
|  Promise&lt;[EnrollCallbackInfo](#enrollcallbackinfo)&gt;            | 返回注册结果。                   |
655 656 657 658 659

**示例:**

```js
let isLast = true;
L
lvqiang214 已提交
660
let callbackInfo = null;
L
lvqiang214 已提交
661
enrollIntelligentVoiceEngine.enrollForResult(isLast).then((data) => {
L
lvqiang214 已提交
662 663
  callbackInfo = data;
  console.info('Succeeded in enrolling for result, info:${callbackInfo}.');
664
}).catch((err) => {
L
lvqiang214 已提交
665
  console.error(`Failed to enroll for result, Code:${err.code}, message:${err.message}`);
666 667 668 669 670 671 672
});
```

### stop

stop(callback: AsyncCallback&lt;void&gt;): void

L
lvqiang214 已提交
673
停止注册,使用callback异步回调。
674 675 676 677 678 679 680

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
L
lvqiang214 已提交
681
| callback     |  AsyncCallback&lt;void&gt;                           | 是   | 返回停止结果。 |
682 683 684 685 686 687

**示例:**

```js
enrollIntelligentVoiceEngine.stop((err) => {
  if (err) {
L
lvqiang214 已提交
688
    console.error(`Failed to stop enrollIntelligentVoice engine, Code:${err.code}, message:${err.message}`);
689
  } else {
L
lvqiang214 已提交
690
    console.info('Succeeded in stopping enrollIntelligentVoice engine.');
691 692 693 694 695 696 697 698
  }
});
```

### stop

stop(): Promise&lt;void&gt;

L
lvqiang214 已提交
699
停止注册,使用Promise异步回调。
700 701 702 703 704

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

L
lvqiang214 已提交
705 706 707 708
**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
709
|  Promise&lt;void&gt;            | 无返回结果的Promise对象。                   |
L
lvqiang214 已提交
710

711 712 713 714
**示例:**

```js
enrollIntelligentVoiceEngine.stop().then(() => {
L
lvqiang214 已提交
715 716 717
  console.info('Succeeded in stopping enrollIntelligentVoice engine.');
}).catch((err) => {
  console.error(`Failed to stop enrollIntelligentVoice engine, Code:${err.code}, message:${err.message}`);
718 719 720 721 722
});
```

### commit

L
lvqiang214 已提交
723
commit(callback: AsyncCallback&lt;void&gt;): void
724 725 726 727 728 729 730

提交注册,使用callback异步回调。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

L
lvqiang214 已提交
731 732
**参数:**

733 734
| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
L
lvqiang214 已提交
735 736 737 738 739 740 741 742 743
| callback     | AsyncCallback&lt;void&gt;                           | 是   | 返回确认注册结果。 |

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
| 22700104 | Commit enroll failed.                           |
744 745 746 747

**示例:**

```js
L
lvqiang214 已提交
748
enrollIntelligentVoiceEngine.commit((err) => {
749
  if (err) {
L
lvqiang214 已提交
750
    console.error(`Failed to commit enroll, Code:${err.code}, message:${err.message}`);
751
  } else {
L
lvqiang214 已提交
752
    console.info('Succeeded in committing enroll.');
753 754 755 756 757 758
  }
});
```

### commit

L
lvqiang214 已提交
759
commit(): Promise&lt;void&gt;
760 761 762 763 764 765 766 767 768 769 770

提交注册,使用Promise异步回调。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
771
|  Promise&lt;void&gt;           | 无返回结果的Promise对象。                   |
L
lvqiang214 已提交
772 773 774 775 776 777 778 779

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
| 22700104 | Commit enroll failed.                           |
780 781 782 783

**示例:**

```js
L
lvqiang214 已提交
784
enrollIntelligentVoiceEngine.commit().then(() => {
L
lvqiang214 已提交
785
  console.info('Succeeded in committing enroll.');
786
}).catch((err) => {
L
lvqiang214 已提交
787
  console.error(`Failed to commit enroll, Code:${err.code}, message:${err.message}`);
788 789 790 791 792 793 794
});
```

### setWakeupHapInfo

setWakeupHapInfo(info: WakeupHapInfo, callback: AsyncCallback\<void>): void

L
lvqiang214 已提交
795
设置唤醒应用的hap信息,使用callback异步回调。
796 797 798 799 800 801 802 803 804 805

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| info     | [WakeupHapInfo](#wakeuphapinfo)                           | 是   | 唤醒hap信息。 |
L
lvqiang214 已提交
806
| callback     | AsyncCallback\<void\>                          | 是   | 返回设置唤醒hap信息的结果。 |
807 808 809 810 811 812 813

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
814
| 22700102 | Input parameter value error.                            |
815 816 817 818 819

**示例:**

```js
let info = {
L
lvqiang214 已提交
820
  bundleName: "com.wakeup",
L
lvqiang214 已提交
821
  abilityName: "WakeUpExtAbility",
822
}
L
lvqiang214 已提交
823
enrollIntelligentVoiceEngine.setWakeupHapInfo(info, (err) => {
824
  if (err) {
L
lvqiang214 已提交
825
    console.error('Failed to set wakeup hap info, Code:${err.code}, message:${err.message}');
826
  } else {
L
lvqiang214 已提交
827
    console.info('Succeeded in setting wakeup hap info.');
828 829 830 831 832 833
  }
});
```

### setWakeupHapInfo

L
lvqiang214 已提交
834
setWakeupHapInfo(info: WakeupHapInfo): Promise\<void\>
835

L
lvqiang214 已提交
836
设置唤醒应用的hap信息,使用Promise异步回调。
837 838 839 840 841

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

L
lvqiang214 已提交
842
**返回值:**
843

L
lvqiang214 已提交
844 845
| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
846
|  Promise&lt;void&gt;            | 无返回结果的Promise对象。                   |
847 848 849 850 851 852 853

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
854
| 22700102 | Input parameter value error.                            |
855 856 857 858 859

**示例:**

```js
let info = {
L
lvqiang214 已提交
860 861
  bundleName: "com.wakeup",
  abilityName: "WakeUpExtAbility",
862 863
}
enrollIntelligentVoiceEngine.setWakeupHapInfo(info).then(() => {
L
lvqiang214 已提交
864
  console.info('Succeeded in setting wakeup hap info.');
865
}).catch((err) => {
L
lvqiang214 已提交
866
  console.error('Failed to set wakeup hap info, Code:${err.code},
867 868 869 870 871
});
```

### setSensibility

L
lvqiang214 已提交
872
setSensibility(sensibility: SensibilityType, callback: AsyncCallback\<void\>): void
873

L
lvqiang214 已提交
874
设置唤醒灵敏度,使用callback异步回调。
875 876 877 878 879 880 881 882 883 884

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| sensibility     | [SensibilityType](#sensibilitytype)                           | 是   | 灵敏度类型。 |
L
lvqiang214 已提交
885
| callback     | AsyncCallback\<void\>                         | 是   | 返回设置灵敏度的结果。 |
886 887 888 889 890 891 892

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
893
| 22700102 | Input parameter value error.                            |
894 895 896 897

**示例:**

```js
L
lvqiang214 已提交
898
enrollIntelligentVoiceEngine.setSensibility(intelligentVoice.SensibilityType.LOW_SENSIBILITY, (err) => {
899
  if (err) {
L
lvqiang214 已提交
900
    console.error(`Failed to set sensibility, Code:${err.code}, message:${err.message}`);
901
  } else {
L
lvqiang214 已提交
902
    console.info('Succeeded in setting sensibility.');
903 904 905 906 907 908
  }
});
```

### setSensibility

L
lvqiang214 已提交
909
setSensibility(sensibility: SensibilityType): Promise\<void\>
910

L
lvqiang214 已提交
911
设置唤醒灵敏度,使用Promise异步回调。
912 913 914 915 916 917 918 919 920 921 922

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| sensibility     | [SensibilityType](#sensibilitytype)                           | 是   | 灵敏度类型。 |

L
lvqiang214 已提交
923 924 925 926
**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
927
|  Promise&lt;void&gt;            | 无返回结果的Promise对象。                   |
L
lvqiang214 已提交
928

929 930 931 932 933 934
**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
935
| 22700102 | Input parameter value error.                            |
936 937 938 939 940

**示例:**

```js
enrollIntelligentVoiceEngine.setSensibility(intelligentVoice.SensibilityType.LOW_SENSIBILITY).then(() => {
L
lvqiang214 已提交
941
  console.info('Succeeded in setting sensibility.');
942
}).catch((err) => {
L
lvqiang214 已提交
943
  console.error(`Failed to set sensibility, Code:${err.code}, message:${err.message}`);
944 945 946 947 948
});
```

### setParameter

L
lvqiang214 已提交
949
setParameter(key: string, value: string, callback: AsyncCallback\<void\>): void
950

L
lvqiang214 已提交
951
设置指定的智能语音参数,使用callback异步回调。
952 953 954 955 956 957 958 959 960 961 962

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| key     | string                           | 是   | 键。 |
| value     | string                           | 是   | 值。 |
L
lvqiang214 已提交
963
| callback     | AsyncCallback\<void\>                           | 是   | 返回设置智能语音参数的结果。 |
964 965 966 967 968 969 970

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
971
| 22700102 | Input parameter value error.                            |
972 973 974 975

**示例:**

```js
L
lvqiang214 已提交
976
enrollIntelligentVoiceEngine.setParameter('scene', '0', (err) => {
977
  if (err) {
L
lvqiang214 已提交
978
    console.error(`Failed to set parameter, Code:${err.code}, message:${err.message}`);
979
  } else {
L
lvqiang214 已提交
980
    console.info('Succeeded in setting parameter');
981 982 983 984 985 986
  }
});
```

### setParameter

L
lvqiang214 已提交
987
setParameter(key: string, value: string): Promise\<void\>
988

L
lvqiang214 已提交
989
设置指定的智能语音参数,使用Promise异步回调。
990 991 992 993 994 995 996 997 998 999 1000 1001

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| key     | string                           | 是   | 键。 |
| value     | string                           | 是   | 值。 |

L
lvqiang214 已提交
1002 1003 1004 1005
**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
1006
|  Promise&lt;void&gt;            | 无返回结果的Promise对象。                   |
L
lvqiang214 已提交
1007

1008 1009 1010 1011 1012 1013
**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
1014
| 22700102 | Input parameter value error.                            |
1015 1016 1017 1018

**示例:**

```js
L
lvqiang214 已提交
1019 1020
enrollIntelligentVoiceEngine.setParameter('scene', '0').then(() => {
  console.info('Succeeded in setting parameter');
1021
}).catch((err) => {
L
lvqiang214 已提交
1022
  console.error(`Failed to set parameter, Code:${err.code}, message:${err.message}`);
1023 1024 1025 1026 1027
});
```

### getParameter

L
lvqiang214 已提交
1028
getParameter(key: string, callback: AsyncCallback\<string\>): void
1029

L
lvqiang214 已提交
1030
获取指定的智能语音参数,使用callback异步回调。
1031 1032 1033 1034 1035 1036 1037 1038 1039 1040

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| key     | string                           | 是   | 键。 |
L
lvqiang214 已提交
1041
| callback     | AsyncCallback\<string\>                           | 是   | 返回智能语音参数。 |
1042 1043 1044 1045 1046 1047 1048

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
1049
| 22700102 | Input parameter value error.                            |
1050 1051 1052 1053

**示例:**

```js
L
lvqiang214 已提交
1054
enrollIntelligentVoiceEngine.getParameter('key', (err,data) => {
1055
  if (err) {
L
lvqiang214 已提交
1056
    console.error(`Failed to get parameter, Code:${err.code}, message:${err.message}`);
1057 1058
  } else {
    let param = data;
L
lvqiang214 已提交
1059
    console.info('Succeeded in getting parameter, param:${param}');
1060 1061 1062 1063 1064 1065
  }
});
```

### getParameter

L
lvqiang214 已提交
1066
getParameter(key: string): Promise\<string\>
1067

L
lvqiang214 已提交
1068
获取指定的智能语音参数,使用Promise异步回调。
1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| key     | string                           | 是   | 键。 |

**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
1084
|  Promise\<string\>            | 返回智能语音参数。                   |
1085 1086 1087 1088 1089 1090 1091

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
1092
| 22700102 | Input parameter value error.                            |
1093 1094 1095 1096

**示例:**

```js
L
lvqiang214 已提交
1097
let param = null;
1098 1099
enrollIntelligentVoiceEngine.getParameter('key').then((data) => {
  param = data;
L
lvqiang214 已提交
1100
  console.info('Succeeded in getting parameter, param:${param}');
1101
}).catch((err) => {
L
lvqiang214 已提交
1102
  console.error(`Failed to get parameter, Code:${err.code}, message:${err.message}`);
1103 1104 1105 1106 1107 1108 1109
});
```

### release

release(callback: AsyncCallback&lt;void&gt;): void

L
lvqiang214 已提交
1110
释放注册智能语音引擎,使用callback异步回调。
1111 1112 1113 1114 1115

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

L
lvqiang214 已提交
1116 1117
**参数:**

1118 1119
| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
L
lvqiang214 已提交
1120
| callback     | AsyncCallback\<void\>                           | 是   | 返回释放注册引擎的结果。 |
1121 1122 1123 1124 1125 1126

**示例:**

```js
enrollIntelligentVoiceEngine.release((err) => {
  if (err) {
L
lvqiang214 已提交
1127
    console.error('Failed to release enrollIntelligentVoice engine, Code:${err.code}, message:${err.message}');
1128
  } else {
L
lvqiang214 已提交
1129
    console.info('Succeeded in releasing enrollIntelligentVoice engine.');
1130 1131 1132 1133 1134 1135 1136 1137
  }
});
```

### release

release(): Promise&lt;void&gt;

L
lvqiang214 已提交
1138
释放注册智能语音引擎,使用Promise异步回调。
1139 1140 1141 1142 1143

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

L
lvqiang214 已提交
1144 1145 1146 1147
**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
1148
|  Promise&lt;void&gt;            | 无返回结果的Promise对象。                  |
L
lvqiang214 已提交
1149

1150 1151 1152 1153
**示例:**

```js
enrollIntelligentVoiceEngine.release().then(() => {
L
lvqiang214 已提交
1154
  console.info('Succeeded in releasing enrollIntelligentVoice engine.');
1155
}).catch((err) => {
L
lvqiang214 已提交
1156
  console.error('Failed to release enrollIntelligentVoice engine, Code:${err.code}, message:${err.message}');
1157 1158 1159 1160 1161
});
```

## WakeupIntelligentVoiceEngine

L
lvqiang214 已提交
1162
实现唤醒智能语音引擎,通过[createWakeupIntelligentVoiceEngine()](#intelligentvoicecreatewakeupintelligentvoiceengine)获取唤醒智能语音引擎。
1163 1164 1165

### getSupportedRegions

L
lvqiang214 已提交
1166
getSupportedRegions(callback: AsyncCallback&lt;Array&lt;string&gt;&gt;): void
1167 1168 1169 1170 1171 1172 1173 1174 1175

获取支持的区域,使用callback异步回调。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
L
lvqiang214 已提交
1176
| callback     | AsyncCallback&lt;Array&lt;string&gt;&gt;                           | 是   | 返回支持区域的数组,当前只支持中国,对应取值为'CN'。 |
1177 1178 1179 1180

**示例:**

```js
L
lvqiang214 已提交
1181 1182
let regions = null;
wakeupIntelligentVoiceEngine.getSupportedRegions((err, data) => {
1183
  if (err) {
L
lvqiang214 已提交
1184
    console.error(`Failed to get supported regions, Code:${err.code}, message:${err.message}`);
1185
  } else {
L
lvqiang214 已提交
1186
    regions = data;
L
lvqiang214 已提交
1187
    console.info('Succeeded in getting supported regions, regions:${regions}.');
1188 1189 1190 1191 1192 1193
  }
});
```

### getSupportedRegions

L
lvqiang214 已提交
1194
getSupportedRegions(): Promise&lt;Array&lt;string&gt;&gt;
1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205

获取支持的区域,使用Promise异步回调。

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
1206
|  Promise&lt;Array&lt;string&gt;&gt;            | 返回支持区域的数组,当前只支持中国,对应取值为'CN'。                   |
1207 1208 1209 1210

**示例:**

```js
L
lvqiang214 已提交
1211 1212
let regions = null;
wakeupIntelligentVoiceEngine.getSupportedRegions().then((data) => {
1213
  regions = data;
L
lvqiang214 已提交
1214
  console.info('Succeeded in getting supported regions, regions:${regions}.');
1215
}).catch((err) => {
L
lvqiang214 已提交
1216
  console.error(`Failed to get supported regions, Code:${err.code}, message:${err.message}`);
1217 1218 1219 1220 1221
});
```

### setWakeupHapInfo

L
lvqiang214 已提交
1222
setWakeupHapInfo(info: WakeupHapInfo, callback: AsyncCallback\<void\>): void
1223

L
lvqiang214 已提交
1224
设置唤醒应用的hap信息,使用callback异步回调。
1225 1226 1227 1228 1229 1230 1231 1232 1233 1234

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| info     | [WakeupHapInfo](#wakeuphapinfo)                           | 是   | 唤醒hap信息。 |
L
lvqiang214 已提交
1235
| callback     | AsyncCallback\<void\>                           | 是   | 返回设置唤醒hap信息的结果。 |
1236 1237 1238 1239 1240 1241 1242

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
1243
| 22700102 | Input parameter value error.                            |
1244 1245 1246 1247 1248

**示例:**

```js
let info = {
L
lvqiang214 已提交
1249
  bundleName: "com.wakeup",
L
lvqiang214 已提交
1250
  abilityName: "WakeUpExtAbility",
1251
}
L
lvqiang214 已提交
1252
wakeupIntelligentVoiceEngine.setWakeupHapInfo(info, (err) => {
1253
  if (err) {
L
lvqiang214 已提交
1254
    console.error('Failed to set wakeup hap info, Code:${err.code}, message:${err.message}');
1255
  } else {
L
lvqiang214 已提交
1256
    console.info('Succeeded in setting wakeup hap info.');
1257 1258 1259 1260 1261 1262
  }
});
```

### setWakeupHapInfo

L
lvqiang214 已提交
1263
setWakeupHapInfo(info: WakeupHapInfo): Promise\<void\>
1264

L
lvqiang214 已提交
1265
设置唤醒应用的hap信息,使用promise异步回调。
1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| info     | [WakeupHapInfo](#wakeuphapinfo)                           | 是   | 唤醒hap信息。 |

L
lvqiang214 已提交
1277 1278 1279 1280
**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
1281
|  Promise&lt;void&gt;            | 无返回结果的Promise对象。                   |
L
lvqiang214 已提交
1282

1283 1284 1285 1286 1287 1288
**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
1289
| 22700102 | Input parameter value error.                            |
1290 1291 1292 1293 1294

**示例:**

```js
let info = {
L
lvqiang214 已提交
1295 1296
  bundleName: "com.wakeup",
  abilityName: "WakeUpExtAbility",
1297
}
L
lvqiang214 已提交
1298 1299
wakeupIntelligentVoiceEngine.setWakeupHapInfo(info).then(() => {
  console.info('Succeeded in setting wakeup hap info.');
1300
}).catch((err) => {
L
lvqiang214 已提交
1301
  console.error('Failed to set wakeup hap info, Code:${err.code}, message:${err.message}');
1302 1303 1304 1305 1306
});
```

### setSensibility

L
lvqiang214 已提交
1307
setSensibility(sensibility: SensibilityType, callback: AsyncCallback\<void\>): void
1308

L
lvqiang214 已提交
1309
设置唤醒灵敏度,使用callback异步回调。
1310 1311 1312 1313 1314 1315 1316 1317 1318 1319

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| sensibility     | [SensibilityType](#sensibilitytype)                           | 是   | 灵敏度类型。 |
L
lvqiang214 已提交
1320
| callback     | AsyncCallback\<void\>                           | 是   | 返回设置灵敏度的结果。 |
1321 1322 1323 1324 1325 1326 1327

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
1328
| 22700102 | Input parameter value error.                            |
1329 1330 1331 1332

**示例:**

```js
L
lvqiang214 已提交
1333
wakeupIntelligentVoiceEngine.setSensibility(intelligentVoice.SensibilityType.LOW_SENSIBILITY, (err) => {
1334
  if (err) {
L
lvqiang214 已提交
1335
    console.error(`Failed to set sensibility, Code:${err.code}, message:${err.message}`);
1336
  } else {
L
lvqiang214 已提交
1337
    console.info('Succeeded in setting sensibility.');
1338 1339 1340 1341 1342 1343
  }
});
```

### setSensibility

L
lvqiang214 已提交
1344
setSensibility(sensibility: SensibilityType): Promise\<void\>
1345

L
lvqiang214 已提交
1346
设置唤醒灵敏度,使用Promise异步回调。
1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| sensibility     | [SensibilityType](#sensibilitytype)                           | 是   | 灵敏度类型。 |

L
lvqiang214 已提交
1358 1359 1360 1361
**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
1362
|  Promise&lt;void&gt;            | 无返回结果的Promise对象。                   |
L
lvqiang214 已提交
1363

1364 1365 1366 1367 1368 1369
**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
1370
| 22700102 | Input parameter value error.                            |
1371 1372 1373 1374

**示例:**

```js
L
lvqiang214 已提交
1375 1376
wakeupIntelligentVoiceEngine.setSensibility(intelligentVoice.SensibilityType.LOW_SENSIBILITY).then(() => {
  console.info('Succeeded in setting sensibility.');
1377
}).catch((err) => {
L
lvqiang214 已提交
1378
  console.error(`Failed to set sensibility, Code:${err.code}, message:${err.message}`);
1379 1380 1381 1382 1383
});
```

### setParameter

L
lvqiang214 已提交
1384
setParameter(key: string, value: string, callback: AsyncCallback\<void\>): void
1385

L
lvqiang214 已提交
1386
设置指定的智能语音参数,使用callback异步回调。
1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| key     | string                           | 是   | 键。 |
| value     | string                           | 是   | 值。 |
L
lvqiang214 已提交
1398
| callback     | AsyncCallback\<void\>                           | 是   | 返回设置智能语音参数的结果。 |
1399 1400 1401 1402 1403 1404 1405

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
1406
| 22700102 | Input parameter value error.                            |
1407 1408 1409 1410

**示例:**

```js
L
lvqiang214 已提交
1411
wakeupIntelligentVoiceEngine.setParameter('scene', '0', (err) => {
1412
  if (err) {
L
lvqiang214 已提交
1413
    console.error(`Failed to set parameter, Code:${err.code}, message:${err.message}`);
1414
  } else {
L
lvqiang214 已提交
1415
    console.info('Succeeded in setting parameter');
1416 1417 1418 1419 1420 1421
  }
});
```

### setParameter

L
lvqiang214 已提交
1422
setParameter(key: string, value: string): Promise\<void\>
1423

L
lvqiang214 已提交
1424
设置指定的智能语音参数,使用Promise异步回调。
1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| key     | string                           | 是   | 键。 |
| value     | string                           | 是   | 值。 |

L
lvqiang214 已提交
1437 1438 1439 1440
**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
1441
|  Promise&lt;void&gt;            | 无返回结果的Promise对象。                   |
L
lvqiang214 已提交
1442

1443 1444 1445 1446 1447 1448
**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
1449
| 22700102 | Input parameter value error.                            |
1450 1451 1452 1453

**示例:**

```js
L
lvqiang214 已提交
1454 1455
wakeupIntelligentVoiceEngine.setParameter('scene', '0').then(() => {
  console.info('Succeeded in setting parameter');
1456
}).catch((err) => {
L
lvqiang214 已提交
1457
  console.error(`Failed to set parameter, Code:${err.code}, message:${err.message}`);
1458 1459 1460 1461 1462
});
```

### getParameter

L
lvqiang214 已提交
1463
getParameter(key: string, callback: AsyncCallback\<string\>): void
1464

L
lvqiang214 已提交
1465
获取指定的智能语音参数,使用callback异步回调。
1466 1467 1468 1469 1470 1471 1472 1473 1474 1475

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| key     | string                           | 是   | 键。 |
L
lvqiang214 已提交
1476
| callback     | AsyncCallback\<string\>                           | 是   | 返回智能语音参数。 |
1477 1478 1479 1480 1481 1482 1483

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
1484
| 22700102 | Input parameter value error.                            |
1485 1486 1487 1488

**示例:**

```js
L
lvqiang214 已提交
1489
wakeupIntelligentVoiceEngine.getParameter('key', (err, data) => {
1490
  if (err) {
L
lvqiang214 已提交
1491
    console.error(`Failed to get parameter, Code:${err.code}, message:${err.message}`);
1492 1493
  } else {
    let param = data;
L
lvqiang214 已提交
1494
    console.info('Succeeded in getting parameter, param:${param}');
1495 1496 1497 1498 1499 1500
  }
});
```

### getParameter

L
lvqiang214 已提交
1501
getParameter(key: string): Promise\<string\>
1502

L
lvqiang214 已提交
1503
获取指定的智能语音参数,使用Promise异步回调。
1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| key     | string                           | 是   | 键。 |

**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
1519
|  Promise\<string\>            | 返回智能语音参数。                   |
1520 1521 1522 1523 1524 1525 1526

**错误码:**

以下错误码的详细介绍请参见[智能语音错误码](../errorcodes/errorcode-intelligentVoice.md)

| 错误码ID | 错误信息 |
| ------- | --------------------------------------------|
L
lvqiang214 已提交
1527
| 22700102 | Input parameter value error.                            |
1528 1529 1530 1531 1532

**示例:**

```js
let param;
L
lvqiang214 已提交
1533
wakeupIntelligentVoiceEngine.getParameter('key').then((data) => {
1534
  param = data;
L
lvqiang214 已提交
1535
  console.info('Succeeded in getting parameter, param:${param}');
1536
}).catch((err) => {
L
lvqiang214 已提交
1537
  console.error(`Failed to get parameter, Code:${err.code}, message:${err.message}`);
1538 1539 1540 1541 1542
});
```

### release

L
lvqiang214 已提交
1543
release(callback: AsyncCallback\<void\>): void
1544

L
lvqiang214 已提交
1545
释放唤醒智能语音引擎,使用callback异步回调。
1546 1547 1548 1549 1550

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

L
lvqiang214 已提交
1551 1552 1553 1554 1555 1556
**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
| callback     | AsyncCallback\<void\>                           | 是   | 返回释放唤醒引擎的结果。 |

1557 1558 1559
**示例:**

```js
L
lvqiang214 已提交
1560
wakeupIntelligentVoiceEngine.release((err) => {
1561
  if (err) {
L
lvqiang214 已提交
1562
    console.error('Failed to release wakeupIntelligentVoice engine, Code:${err.code}, message:${err.message}');
1563
  } else {
L
lvqiang214 已提交
1564
    console.info('Succeeded in releasing wakeupIntelligentVoice engine.');
1565 1566 1567 1568 1569 1570
  }
});
```

### release

L
lvqiang214 已提交
1571
release(): Promise\<void\>
1572

L
lvqiang214 已提交
1573
释放唤醒智能语音引擎,使用Promise异步回调。
1574 1575 1576 1577 1578

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

L
lvqiang214 已提交
1579 1580 1581 1582
**返回值:**

| 类型                                             | 说明                           |
| ----------------------------------------------- | ---------------------------- |
L
lvqiang214 已提交
1583
|  Promise&lt;void&gt;            | 无返回结果的Promise对象。                   |
L
lvqiang214 已提交
1584

1585 1586 1587
**示例:**

```js
L
lvqiang214 已提交
1588
wakeupIntelligentVoiceEngine.release().then(() => {
L
lvqiang214 已提交
1589
  console.info('Succeeded in releasing wakeupIntelligentVoice engine.');
1590
}).catch((err) => {
L
lvqiang214 已提交
1591
  console.error('Failed to release wakeupIntelligentVoice engine, Code:${err.code}, message:${err.message}');
1592 1593 1594 1595 1596 1597 1598
});
```

### on

on(type: 'wakeupIntelligentVoiceEvent', callback: Callback\<WakeupIntelligentVoiceEngineCallbackInfo\>): void

L
lvqiang214 已提交
1599
订阅唤醒事件。
1600 1601 1602 1603 1604 1605 1606 1607 1608

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
L
lvqiang214 已提交
1609
| type     | string          | 是   | 唤醒智能语音事件,固定取为'wakeupIntelligentVoiceEvent',表示智能语音唤醒事件。 |
L
lvqiang214 已提交
1610
| callback     | Callback\<[WakeupIntelligentVoiceEngineCallbackInfo](#wakeupintelligentvoiceenginecallbackinfo)\>                           | 是   | 收到唤醒事件的对应处理。 |
1611 1612 1613 1614

**示例:**

```js
L
lvqiang214 已提交
1615 1616 1617 1618 1619
wakeupIntelligentVoiceEngine.on('wakeupIntelligentVoiceEvent', (callback) => {
  console.info(`wakeup intelligentvoice event`);
  for (let prop in callback) {
    console.info(`intelligentvoice prop: ${prop}`);
  }
1620 1621 1622 1623 1624
});
```

### off

L
lvqiang214 已提交
1625
off(type: 'wakeupIntelligentVoiceEvent', callback?: Callback\<WakeupIntelligentVoiceEngineCallbackInfo\>): void;
1626

L
lvqiang214 已提交
1627
取消订阅唤醒事件。
1628 1629 1630 1631 1632 1633 1634 1635 1636

**需要权限:** ohos.permission.MANAGE_INTELLIGENT_VOICE

**系统能力:** SystemCapability.AI.IntelligentVoice.Core

**参数:**

| 参数名     | 类型                              | 必填 | 说明                                          |
| -------- | -------------------------------- | --- | ------------------------------------------- |
L
lvqiang214 已提交
1637
| type     |string           | 是   | 唤醒智能语音事件,固定取为'wakeupIntelligentVoiceEvent'。 |
L
lvqiang214 已提交
1638
| callback     | Callback\<[WakeupIntelligentVoiceEngineCallbackInfo](#wakeupintelligentvoiceenginecallbackinfo)\>                           | 否   | 收到唤醒事件的对应处理。无参数,则取消所有的订阅,否则,取消对应的订阅 |
1639 1640 1641 1642

**示例:**

```js
L
lvqiang214 已提交
1643
wakeupIntelligentVoiceEngine.off('wakeupIntelligentVoiceEvent');
1644
```