文档

SmartCall - 发起智能语音交互通话

更新时间:

智能语音交互服务,是一种人机交互技术,它允许用户通过语音与机器进行自然的对话和沟通。

接口说明

  • SmartCall 需要与智能外呼回调 HTTP 接口联合使用,语音平台发起呼叫后会把转换后的语音文本回传给业务方,业务方把下一步的执行动作返回给语音平台。
  • 以下字符不可以在智能语音交互 SmartCall 回调中出现:@ = : "" $ { } ^ * ¥

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
dyvms:SmartCallWrite
  • 全部资源
    *

请求参数

名称类型必填描述示例值
CalledShowNumberstring

被叫显号。必须是已购买的号码。

您可以登录语音服务控制台,在语音号码>真实号管理页面查看已购买的号码。

0571****5678
CalledNumberstring

被叫号码。仅支持中国内地号码。

1590****0000
VoiceCodestring

智能外呼放音文件。

支持网络文件、控制台上传的语音文件和 TTS 三种方式。其中,支持使用多个文件和 TTS 参数混播,之间用英文逗号(,)分隔。TTS 参数的替换值在 VoiceCodeParam 中指定。

  • 当放音文件为网络文件时:参数 VoiceCode 指定为可被公网访问的语音文件 URL。
  • 当放音文件为控制台上传的语音文件时:参数 VoiceCode 指定为文件的语音 ID。您可以登录语音服务控制台,选择语音文件管理>智能语音交互放音文件,单击详情查看对应的语音 ID
  • 当放音文件为 TTS 时:参数 VoiceCode 指定为变量名称如$name$,需要在 VoiceCodeParam 中设置变量对应的内容。
2d4c-4e78-8d2a-afbb06cf****.wav,$name$
RecordFlagboolean

通话过程中是否录音。取值:

  • true:录音。
  • false:不录音。
true
Volumeinteger

播放用户音频的音量。取值范围:-4~4,建议设置为 1

1
Speedinteger

参数暂不支持使用。

1
AsrModelIdstring

ASR 模型 ID。

您可以登录语音服务控制台,在 ASR 语言模型管理中查看 ASR 模型 ID。

