Salesforce との連携

Agent Assist UI モジュールを Salesforce と統合して、カスタマー サービスのチャット会話中に人間のエージェントにリアルタイムの提案を提供します。

Agent Assist の Lightning ウェブ コンポーネント(LWC)を使用すると、Agent Assist の機能を Salesforce エージェント デスクトップに導入できます。カスタマーケア担当者にリアルタイムでサポートを提供し、お客様の問題を迅速に解決できるようにします。送信可能な回答を提示したり、一元化されたナレッジベースからお客様の質問に対する回答を提案したりします。

Salesforce が開発した LWC は、コンポーネントのロジックとテンプレートを定義するための最新の JS フレームワークです。Agent Assist LWC は Salesforce インスタンスにデプロイされ、そこから提供されます。セキュリティが強化されており、Salesforce のデータと API と直接統合できます。

始める前に

Agent Assist UI モジュールを Salesforce と統合するには、次のリソースにアクセスできる必要があります。

  • Node.js

    Google では Node.js 18.20.4 をテストし、推奨しています。Node.js 20.18.0 には既知の互換性の問題があります。

  • Salesforce CLI

    次のコード (sudo) npm install -g @salesforce/cli を使用してインストールします。

  • Gcloud CLI

    手順に沿って gcloud コマンドをインストールし、gcloud auth login を使用して認証します。

  • Salesforce UI

    • インスタンスの URL または login.salesforce.com にログインし、次の点に注意してください。
      • Salesforce の [My Domain URL](My Domain の URL)。メニューバー > [設定] メニューに移動し、[設定] をクリックします。クイック検索で「My Domain」と入力します。ドメイン名の形式は MY-DOMAIN-NAME.develop.my.salesforce.com です。
      • Salesforce 組織 ID。メニューバー > 設定メニューに移動し、[設定] をクリックします。クイック検索で「会社情報」を検索します。
  • Agent Assist 統合バックエンド

    • 手順に沿って統合を設定します。
    • デプロイ スクリプトを実行する前に、deploy.sh またはプロジェクト ルートの .env ファイルで次の環境変数を構成します。
      • AUTH_OPTION: SalesforceLWC に設定します。
      • SALESFORCE_DOMAIN: YOUR_SUBDOMAIN.develop.lightning.force.com のようなドメイン名。この値は、Salesforce UI の前提条件でメモしました。https:// は含めないでください。
      • SALESFORCE_ORGANIZATION_ID: この値は、Salesforce UI の前提条件でメモしました。

ステップ 1: プロジェクトを設定する

Agent Assist UI モジュールの統合を開始する手順は次のとおりです。

  1. 次のコードを実行して、Agent Assist 統合リポジトリのクローンを作成し、プロジェクトを開きます。

    git clone https://github.com/GoogleCloudPlatform/agent-assist-integrations
    cd salesforce/aa-lwc
    
  2. 次のコマンドを実行して、後で静的リソースとしてデプロイする JS ファイルをダウンロードします。

    npm run generate-static-resources
    npm install
    

ステップ 2: 環境を設定する

Agent Assist UI モジュールは、本番環境や開発環境など、特定の環境に統合できます。Salesforce では、これらの環境を組織(org)と呼びます。

Salesforce コンソールで組織を構成する

Salesforce コンソールで、次の手順に沿って組織を構成して Agent Assist と統合します。

  1. メニューバー > 設定メニューに移動し、[設定] をクリックします。[クイック検索] で「オムニチャネル設定」と入力し、[オムニチャネル設定] をクリックします。
    1. [Enable Omni-Channel] をオンにします。
    2. [エージェントを新しいウィンドウまたはタブで Omni-Channel に自動的にログインする] を選択します。
    3. [保存] をクリックします。
  2. メニューバー > 設定メニューに移動し、[設定] をクリックします。クイック検索で「コミュニティ」を検索し、[デジタル エクスペリエンス] > [設定] をクリックします。
    1. [エクスペリエンス ワークスペースを有効にする] チェックボックスをオンにします。
    2. [保存] をクリックします。

Salesforce CLI を使用して組織を構成する

Salesforce CLI を使用して、Agent Assist との統合用に組織を構成する手順は次のとおりです。

  1. 次のコードを実行し、通常使用する Salesforce ログイン情報を使用した CLI の認証を行います。

    npm run login
    
  2. 次のコードを実行して、LWC を組織にデプロイします。

    npm run deploy
    

ステップ 3: 接続アプリを作成する

