发布时间:2026/7/14 4:50:17
Agentforce 客户聊天体验开发指南 Enhanced Chat v2 概述Enhanced Chat v2 是 Service Cloud 上 Enhanced Web Chat 的新客户界面允许你连接和部署 Service Agent 到外部聊天渠道。支持通过 Custom Lightning Types 自定义 UI、通过utilAPI.setSessionContext方法传递上下文事件、以及内联模式Inline Mode将聊天客户端嵌入到网页特定元素中。Context Events上下文事件Enhanced Chat v2 提供了一个独特的上下文事件传递方式。Enhanced Web Chat 中的utilAPI新增了setSessionContext方法可在 Enhanced Chat v2 部署中使用用于在网页和聊天客户端之间传递上下文事件。Inline Mode内联模式vs 浮动模式模式行为浮动模式默认用户点击右下角 FAB 按钮时出现聊天窗口内联模式聊天直接渲染在父页面指定的div元素内填满目标元素启用内联模式embeddedservice_bootstrap.settings.displayMode inline; embeddedservice_bootstrap.settings.headerEnabled false; // 可选 const myElement document.querySelector(.chat-container); embeddedservice_bootstrap.settings.targetElement myElement;Custom Lightning Types使用 Lightning Web Components 个性化聊天外观可以代表用户发送消息或从 LWC 传递上下文事件。Custom Connections自定义连接Custom Connections 通过 Agent API 将外部 Web 客户端连接到 Agentforce Agent。你定义基于元数据的连接告知 Agent 你的客户端支持哪些结构化响应格式Agent 则返回符合这些 Schema 的 JSON。这使得你的客户端可以渲染原生 UI 组件如轮播、卡片、表单或选择器。工作原理Custom Connections 使用两种元数据类型AiSurface—— 定义连接本身表面级指令语气、长度限制、格式化条件、引用的响应格式列表、surfaceType 设为 CustomAiResponseFormat—— 定义单个结构化输出格式JSON Schemainput 字段、描述和指令告诉 Agent 何时应用此格式、可选的 invocationTarget响应格式选择过程当前对话轮次的子代理和动作指令首先运行Agent 评估每个启用的 AiResponseFormat 的描述和指令Agent 每轮最多选择一个格式 —— 判定为最匹配的格式sortOrder控制 LLM 评估顺序较低值先评估影响但不强制执行回退如果没有格式被选中或发生错误 → 返回标准 Agent API 响应无格式纯文本警告所有响应格式指令都是非确定性的。Agent 可能选择错误的格式或产出不完全符合 JSON Schema 的输出。始终构建客户端解析以处理结构化响应和纯文本回退两种情况。设置 Custom Connection目录结构unpackaged/ package.xml aiResponseFormats/ AcmeChatChoices_{surfaceId}.aiResponseFormat AcmeChatChoicesWithImages_{surfaceId}.aiResponseFormat AcmeChatTimePicker_{surfaceId}.aiResponseFormat aiSurfaces/ AcmeChatClient_{surfaceId}.aiSurface genAiPlannerBundles/ {YourPlannerBundle}/ {YourPlannerBundle}.genAiPlannerBundle{surfaceId}是区分自定义连接及其关联响应格式的唯一字母数字标识符。部署顺序重要AiResponseFormat 必须在 AiSurface之前部署因为 Surface 引用了 Format。sf project deploy start --manifest unpackaged/package.xml。更新时直接重新部署同名的定义即可替换旧版本。AiSurface 字段参考description—— 连接的用途描述instructions[]—— 高层指导instruction 字符串 sortOrder 整数较低值优先如 Always reply with a brief, friendly, clear response under 160 characters.responseFormats[]—— 启用的响应格式列表enabled 布尔值 responseFormat 开发者名称surfaceType—— CustomAiResponseFormat 字段参考description—— 告诉 Agent何时选择此格式用于选择评估而非仅供人阅读。如 Use this when the number of choices is GREATER THAN 1 and LESSER THAN 8.input—— 定义预期输出结构的 JSON SchemaAgent 尝试映射但非严格强制instructions[]—— 应用此特定格式的详细用例条件invocationTarget / invocationTargetType—— 可选的可调用动作引用apex/flow/standardInvocableAction关联到 Agent在 GenAiPlannerBundle 中添加plannerSurfaces条目指定 surface 名称和 surfaceType 为 Custom。使用、解析和测试 Custom Connections在 Agent API 会话中使用surfaceConfig: { surfaceType: Custom }解析响应检查消息是否包含result数组 → 响应格式已被应用读取result[0].type→ 格式标识前缀为SURFACE_ACTION__ AiResponseFormat 开发者名称不含 _{surfaceId} 后缀将result[0].value解析为 JSON → 符合你定义的 input Schema无 result 数组→ 回退将 message 字段渲染为纯文本// 示例响应 result: [{ type: SURFACE_ACTION__RegistrationForm, value: {\title\:\registrationForm\,\message\:\To register...\} }]重要始终在客户端验证result[0].value后再交给渲染器 —— 平台不会对 Agent 的结构化输出进行 Schema 验证。响应格式示例和故障排查三种常见设计模式模式Schema使用条件文本选项{message: string, choices: string[]}选项数 1 且 8带图选项{message: string, choices: [{title, imageUrl, actionText}]}图片对决策至关重要时间选择器Slack Block Kit timepicker 语法用户需要选择具体时间设计技巧保持格式集小—— 每个连接少于 7 个响应格式太多会导致选择不可靠描述要写给选择逻辑—— 明确写出精确条件项目数量、是否包含图片、数据形状而非泛泛的人类描述用 LLM 生成 JSON Schema—— 向你偏好的 LLM 提供输出结构让它生成对应的 JSON Schema故障排查速查问题解决方案无效 JSON Schema验证 input 字段包含有效、正确转义的 JSON缺失引用AiSurface 中所有格式必须作为已部署的 AiResponseFormat 实体存在元数据部署错误先部署 AiResponseFormat再部署 AiSurfacesurfaceType 不匹配确保 AiSurface 和 plannerSurfaces 中 surfaceType 一致响应未格式化验证会话调用中包含 surfaceConfig 且 surfaceType 为 CustomCustom Connections 为你提供了对客户如何与 Agentforce Agent 交互的完全控制 —— 从原生 UI 组件渲染到结构化数据交换全部通过标准化的元数据定义实现。文章来源Agentforce 客户聊天体验开发指南 | Salesforce CRM 中文站

