mcpField
S
service-omni-command-center-configure

service-omni-command-center-configure

github.com/forcedotcom其他1.1k50 次安装1 天前更新
代码仓库

关于 service-omni-command-center-configure

用于启用 Salesforce Service V2 Command Center 并配置可选主管控制项的技能。它保留未指定的现有设置,并在部署后核验配置及平台创建的页面和标签。

主要功能

  1. 01启用 Service V2 Command Center
  2. 02配置五项可选主管控制
  3. 03保留未指定设置
  4. 04部署后读取并核验结果
  5. 05限制写入至非生产组织

适用场景

  1. 01为组织启用 Command Center for Service V2
  2. 02调整对话监控或窥视设置
  3. 03启用私语消息或队列与技能操作

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/forcedotcom/sf-skills --skill service-omni-command-center-configure

安装后在 Claude Code 中输入/service-omni-command-center-configure确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
api-notes.md
scripts/
configure-and-report.sh
settings_document.py
scripts/tests/
test_command_center_configure_contracts.py

详细介绍

service-omni-command-center-configure

通过 Settings:OmniChannel 启用 Service V2 的 Command Center,并可选择配置同一 Metadata API 契约所提供的五项主管控制。写入器会检索组织的完整设置文档,仅更改请求的元素,部署保留其他内容的文档,然后再次检索文档,并验证相应值以及平台创建的 CommandCenterForServiceV2_L 页面和 V2 选项卡。

如果检索到的设置文档未提供 enableCommandCenterForServiceV2,此技能会以 platform_api_unavailable 失败关闭。

请先运行 service-omni-base-settings-configure,以启用 Omni 基础功能。如果组织不支持 Command Center V2,请改用 service-omni-supervisor-config-deploy 配置经典主管设置。

如需端到端设置,只有在 OMNI_COMMAND_CENTER_V2=1 时,service-omni-channel-setup-coordinate 才会调用此技能;协调器的默认主管流程保持不变。

输入

bash scripts/configure-and-report.sh plan <org-alias> [options]
bash scripts/configure-and-report.sh run  <org-alias> --apply [options]

选项:

选项Metadata 元素值
--conversation-monitoringenableConversationMonitoringtrue 或 false
--agent-sneak-peekenableAgentSneakPeektrue 或 false
--customer-sneak-peekenableClientSneakPeektrue 或 false
--whisper-messagingenableWhisperMessagingtrue 或 false
--queues-and-skillsenableSkillsAndQueueActionstrue 或 false

始终会请求设置 enableCommandCenterForServiceV2=true。未指定的主管控制项会按检索到的值原样保留。此技能有意不提供禁用 V2 的功能,因为禁用组织级主管体验属于实质上不同的操作。

安全性

  • plan 为只读操作,绝不会部署。
  • run 在进行任何变更前都需要提供字面值标志 --apply。
  • 仅当 IsSandbox=true、TrialExpirationDate 不为 null,或 OrganizationType 为 Developer Edition 或 Base Edition 时,才允许写入。没有生产环境覆盖选项。
  • Settings 是整份文档类型的 Metadata API。切勿部署不完整或硬编码的 OmniChannel.settings-meta.xml,否则可能重置无关的 Omni 设置。
  • 目标组织必须启用 Enhanced Omni-Channel 和 Command Center for Service V2 发行版门控。此 API 字段还受 Customize Application 权限控制。

行为

  1. 进行身份验证,并在 API v66 下检索 Settings:OmniChannel。
  2. 确认 V2 字段存在。如果不存在,则返回 blocked,并设置 reason_code=platform_api_unavailable;不要尝试部署。
  3. 构建请求值集合,其中包含 V2=true,以及调用方明确提供的可选控制项。
  4. 在 plan 模式下,返回 action_needed 或 reused,不进行写入。
  5. 在 run 模式下,强制要求提供 --apply 并通过非生产环境防护检查;修改检索到的文档的私有副本,然后进行部署。
  6. 再次检索设置,并要求每个请求值均匹配。
  7. 要求可以观察到种子化的 FlexiPage(CommandCenterForServiceV2_L)和 V2 TabDefinition。如果种子化证据缺失或不可读取,则返回 blocked;此技能不会猜测。

平台的 ON 状态转换钩子具有幂等性:仅在需要时创建缺失的配置文件选项卡配置,并植入基线 FlexiPage。不会覆盖现有页面自定义项。如果首选项已为 true,但种子化构件缺失,此技能会返回 seed_incomplete;不会强制执行有破坏性的 OFF→ON 循环。

输出约定

脚本会输出一个 JSON 对象,其中包含:

  • status:configured、reused、action_needed 或 blocked
  • reason_code:稳定的原因代码,例如 changes_required、already_configured、platform_api_unavailable、unsafe_target、deploy_failed、verification_failed 或 seed_incomplete
  • requested、before 和 after:设置值,并在快照中保留是否存在
  • safe_to_write、deploy_id 和 verification
  • manual_actions:权限分配及任何所需的后续操作
  • blocking_issue:仅在阻塞时填充

启用组织偏好设置不会授予用户访问权限。请向每位预期的主管分配包含 CommandCenterForServiceUser 的权限集,然后运行 service-omni-command-center-analyze <org> <supervisor>,以验证端到端就绪情况。

参考资料

文件何时阅读
references/api-notes.md元数据名称、平台限制、种子行为和已知限制

评论

支持 Markdown