service-omni-channel-inventory-analyze について
Voice、Email、Live Chat、Messaging の Omni-Channel 設定を調べる読み取り専用の Salesforce スキルです。変更前の確認向けに、チャネル種別と導出されたルーティング先を返します。
主な機能
- 01Omni-Channel インスタンスの一覧取得
- 02Voice、Email、Chat、Messaging に対応
- 03チャネル種別による結果の絞り込み
- 04ルーティング種別と対象の報告
- 05状態付きの正規化 JSON を出力
活用シーン
- 01不慣れな org のルーティングを確認
- 02設定済みチャネル群を確認
- 03特定チャネルに絞って一覧を確認
- 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.mdscripts/analyze.shscripts/tests/_bootstrap.pytest_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は省略可能で、大文字と小文字を区別しません。ソースデータを変更せずに、返されるインベントリをフィルタリングします。
前提条件と安全性
- 対象の組織が
sfCLI を通じて認証済みであること。 - 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 | チャネルの識別情報と表示ラベル |
omniChannelInstanceType | Voice、Email、Chat、SMS、Facebook、WhatsApp、または InApp |
routingType | Queue、Flow、または Other |
routingRequirementId, routingRequirementLabel | Queue、flow、またはその他のルーティング先 |
channelUrl, routingRequirementUrl | プラットフォームが生成した設定画面へのナビゲーションリンク |
icon, messages | 表示メタデータとプラットフォームから提供される通知 |
出力仕様
このスクリプトは、次の JSON オブジェクトを 1 つ出力します。
skill:service-omni-channel-inventory-analyzestatus:analyzedまたはblockedfilter: 正規化されたチャネルタイプ、またはnullsummary.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 | サポート対象のエンドポイント、権限の境界、レスポンスフィールド、およびヘッドレス操作が標準である理由を確認するとき |