基于许可的录制

基于同意的录制功能使组织能够在交互式语音响应(IVR)系统或 启用了语音的代理中录制和转录呼叫之前从客户获取显式权限。

呼叫启动时,启用语音的代理会自动向客户提供同意请求提示。 如果客户授予同意,呼叫将继续启用录制和听录功能。 当客户不提供同意时,启用语音的代理会继续交互,而无需激活录制或听录功能,从而保留用户隐私首选项。

以下部分介绍在Copilot Studio中启用基于许可的录制所需的步骤。

先决条件

注释

仅支持与具有语音功能的代理相关联的入站语音工作流的基于同意的录制。 出站呼叫或入站语音工作流不支持此功能,这些工作流没有与之关联的语音代理。

使用以下方法之一创建新代理:

  • 提供者为Copilot Studio。 执行 “创建代理”中的步骤。

  • 在 Dynamics 365 Customer Service 管理中心中,执行 添加代理人步骤,并且不要选择 添加语音到机器人

创建代理后,请在Copilot Studio中执行以下步骤:

  1. 选择您要发布代理的工作环境。

  2. 转到 代理 并选择代理。

  3. 选择 “设置>安全>身份验证”,然后选择“ 无身份验证”。

  4. 选择“保存”

    代理安全设置的屏幕截图,其中突出显示了身份验证设置,并设置为“无身份验证”。

  5. 选择代理的“频道”页,选择“电话”,然后选择“打开电话”。 开启通信系统后,你会看到一条消息,告知代理已连接到通信代理。

    代理的频道页面的屏幕截图,其中突出显示了电话频道和打开电话设置。

  6. 选择 Dynamics 365 Customer Service,然后选择 Connect

    代理频道页面的截图,突出显示了 Dynamics 365 客户服务的选择。

  7. 转到“设置>”并打开“优化语音”。

    代理的语音设置的屏幕截图,其中突出显示了“优化语音”设置。

  8. 确保关闭使用代理数据提高准确性

  9. 选择“保存”

    代理的语音设置的屏幕截图,其中突出显示了关闭代理数据设置的“提高准确性”。

  10. 转到 “主题>自定义”,然后选择 “用户同意 ”主题。

    代理的自定义主题的屏幕截图,其中突出显示了名为“用户同意”的主题。

    注释

    本主题是演示如何请求同意的示例。 修改本主题以确保它满足业务和合规性要求。

  11. 转到 “系统”主题 并选择 “对话开始 ”主题。

  12. 选择 “添加节点 ”,然后选择 “主题管理>转到其他主题>用户同意”。

    “添加节点”对话框的屏幕截图,选择“主题管理”,转到另一个主题“用户同意”。

  13. 选择“ 保存 ”,然后发布代理。

  14. 登录到Dynamics 365 Customer Service管理中心。

  15. 创建工作流。 详细信息请参见创建和管理工作流程

  16. 为语音通道设置入站呼叫

  17. 设置呼叫录制和听录。 在 配置通话录制、听录和实时翻译中了解详细信息。

  18. “听录和录制”下,打开“ 用户同意请求”。

    Dynamics 365 Customer Service管理中心的截图,突出显示语音设置。

注释

  • 启用 “用户同意请求 ”不会自动提示用户同意。 请务必遵循本文章前面概述的步骤。 如果关闭此设置,则无论以前的配置设置如何,启用语音的代理都不会请求同意。
  • 呼叫连接后立即请求用户同意。 配置 对话开始 主题以将调用方重定向到 用户同意 主题。

