
この音声統合では、NiCE CXone Agent for Service Cloud Voice(BYOT)Salesforce アプリを使用して、エージェントが Salesforce Service Cloud Voice で NiCE CXone 通話を受けられるようにします。
Agent Assist は、NiCE CXone Agent Assist Hub からの音声通話ストリームを使用して、Salesforce Lightning Service Console でエージェントに提案を提供します。
始める前に
Agent Assist UI モジュールを Salesforce と統合するには、次のリソースへのアクセス権が必要です。
-
オペレーティング システムの推奨インストール手順に沿って操作します。
-
オペレーティング システムの推奨インストール手順に沿って操作します。
-
手順に沿って
gcloudコマンドをインストールし、gcloud auth loginを使用して認証します。 Salesforce UI
- インスタンス URL または Salesforce のログインページでログインし、次の点に注意してください。
- Salesforce の My Domain URL。私のドメイン URL を確認する手順は次のとおりです。
- メニューバー > [設定] メニューに移動します。
- [Setup] をクリックします。
- [クイック検索] ボックスに「My Domain」と入力します。ドメイン名は
MY-DOMAIN-NAME.develop.my.salesforce.comの形式です。 - Salesforce 組織 ID。組織 ID を確認する手順は次のとおりです。
- メニューバー > [設定] メニューに移動します。
- [Setup] をクリックします。
- [クイック検索] ボックスに「組織情報」と入力します。
-
- 手順に沿って統合を設定します。
- デプロイ スクリプトを実行する前に、
deploy.shを使用して、またはプロジェクト ルートの.envファイルで、次の環境変数を構成します。 AUTH_OPTION:SalesforceLWCに設定します。SALESFORCE_DOMAIN:YOUR_SUBDOMAIN.develop.lightning.force.comに類似したドメイン名。この値は、Salesforce UI の前提条件でメモしました。https://は含めないように注意してください。SALESFORCE_ORGANIZATION_ID: この値は、Salesforce UI の前提条件でメモしました。
NiCE CXone Agent Assist Hub アドオン ライセンス
NiCE CXone Agent Assist Hub アドオンを使用すると、NiCE CXone インスタンスから Google Cloud の Agent Assist に音声通話メディア ストリームを送信できます。NiCE CXone はライセンス製品です。詳しくは、NiCE CXone Agent Assist Hub のドキュメントをご覧ください。
ステップ 1: NiCE CXone Studio と NiCE CXone Agent Assist Hub を構成する
この手順では、NiCE CXone インスタンスに必要なすべての構成について説明します。
NiCE CXone Studio で通話フローを構成する
このステップでは、NiCE CXone Studio を使用してプログラムによる通話フローを構成し、着信をエージェントに転送して、通話メディア ストリームを Agent Assist に送信します。次の NiCE CXone Studio のトリガーとアクションを次の順序で設定して、このコールフローを構成します。
- NiCE CXone コンソールにログインします。
- [アプリケーション] メニュー()を開きます。
- [オムニチャネル ルーティング] > [Studio] を開きます。
- Studio ページで、新しいスクリプトを作成します。
次の NiCE CXone Studio のトリガーとアクションを使用して、このコールフローを構成します。
- 開始: このトリガーは、NiCE Point of Contact(POC)の電話番号に着信があったときに有効になります。
- Reqagent: このアクションは、指定されたスキルに呼び出しを送信します。通話を受け取るエージェントに関連付けられているスキルを選択します。
- 音楽: 保留音を再生します。
- 待機: このアクションは、別のトリガーが有効になるまでフローを一時停止します。
別のフローで、エージェントが着信に応答したときの動作を構成します。
- Onanswer: このトリガーは、スキル内のエージェントが応答したときに有効になります。
- Ziptone: NiCE CXone エージェント デスクトップ(NiCE CXone Agent for Service Cloud Voice(BYOT)ソフトフォンなど)でエージェントが電話に出ると、ビープ音が鳴ります。
- Agent Assist: このアクションは、会話を作成し、着信のメディア ストリームを Dialogflow に送信して、Agent Assist UI モジュール LWC が Salesforce で文字起こしと Agent Assist の候補(PGKA、GKA、AI コーチングなど)をレンダリングできるようにします。構成の詳細については、この統合に関するドキュメントをご覧ください。注: この手順には、事前構成された会話プロファイルが必要です。
発信通話用にエージェント アシストを構成することもできます。このインテグレーションでは、発信通話に相手が応答したときに エージェント アシスト アクションをトリガーする必要があります。具体的な実装は構成によって異なりますが、通常は、Placecall アクションを使用して通話を開始し、Agent Assist アクションを Placecall の OnAnswer ブランチに接続することで、スクリプトで実現できます。詳しくは、NiCE CXone Studio のヘルプ ドキュメントの Placecall、Onanswer、Agent Assist をご覧ください。
NiCE CXone アカウントの詳細をメモする
この手順に沿って、NiCE CXone アカウントの詳細情報を収集します。この情報は、後で Salesforce で NiCE CXone Agent for Service Cloud Voice(BYOT)を構成する際に必要になります。
- NiCE CXone コンソールで NiCE Business Unit 番号をメモします。Salesforce プロジェクト(次のステップでクローンを作成します)の
ServiceCloudVoicePlatformService.jsで、NiCE ビジネス ユニット番号を反映するようにCONFIG.niceBusNoを更新します。これにより、Agent Assist UI モジュール LWC は、NiCE CXone Agent Assist Hub が作成する conversationName を特定できます(詳細については、同じファイルのgenerateNiCEConversationNameメソッドを参照してください)。 - NiCE CXone コンソールで NiCE の連絡先(POC)の電話番号をメモします。これは、お客様がエージェントと話すために電話をかける番号であり、この Agent Assist 統合のテストに使用する番号です。
ステップ 2: Salesforce 開発プロジェクトを設定する
Agent Assist UI モジュールの統合を開始する手順は次のとおりです。
次のコードを実行して、Agent Assist 統合リポジトリのクローンを作成し、プロジェクトを開きます。
git clone https://github.com/GoogleCloudPlatform/agent-assist-integrations cd salesforce/aa-lwc
次のコマンドを実行して、UI モジュールの JavaScript ファイルをダウンロードします。このファイルは後で静的リソースとしてデプロイします。Salesforce では、静的リソースでサードパーティの JavaScript を読み込む必要があります。
npm run generate-static-resources npm install
前の手順でメモした NiCE ビジネス ユニット番号で
ServiceCloudVoicePlatformService.jsを更新します。const CONFIG = { // For this.platform = "servicecloudvoice-nice", the NiCE Business Unit Number // https://help.nicecxone.com/content/acd/businessunits/managebusinessunit.htm niceBusNo: 1234567 // Make sure this matches your NiCE CXone Business Unit Number. };
ステップ 3: Salesforce 環境を設定する
Agent Assist UI モジュールは、本番環境や開発環境などの特定の環境に統合できます。Salesforce では、これらの環境を組織(org)と呼びます。
Salesforce CLI を使用して組織を構成する
Salesforce CLI を使用して Agent Assist 統合用に組織を構成する手順は次のとおりです。
次のコードを実行し、通常使用する Salesforce のログイン情報を使用して CLI を認証します。
npm run login
次のコードを実行して、LWC を組織にデプロイします。
npm run deploy
ステップ 4: 外部クライアント アプリを作成する
Salesforce LWC は、クライアント認証情報の OAuth 2.0 フローを使用してユーザーを認証します。外部クライアント アプリは、クライアント認証情報フローを有効にします。アプリのコンシューマ キーとコンシューマ シークレットを使用して Salesforce LWC を構成し、Salesforce でユーザーを認証します。
- メニューバー > [設定] メニューに移動し、[設定] をクリックします。
- [クイック検索] ボックスに「外部クライアント アプリケーション マネージャー」と入力します。
- [External Client App Manager] > [New External Client App] > [Create] をクリックし、次の情報を入力します。
- 外部クライアント アプリ名: lwc auth
- API 名: lwc_auth
- Contact Email:
your_email@example.com - API(OAuth 設定の有効化) > OAuth の有効化: 選択済み
- [API (Enable OAuth Settings)] > [Callback URL]: https://login.salesforce.com/services/oauth2/callback
- [API (Enable OAuth Settings)] > [Selected OAuth Scopes]: ID URL サービスにアクセスする
- API(OAuth 設定の有効化)> クライアント認証情報フローを有効にする: 選択済み
- [作成] をクリックします。
- メニューバー > [設定] メニューに移動し、[設定] をクリックします。
- [クイック検索] ボックスに「外部クライアント アプリケーション マネージャー」と入力します。
- 外部クライアント アプリの名前 > [編集] をクリックします。
- [OAuth Policies] > [OAuth Flows and External Client App Enhancements] に移動します。
- [Enable Client Credentials Flow] が選択されていることを確認します。
- [Run As] に、ログイン ユーザー名を入力します。
- [保存] をクリックします。
- メニューバー > [設定] メニューに移動し、[設定] をクリックします。[クイック検索] ボックスに「外部クライアント アプリケーション マネージャー」と入力します。
- 外部クライアント アプリの名前 > [編集] をクリックします。
- [OAuth Settings] > [App Settings] > [Consumer Key and Secret] に移動します。
- メールで送信された確認コードを入力します。
- コンシューマー キーとコンシューマー シークレットを安全な場所にコピーします。これらの値は後のステップで必要になります。
CORS とコンテンツ セキュリティ ポリシーを確立する
- メニューバー > [設定] メニューに移動し、[設定] をクリックします。
- [クイック検索] ボックスに「CORS」と入力し、[編集] をクリックします。
- [OAuth エンドポイントの CORS を有効にする] を選択します。
- [保存] をクリックします。
- メニューバー > [設定] メニューに移動し、[設定] をクリックします。
- [クイック検索] ボックスに「信頼できる URL」と入力し、[新しい信頼できる URL] をクリックします。
- 次の情報を入力します。
- API 名: ui_connector
- URL: Agent Assist Integration Backend でデプロイした UI Connector Cloud Run Service エンドポイントの URL を入力します。この URL は Cloud Run コンソールで確認できます。例:
https://UI_CONNECTOR_SUBDOMAIN.GCP_REGION.run.app。 - CSP ディレクティブ: すべてのチェックボックスをオンにします。
- [Save & New] をクリックします。
- 次の情報を入力します。
- API 名: ui_connector_wss
- URL: Agent Assist 統合バックエンドでデプロイした UI コネクタ Cloud Run サービス エンドポイントの URL を入力します。この URL は Cloud Run コンソールで確認できます。WebSockets トラフィック用にプロトコルを wss に変更します。例:
wss://UI_CONNECTOR_SUBDOMAIN.GCP_REGION.run.app。 - CSP ディレクティブ: すべてのチェックボックスをオンにします。
- [Save & New] をクリックします。
- 次の情報を入力します。
- API 名: salesforce_domain
- URL:
https://YOUR_SUBDOMAIN.my.salesforce.comの形式で Salesforce ドメインの URL を入力します。 - CSP ディレクティブ: すべてのチェックボックスをオンにします。
- [保存] をクリックします。
ステップ 5: NiCE CXone Agent for Service Cloud Voice(BYOT)をインストールする
Salesforce は、サードパーティのソフトフォンを Salesforce インスタンスと統合できるアドオン ライセンス Service Cloud Voice を提供しています。NiCE CXone は、NiCE CXone Agent for Service Cloud Voice(BYOT)という Service Cloud Voice アドオンを提供しています。NiCE のドキュメントに沿って、SCV 対応の Salesforce インスタンスで NiCE CXone Agent for Service Cloud Voice(BYOT)を設定します。
ステップ 6: Salesforce Lightning Web コンポーネントをインストールする
次の手順に沿って、Lightning Experience エディタを使用して、新しい通話が着信したときに NiCE CXone Agent for Service Cloud Voice(BYOT)が開く連絡先ページに Salesforce Lightning Web コンポーネントを追加します。
- サービス コンソールに移動します。
- ユーティリティ バーで NiCE CXone Agent for Service Cloud Voice(BYOT)にログインします。
- ログインした NiCE アカウントに関連付けられている NiCE POC 番号に電話します。
- 着信に応答します。これにより、新しい [Voice Call] レコードタブが開きます。
- [設定] メニュー > [ページの編集] をクリックします。
- [テンプレート] > [変更] をクリックします。
- [ヘッダー] と [2 つの等しいリージョン] を選択します。
- [次へ] をクリックします。
- 各リージョンを新しいリージョンにマッピングします。
- [完了] をクリックします。
- [コンポーネント] サイドバーから、
agentAssistContainerModuleをサイドバーに移動します。注: このコンポーネントはnpm deployコマンドによって提供されました。 - 前の手順で配置したコンポーネントをクリックし、次の手順に沿ってフォーム フィールドに入力して構成の詳細を追加します。
- endpoint: 統合バックエンドの UI コネクタの URL。たとえば、Cloud Run コンソールの URL(
https://UI_CONNECTOR_ENDPOINT.GCP_REGION.run.appなど)。 - features: 含める Agent Assist の機能。これらは会話プロファイルで有効にする必要があります。使用可能な機能には、
CONVERSATION_SUMMARIZATION、KNOWLEDGE_ASSIST_V2、AGENT_COACHINGなどがあります。SMART_REPLYなどの一部の機能はvoiceでは使用できません。 - channel: 統合が
voiceであることを示します。 - platform: プラットフォームが
servicecloudvoice-niceであることを示します。 - conversationProfile: Agent Assist の会話プロファイルのリソース名。例:
projects/GCP_PROJECT_ID/locations/GCP_REGION/conversationProfiles/CONVERSATION_PROFILE_ID - consumerKey: 手順 4 の外部クライアント アプリのコンシューマ キー。
- consumerSecret: 手順 4 で取得した外部クライアント アプリのコンシューマ シークレット。
- endpoint: 統合バックエンドの UI コネクタの URL。たとえば、Cloud Run コンソールの URL(
ステップ 7: 統合をテストする
Salesforce コールセンターへのテスト通話で、音声統合をテストできます。
- Service Console のユーティリティ バーにあるオムニチャネル ウィジェットから、NiCE CXone Agent for Service Cloud Voice(BYOT)にログインします。
- NiCE CXone POC の番号に電話をかけます。これは NiCE CXone コンソールで確認できます。
- Service Console で着信に応答します。新しい音声通話レコードが画面に表示されます。
- 音声通話レコードのサイドバーに Salesforce Lightning Web コンポーネントが読み込まれます。
- 会話の両側をテストして、Agent Assist コンソールで会話プロファイルで構成したとおりに Agent Assist の文字起こしと機能が動作していることを確認します。