说明 调用 SmartCall 接口时需要指定使用的 ASR 模型,建议参数 AsrModelId 和 AsrBaseId 二者选填其一。
  • 如果仅设置 AsrModelId,表示使用指定的 ASR 模型。
  • 如果仅设置 AsrBaseId,表示使用指定的 ASR 基础模型。
  • 如果二者均未设置,则使用默认的 ASR 基础模型,即参数 AsrBaseId 默认为 customer_service_8k,表示使用 ASR 普通话基础模型。
  • 如果二者同时设置,请确认二者是正确对应的。
  • 2070aca1eff146f9a7bc826f1c3d****
    PauseTimeinteger

    停顿时长。用于设置用户停顿多久表示一句话结束。单位:毫秒,取值范围:300~1200

    说明
  • 如果指定值不在参数范围中,则该参数默认取值为 800
  • 该参数首次设置有效,后续设置无效。
  • 800
    MuteTimeinteger

    静音时长。用于设置用户多久不说话通话结束。单位:毫秒,取值范围:1000~20000

    说明
  • 如果指定值不在参数范围中,则该参数默认取值为 10000
  • 通话过程中可动态设置,以最后一次设置为准。
  • 10000
    ActionCodeBreakboolean

    当前返回的媒体文件是否可以被打断。默认取值为 true,即可被打断。

    如果为 false,即使下一个动作 action_break 为 true,也无法打断当前放音。

    说明 action_code_break 优先级高于 action_break。
    true
    OutIdstring

    预留给调用方使用的 ID。 最终会通过在回执消息中将此 ID 带回给调用方。

    字符串类型,长度为 1~15 个字节。

    342268*****
    DynamicIdstring

    预留给调用方使用的动态扩展 ID。在回调地址中带回,用于客户的开发标识。

    abcdefgh
    EarlyMediaAsrboolean

    早媒体语音识别标识。取值:

    • false(默认):关闭。
    • true:开启。
    说明 设为 true 会记录通话未接听的原因。
    true
    VoiceCodeParamstring

    TTS 参数传递字符串,格式为 JSON。必须与 VoiceCode 的 TTS 参数对应。

    {"name":"喂,你好"}
    SessionTimeoutinteger

    最大通话时长,超时后自动挂断。单位:秒。

    说明 通话时长最长 3600 秒。
    120
    ActionCodeTimeBreakinteger

    基于用户持续说话时长打断。单位:毫秒。

    如果当前媒体文件 ActionCodeBreak 为 true,用户持续说话可以打断当前播放。不设置或者为 0,不生效。

    120
    TtsStylestring

    TTS 变量播放时的声音风格。默认为 xiaoyun。具体风格,请参见下表声音风格列表

    xiaoyun
    TtsVolumeinteger

    TTS 变量播放的音量。取值范围:0~100,默认值为 0

    10
    TtsSpeedinteger

    TTS 变量播放时的声音速度。取值范围:-200~200,默认值为 0

    100
    TtsConfboolean

    是否设置 TTS 声音参数。取值:

    • true:设置。需要通过 TtsStyleTtsVolumeTtsSpeed 三个参数来设置声音风格。
    • false:不设置。不需要设置相关参数,即便设置了也不生效。
    true
    AsrBaseIdstring

    ASR 基础模型。取值:

    • customer_service_8k(默认):普通话。
    • dialect_customer_service_8k:重口音。
    说明 调用 SmartCall 接口时需要指定使用的 ASR 模型,建议参数 AsrModelId 和 AsrBaseId 二者选填其一。
  • 如果仅设置 AsrModelId,表示使用指定的 ASR 模型。
  • 如果仅设置 AsrBaseId,表示使用指定的 ASR 基础模型。
  • 如果二者均未设置,则使用默认的 ASR 基础模型,即参数 AsrBaseId 默认为 customer_service_8k,表示使用 ASR 普通话基础模型。
  • 如果二者同时设置,请确认二者是正确对应的。
  • customer_service_8k
    StreamAsrinteger

    流式 ASR,根据用户说的前几个字智能判断语义。取值:

    • 0:关闭。
    • 1:开启。
    1
    BackgroundFileCodestring

    用户和机器人对话时播放的背景语音文件 ID。

    您可以登录语音服务控制台,选择语音文件管理>智能语音交互放音文件,单击详情按钮,查看对应的语音 ID。

    2d4c-4e78-8d2a-afbb06cf****.wav
    BackgroundVolumeinteger

    参数暂不支持使用。

    1
    BackgroundSpeedinteger

    参数暂不支持使用。

    1
    EnableITNboolean

    是否在后处理中执行 ITN。默认为 false,即不执行。

    设置为 true 时,中文数字将转为阿拉伯数字输出。

    false

    声音风格

    更多声音风格详情,请参见声音风格列表

    返回参数

    名称类型描述示例值
    object

    返回数据。

    Codestring

    请求状态码。

    • 返回 OK 代表请求成功。
    • 其他错误码,请参见 API 错误码
    OK
    Messagestring

    状态码的描述。

    OK
    RequestIdstring

    请求 ID。

    A90E4451-FED7-49D2-87C8-00700A8C4D0D
    CallIdstring

    此次通话的唯一回执 ID。

    CallId 可以通过 QueryCallDetailByCallId 接口查询呼叫详情。

    116012854210^10281427****

    示例

    正常返回示例

    JSON格式

    {
      "Code": "OK",
      "Message": "OK",
      "RequestId": "A90E4451-FED7-49D2-87C8-00700A8C4D0D",
      "CallId": "116012854210^10281427****"
    }

    错误码

    访问错误中心查看更多错误码。

    变更历史

    变更时间变更内容概要操作
    2024-04-18OpenAPI 入参发生变更看变更集
    变更项变更内容
    入参OpenAPI 入参发生变更
      新增入参:NoiseThreshold
    • 本页导读 (1)