若要在现有代理Copilot Studio中配置 User Consent 主题,请执行以下步骤。 对于现有代理,创建者必须使用提供的 YAML 代码手动创建自定义 主题

  1. 转到 主题>自定义

  2. 选择“从空白>”。

  3. 选择工具栏上的更多...),然后选择打开代码编辑器

  4. 粘贴以下代码,然后选择“ 保存”。

     kind: AdaptiveDialog
     beginDialog:
       kind: OnRedirect
       id: main
       actions:
         - kind: ConditionGroup
           id: conditionGroup_meb0Ve
           conditions:
             - id: conditionItem_txK0VF
               condition: =Global.AskForConsent = true
               actions:
                 - kind: Question
                   id: tm6Yij
                   interruptionPolicy:
                     allowInterruption: false
                   unrecognizedPrompt:
                     speak:
                       - I'm sorry, I didn't get that. Do you consent to the call being recorded?
                   repeatCount: 2
                   alwaysPrompt: true
                   variable: Global.ConsentResponse
                   prompt:
                     speak:
                       - This call may be recorded for quality and training purposes. Do you consent?
                     allowBargeIn: false
                   defaultValue: true
                   entity:
                     kind: BooleanPrebuiltEntity
                     dtmfMultipleChoiceOptions:
                       generateMapping: true
                       readOutOptions: true
                   voiceInputSettings:
                     silenceDetectionTimeoutInMilliseconds: 5000
                     repeatCountOnSilence: 1
                     defaultValueMissingAction: SetValue
                     defaultValueOnSilence: true
                 - kind: ConditionGroup
                   id: Q27jCU
                   conditions:
                     - id: SpRb5l
                       condition: =Global.ConsentResponse = true
                       actions:
                         - kind: SendActivity
                           id: 1C6TZE
                           activity:
                             speak:
                               - Thank you for your consent. This call will be recorded.
                     - id: cGBXo2
                       condition: =Global.ConsentResponse = false
                       actions:
                         - kind: SendActivity
                           id: 7WPZ1f
                           activity:
                             speak:
                               - This call will not be recorded.
                   elseActions:
                     - kind: SendActivity
                       id: woLRu5
                       activity:
                         speak:
                           - This call will be recorded.
                 - kind: SendActivity
                   id: WgtRnP
                   activity:
                     kind: EventActivity
                     value: =Global.ConsentResponse
                     name: Sys.ConsentEvent
         - kind: EndDialog
           id: F9eqKn
    
  5. 将本主题添加到 “对话开始” 主题并发布代理。

注释

当用户在响应同意提示时不提供输入时,系统将此条件视为隐式同意,并启动呼叫的录制和听录。 管理员和代理制造商应验证语音代理是否已正确配置。 如果未正确设置同意主题,则系统默认记录调用。

工作流设置

在工作流级别控制基于同意的录制。 若要提示呼叫者同意,请为启用语音的代理启用此设置。 禁用此设置时,启用语音的代理不会要求呼叫者同意。

如果启用基于同意的录制,但未将启用语音的代理配置为请求同意,则呼叫仍会录制并转录。 但是,启用语音的代理不会提示呼叫者同意。 仅当为工作流启用录制和听录时,此行为才适用。

下表显示了基于同意的录制行为:

在工作流级别请求用户同意 Copilot Studio主题状态 默认体验
关闭 开启 不向呼叫者提供基于同意的录制
开启 开启 向所有来电者提供的同意录音服务
开启 关闭 此配置将所有客户定义为“已选择加入”,并且系统继续录制和听录
关闭 关闭 不向呼叫者提供基于同意的录制

仅抄录行为

仅当工作流行为设置为 仅听录时,同意处理遵循设置为 听录和录音时使用的相同模型。 如果调用方提供听录同意,则会转录呼叫。 如果调用方拒绝同意,则不会生成任何文字记录。

如果对话从语音助理升级到客户服务代表(CSR),则仅当呼叫者事先同意了,语音转录才会继续。 如果未提供同意,则不会转录呼叫,并且不会向 CSR 显示任何脚本。

客户服务代表体验

如果客户不同意转录和录音,并且语音代理将呼叫升级至客户服务代表,则在工作区中将执行以下操作:

  • 不显示文本记录。

  • 通话进行时没有任何录音或转录。

  • 代表无法启动或暂停录制和脚本。

转移和咨询

当客户服务代表在Dynamics 365 Contact Center内将呼叫转接到另一位代表时,根据呼叫方的原始同意选择继续录制和听录。 例如,如果呼叫方不同意录制,则不会在传输期间或整个交互过程中的任何时间点录制呼叫。 相同的行为适用于咨询方案,即代表在通话期间与另一位代表协商。

如果将呼叫转移到Dynamics 365 Contact Center之外的非Microsoft方,Microsoft不会记录或转录呼叫。 Microsoft无法控制或保证非Microsoft方是否记录呼叫。 录制行为受非Microsoft方自己的策略和系统的约束。

呼叫者连接到启用了语音的代理时,呼叫录制将开始。 如果呼叫方未提供同意,Microsoft会立即停止录制呼叫。

为了支持合规性要求,系统会记录同意提示和调用方响应。 Microsoft将此记录存储在Microsoft托管存储中,客户无法访问它。 Microsoft在两小时内自动删除此记录。

Support

你可以联系微软支持来关闭该功能,并为您遇到的任何问题获取技术支持。