Agent Assist LWC は、クライアント認証情報 OAuth 2.0 フローを使用してユーザーを認証します。接続されたアプリケーション(アプリ)は、クライアント認証情報フローを有効にします。アプリのコンシューマ キーとコンシューマ シークレットを使用して、Salesforce でユーザーを認証するように Agent Assist LWC を構成します。

  1. メニューバー > 設定メニューに移動し、[設定] をクリックします。[クイック検索] で「アプリ マネージャー」を検索します。
    1. [新しい接続済みアプリ] > [接続済みアプリを作成] > [続行] をクリックし、次の情報を入力します。
      • 接続されているアプリ名: lwc auth
      • API 名: lwc_auth
      • 連絡先メールアドレス: your_email@example.com
      • [Enable OAuth Settings](OAuth 設定を有効にする): オン
      • コールバック URL: https://login.salesforce.com/services/oauth2/callback
      • Selected OAuth Scopes: 認証 URL サービスにアクセスする
      • クライアント認証フローを有効にする: オン
    2. [保存] をクリックします。
  2. メニューバー > 設定メニューに移動し、[設定] をクリックします。[クイック検索] で「接続済みのアプリを管理」を検索します。
    1. 接続アプリの名前 > [ポリシーを編集] をクリックします。
    2. [クライアント認証情報フロー] に移動します。
    3. [Run As] で虫眼鏡をクリックし、ユーザー名を選択します。
    4. [保存] をクリックします。
  3. メニューバー > 設定メニューに移動し、[設定] をクリックします。[クイック検索] で「アプリ マネージャー」を検索します。
    1. [lwc auth] を見つけて をクリックします。
    2. [表示] > [消費者の詳細を管理] をクリックします。
    3. メールに送信された確認コードを入力してください。
    4. コンシューマ キーとコンシューマ シークレットを安全な場所にコピーします。これらは後で必要になります。
  4. メニューバー > 設定メニューに移動し、[設定] をクリックします。クイック検索で「CORS」と入力し、[編集] をクリックします。
    1. [OAuth エンドポイントで CORS を有効にする] をオンにします。
    2. [保存] をクリックします。

接続アプリの詳細については、次の Salesforce リソースをご覧ください。

ステップ 4: チャット クライアントを構成する

Salesforce で Agent Assist UI モジュールを使用するには、エージェントのデスクトップにチャット クライアントが必要です。

アプリ内とウェブ向けにメッセージを設定する

メッセンジャーを設定するには、次の手順を行います。

  1. メニューバー > 設定メニューに移動し、[設定] をクリックします。クイック検索で「信頼できる URL」を検索し、[新しい信頼できる URL] をクリックします。
    1. API 名: ui_connector を入力します。
    2. Agent Assist 統合バックエンドを使用してデプロイした UI コネクタの Cloud Run サービス エンドポイントの URL を入力します。この URL は Cloud Run コンソールで確認できます。例: https://UI_CONNECTOR_SUBDOMAIN.gcp-region.run.app
    3. [CSP ディレクティブ] のすべてのチェックボックスをオンにします。
    4. [Save & New] をクリックします。
    5. API 名: salesforce_domain を入力します。
    6. Salesforce ドメインの URL を https://YOUR_SUBDOMAIN.my.salesforce.com の形式で入力します。
    7. [CSP ディレクティブ] のすべてのチェックボックスをオンにします。
    8. [保存] をクリックします。
  2. メニューバー > 設定メニューに移動し、[設定] をクリックします。クイック検索で「キュー」を検索し、[新規] をクリックします。
    1. 次の情報を入力します。
      • ラベル: メッセージ キュー
      • キュー名: Messaging_Queue
      • ルーティング構成: Messaging_Routing_Configuration
    2. [サポートされているオブジェクト] をクリックし、「Messaging User、Messaging Session」を追加します。
    3. [Queue Members] をクリックし、「User: Your Login User」を追加します。
    4. [保存] をクリックします。
  3. メニューバー > 設定メニューに移動し、[設定] をクリックします。クイック検索で「権限セット」を検索します。
    1. [Messaging Agents Permission Set] をクリックします。
    2. [Service Presence Statuses Access] > [編集] をクリックします。
    3. ステータスとして [Busy] と [Online - Messaging] を選択します。
    4. [追加] > [保存] をクリックします。
  4. メニューバー > 設定メニューに移動し、[設定] をクリックします。クイック検索で「ユーザー」と入力し、[ユーザー] をクリックします。
    1. ユーザー名をクリックし、[Service Cloud ユーザー] が有効になっていることを確認します。
    2. ページで [Permission Set License Assignments] を見つけます。
    3. [割り当てを編集] をクリックし、[アプリ内ユーザーとウェブユーザーへのメッセージ] をオンにします。
    4. [保存] をクリックします。
    5. ページで [権限セットの割り当て] を見つけます。
    6. [割り当てを編集] をクリックし、[Messaging Agent Permission Set] を選択します。
    7. [追加] > [保存] をクリックします。
  5. メニューバー > 設定メニューに移動し、[設定] をクリックします。クイック検索で「メッセージ設定」を検索し、[新しいチャネル] をクリックします。
    1. [Messaging for In-App and Web] を選択します。
    2. [名前] に「Messaging Channel」と入力します。
    3. [保存] をクリックします。
    4. [ルーティング タイプ] を [Omni-Queue]、[キュー] を [Messaging Queue] に設定します。
    5. [保存] をクリックし、[メッセージ設定] に移動します。
    6. メッセージ チャンネルの名前をクリックし、[有効にする] をクリックします。
    7. 利用規約を読み、同意します。
  6. メニューバー > 設定メニューに移動し、[設定] をクリックします。クイック検索で「Embedded Service Deployments」と入力し、[新しいデプロイ] をクリックします。
    1. [アプリ内とウェブ向けのメッセージング] > [次へ] > [ウェブ] > [次へ] をクリックします。
    2. 次の詳細を入力します。
      • 名前: Messaging Embedded Service Deployment
      • デベロッパー名: Messaging_Embedded_Service_Deployment
      • ドメイン: example.com
      • チャネル: メッセージ チャネル
    3. [保存] をクリックします。デプロイが完了するまで待ちます。
    4. [Embedded Service Deployment] 設定で、[Publish] をクリックします。
    5. [更新]、[メッセージのテスト] の順にクリックします。