相关新闻

2026/7/14 4:50:17

运算符与表达式

目录 1.运算符 2.表达式 3.运算符的分类 3.1 算术运算符 (自增运算符) – – (自减运算符) 3.2 关系运算符 3.3 逻辑运算符 C语言逻辑运算符是 "惰性运算" 3.4 位运算符 1.~ 按位取反 2. & 按位与 3. | 按位或 4. ^ 按位异或 有两个变量 a,b 要交换…

2026/7/14 4:50:17

从零手写顺序表到深入理解ArrayList:Java数据结构核心实践指南

顺序表理解顺序表在物理内存结构是连续的 通常用数组 完成增删查改 我们需要删除和修改的时候 必须要遍历整个数组 效率不高 于是引出来链表 顺序表的模拟package Book3;import java.util.ArrayList; import java.util.Arrays; import java.util.List;public class nn{priv…

2026/7/14 4:45:17

滑动窗口算法实战:无重复字符最长子串详解与多语言实现

算法实战:无重复字符的最长子串详解在面试和算法竞赛中,"无重复字符的最长子串"是一个经典且高频出现的题目。很多开发者在初次接触时容易陷入暴力求解的思维定式,导致时间复杂度居高不下。本文将系统讲解滑动窗口算法的核心思想&a…

2026/7/14 7:00:24

直流负载管理优化:G6D-ASI继电器与MKV44F256VLH16控制方案

1. 直流负载管理的核心挑战与优化方向在工业自动化和电力电子系统中,直流负载管理一直是个棘手的技术难题。传统继电器控制方案存在三大致命缺陷:触点磨损导致的接触电阻增加、电弧效应造成的能量损耗、以及机械结构带来的响应延迟。以一个典型的24V/10A…

2026/7/14 7:00:24

【iOS】虚拟内存 物理内存

虚拟内存 & 物理内存 早期的数据访问是直接通过物理地址访问的,容易出现内存不够用、内存数据的安全问题。 为了解决内存不够用的问题,我们在进程和物理内存之间增加了一个中间层,即虚拟内存,主要用于解决当多个进程同时存在时…

2026/7/14 7:00:24

STM32驱动压电蜂鸣器实现高音量报警系统设计

1. 项目背景与核心需求在工业控制、安防系统和智能家居等领域,可靠的声音警报系统是不可或缺的基础组件。传统蜂鸣器存在音量不足、音质单薄、环境适应性差等问题,而基于压电陶瓷技术的EPT-14A4005P蜂鸣器配合STM32F334R8微控制器的解决方案,…

2026/7/14 7:00:24

跨平台引流实战:从浏览器到应用商店的智能跳转方案解析

1. 跨平台引流的技术挑战与解决方案当用户通过社交媒体或网页分享链接访问推广页面时,如何精准引导用户下载或打开App?这个问题看似简单,实则涉及复杂的设备识别和跳转逻辑。不同操作系统、不同品牌设备、不同浏览器环境,都需要针…

2026/7/13 6:38:38

3步解锁音乐自由:ncmdumpGUI终极NCM文件解密转换指南

3步解锁音乐自由:ncmdumpGUI终极NCM文件解密转换指南 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾在网易云音乐下载了心爱的歌曲&#…

2026/7/13 14:26:14

CANoe 19 SP3 配置 GB/T 27930-2023 A类系统:3步搭建BMS仿真测试环境

CANoe 19 SP3 配置 GB/T 27930-2023 A类系统:3步搭建BMS仿真测试环境随着新能源汽车行业的快速发展,充电通信协议的标准化和测试验证变得尤为重要。GB/T 27930-2023作为中国智能充电协议的最新版本,对充电机与电动汽车之间的通信提出了更严格…

2026/7/13 18:07:53

3步搞定RTL8852BE驱动:从零开始配置Wi-Fi 6网卡

3步搞定RTL8852BE驱动:从零开始配置Wi-Fi 6网卡 【免费下载链接】rtl8852be Realtek Linux WLAN Driver for RTL8852BE 项目地址: https://gitcode.com/gh_mirrors/rt/rtl8852be 还在为Linux系统无法识别RTL8852BE Wi-Fi 6网卡而烦恼吗?&#x1f…

2026/7/14 0:04:21

5分钟掌握足球PBR材质制作:Photoshop与Unity高效工作流

1. 项目概述:为什么是足球PBR材质?在游戏开发,尤其是体育竞技类游戏的制作中,一个看起来“对味”的足球,往往比我们想象中更重要。它不仅是赛场上的核心道具,更是玩家视觉焦点和沉浸感的重要来源。一个塑料…

2026/7/14 0:04:21

ChatGPT联网搜索失败,92%开发者误判为网络问题——真实根因竟是LLM推理会话上下文污染导致Search Agent进程静默退出(含strace复现脚本)

更多请点击: https://intelliparadigm.com 第一章:ChatGPT 联网搜索失败 当 ChatGPT 的联网搜索功能无法正常工作时,用户常遇到“搜索不可用”“未连接到互联网”或空白响应等现象。该问题并非模型本身缺陷,而是由权限配置、网络…

2026/7/13 11:33:05

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…