mcpField
S
service-omni-channel-inventory-analyze

service-omni-channel-inventory-analyze

github.com/forcedotcomその他1.1k60 回インストール1 日前に更新
リポジトリ

service-omni-channel-inventory-analyze について

Voice、Email、Live Chat、Messaging の Omni-Channel 設定を調べる読み取り専用の Salesforce スキルです。変更前の確認向けに、チャネル種別と導出されたルーティング先を返します。

主な機能

  1. 01Omni-Channel インスタンスの一覧取得
  2. 02Voice、Email、Chat、Messaging に対応
  3. 03チャネル種別による結果の絞り込み
  4. 04ルーティング種別と対象の報告
  5. 05状態付きの正規化 JSON を出力

活用シーン

  1. 01不慣れな org のルーティングを確認
  2. 02設定済みチャネル群を確認
  3. 03特定チャネルに絞って一覧を確認
  4. 04一覧取得がブロックされたか確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/forcedotcom/sf-skills --skill service-omni-channel-inventory-analyze

インストール後、Claude Code で/service-omni-channel-inventory-analyzeを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
api-notes.md
scripts/
analyze.sh
scripts/tests/
_bootstrap.py
test_inventory_analyze_contracts.py

詳細

service-omni-channel-inventory-analyze

変更を加えずに、組織の Omni-Channel 設定全体のインベントリを読み取ります。サポートされているヘッドレス操作では、Voice、Email、Live Chat、Messaging の各チャネルファミリーを組み合わせ、導出されたルーティングタイプとルーティング先を返します。このアナライザーは、構成に詳しくない組織を変更する前や、ユーザーから既に設定されている Omni チャネルとルーティングについて尋ねられた場合に使用します。

入力

bash scripts/analyze.sh <org-alias> [--type Voice|Email|Chat|SMS|Facebook|WhatsApp|InApp]
  • org-alias は必須であり、Salesforce CLI で認証済みである必要があります。
  • --type は省略可能で、大文字と小文字を区別しません。ソースデータを変更せずに、返されるインベントリをフィルタリングします。

前提条件と安全性

  • 対象の組織が sf CLI を通じて認証済みであること。
  • API v66.0 以降であること。
  • 実行ユーザーに View Setup and Configuration および Customize Application の権限があること。
  • このスキルは読み取り専用です。共有 Headless ディスパッチャーは HTTP POST エンベロープを使用しますが、呼び出される getChannelInstances コントローラーアクションは組織に変更を加えません。
  • sf api request rest を使用してください。アクセストークンを抽出または表示しないでください。

実行

対象の組織と省略可能なチャネルタイプを指定して、scripts/analyze.sh を呼び出します。このスクリプトは、承認済みの OmniChannelInstancesController.getChannelInstances エンベロープを共有 Headless ディスパッチャーに POST し、内部レスポンスを検証して、必要に応じてフィルタリングした後、一貫性のある要約と一致するチャネルインスタンスを返します。

インベントリには、プラットフォームから提供される場合、次のソースフィールドが含まれます。

フィールド意味
id, labelチャネルの識別情報と表示ラベル
omniChannelInstanceTypeVoice、Email、Chat、SMS、Facebook、WhatsApp、または InApp
routingTypeQueue、Flow、または Other
routingRequirementId, routingRequirementLabelQueue、flow、またはその他のルーティング先
channelUrl, routingRequirementUrlプラットフォームが生成した設定画面へのナビゲーションリンク
icon, messages表示メタデータとプラットフォームから提供される通知

出力仕様

このスクリプトは、次の JSON オブジェクトを 1 つ出力します。

  • skill: service-omni-channel-inventory-analyze
  • status: analyzed または blocked
  • filter: 正規化されたチャネルタイプ、または null
  • summary.total_configured: フィルタリング前にプラットフォームから返されたインスタンス数
  • summary.returned: instances 内のインスタンス数
  • summary.by_channel_type: 返されたインベントリのチャネルタイプ別件数
  • summary.by_routing_type: 返されたインベントリの Queue、Flow、Other 別件数
  • instances: 正規化されたチャネルインスタンスオブジェクト
  • blocking_issue: 対処可能な失敗理由、または null

status: analyzed で instances 配列が空の場合も、有効なインベントリ結果です。認証、権限、エンドポイント、または不正なレスポンスに関するエラーでは、status: blocked を返してゼロ以外のステータスで終了します。これらを空の組織として扱わないでください。

制約

  • この操作を独自の SOQL クエリに置き換えないでください。プラットフォームによるファミリー横断の集約、ルーティングタイプの導出、設定 URL の生成を再現する公開オブジェクト API は 1 つもありません。
  • 欠落しているルーティングフィールドを推測しないでください。プラットフォームから値が提供されない場合は、null を維持してください。
  • 返された設定 URL を変更用のエンドポイントとして使用しないでください。
  • 設定を変更する場合は、まずユーザーにインベントリを提示してから、適切なリーフスキルに引き継いでください。
依頼された次の作業スキル
Omni 設定全体を調整するservice-omni-channel-setup-coordinate
Service Channel を作成または再利用するservice-omni-service-channel-configure
キュールーティング設定を作成または更新するservice-omni-queue-routing-config-deploy
QueueBased または SkillsBased のルーティングフローをデプロイするservice-omni-routing-flow-deploy

参考資料

ファイル読むタイミング
references/api-notes.mdサポート対象のエンドポイント、権限の境界、レスポンスフィールド、およびヘッドレス操作が標準である理由を確認するとき

コメント