アプリ内とウェブでのメッセージングをテストする

メッセンジャーをテストする手順は次のとおりです。

  1. [Test Messaging] をクリックします。
  2. 新しいタブが読み込まれたら、吹き出しをクリックして新しいテスト会話を開始します。
  3. メッセージ("Test" など)を送信します。
  4. Salesforce ブラウザのタブに移動します。
  5. [設定] ツールバーで [アプリ ランチャー] メニューをクリックし、[サービス コンソール] を選択します。
  6. ユーティリティ ツールバーの [オムニチャネル] をクリックします。
  7. ステータスを [オンライン - メッセージ] に設定します。

    着信した会話が表示されます。承認します。これにより、サービス コンソールで会話の新しいタブが開きます。チャットの文字起こしは表示されません。

  8. メニューバー > 設定メニューに移動し、[ページを編集] をクリックします。

  9. [コンポーネント] メニューから、[拡張コンバージョン] を [会話] ペインにドラッグします。

  10. [保存] > [有効にする] > [組織のデフォルトとして割り当てる] > [パソコン] > [] をクリックします。

  11. ページを更新する。

  12. ユーティリティ ツールバーの [オムニチャネル] をクリックします。

  13. ステータスを [オンライン - メッセージ] に設定します。

  14. 「Test」メッセージに返信して、メッセージが機能していることを確認します。

問題が発生して詳細な情報が必要な場合は、包括的な Salesforce Messaging のアプリ内およびウェブでの設定ガイドをご覧ください。

ステップ 5: Agent Assist LWC をインストールする

Lightning Experience エディタを使用して、エージェント アシスト LWC をメッセージ セッション ページに追加する手順は次のとおりです。手順 4 のテスト会話に進みます。

  1. メニューバー > 設定メニューに移動し、[ページを編集] をクリックします。
  2. [コンポーネント] サイドバーで、agentAssistContainerModule をサイドバーに移動します。

  3. 前の手順で配置したコンポーネントをクリックします。次のようにフォームのフィールドに入力して、構成の詳細を追加します。

    • endpoint: エージェント統合バックエンド UI コネクタの URL。たとえば、Cloud Run コンソールの URL(https://UI-CONNECTOR-ENDPOINT.GCP-REGION.run.app など)です。
    • features: 含める Agent Assist の機能。これらは会話プロファイルで有効にする必要があります。使用可能な機能には、CONVERSATION_SUMMARIZATIONKNOWLEDGE_ASSIST_V2SMART_REPLYAGENT_COACHING などがあります。
    • conversationProfile: エージェント アシスト会話プロファイルのリソース名。たとえば、projects/GCP-PROJECT-ID/locations/GCP-REGION/conversationProfiles/CONVERSATION-PROFILE-ID などです。
    • consumerKey: 手順 3 の接続されているアプリのコンシューマ キー。
    • consumerSecret: 手順 3 の接続されているアプリのコンシューマ シークレット。