このドキュメントでは、EspoCRM を使用して Contact Center AI プラットフォーム(CCAI プラットフォーム)のカスタム CRM と統合する例について説明します。EspoCRM は、カスタマイズ可能なインターフェースで販売、マーケティング、カスタマー サポートを管理できる無料のオープンソース CRM アプリケーションです。連絡先管理、アクティビティ トラッキング、セールス オートメーション、在庫管理などの機能が用意されており、セルフホスティングまたはクラウド デプロイのオプションがあります。
EspoCRM の独自のインスタンスを設定するには、EspoCRM のインストール ページをご覧ください。
始める前に
手順は次のとおりです。
CCAI プラットフォームからのトラフィックを許可するようにファイアウォールを構成します。
EspoCRM インスタンスに API ユーザー(
google_integration_userなど)を作成します。詳細については、 EspoCRM ドキュメントの API をご覧ください。次のものにアクセスする Create、Read、および Update アクションを使用して、EspoCRM インスタンスにロールを作成します。
- Contacts: 発信者を検索または作成する
- Cases: チケットを検索して記録する
詳細については、ExpoCRM ドキュメントのロール 管理をご覧ください。
EspoCRM から CCAI プラットフォームへの接続を構成する
EspoCRM から CCAI プラットフォームへの接続を構成する手順は次のとおりです。
- CCAI プラットフォーム ポータルで、設定 > デベロッパー設定 をクリックします。[設定] メニューが表示されない場合は、メニュー をクリックします。
- [Agent Platform] で [Custom CRM] を選択します。
- [Display CRM in CCAI Platform portal Portal] 切り替えボタンをオンにします。
- [Display URL] フィールドに、
CCAI プラットフォーム ポータルに埋め込む URL(
https://YOUR_ESPO_DOMAIN/#Case/view/{RECORD_ID}など)を入力します。 - [CRM lookup method] で [Generic API] を選択します。
- カスタム ヘッダーを使用して認証するには、次の操作を行います。
- [Authentication Method] セクションで [Custom Header] を選択します。
- [フィールドを追加] をクリックします。[フィールドを追加] ダイアログが表示されます。
- [フィールド キー] フィールドに「
X-Api-Key」と入力します。 - [フィールド値] フィールドに、EspoCRM で API ユーザーを作成したときに生成された API キーを入力します。
- [保存] をクリックします。
- [フィールド キー] フィールドに「
- CRM 検索 URL を設定する手順は次のとおりです。
- [CRM lookup URL] セクションの [Record lookup URL] フィールドに、レコードを検索する URL(
https://YOUR_ESPO_DOMAIN/#Case/view/{RECORD_ID}など)を入力します。 - [Account lookup URL] フィールドに、アカウントを検索する URL(
https://YOUR_ESPO_DOMAIN/#Contact/view/{ACCOUNT_ID}など)を入力します。 - [保存] をクリックします。 ## API エンドポイントを構成する
- [CRM lookup URL] セクションの [Record lookup URL] フィールドに、レコードを検索する URL(
EspoCRM と互換性のあるエンドポイントを構成して、統合にアカウント(連絡先)とレコード(ケース)を検索するためのコンポーネントが含まれるようにします。互換性のある変数の詳細については、EspoCRM ドキュメントのAPI の概要をご覧ください。
API アカウント エンドポイントを構成する
このセクションでは、API アカウント エンドポイントを構成する方法について説明します。
クエリでアカウントを検索するエンドポイントを構成する
[クエリでアカウントを検索するエンドポイント] を構成する手順は次のとおりです。
- CCAI プラットフォームで、設定 > デベロッパー 設定 をクリックします。[設定] メニューが表示されない場合は、メニュー をクリックします。
- [CRM] ペインで、[API account] セクションに移動します。
- [Find an account by query endpoint] で [Setup] をクリックします。[Generic API Endpoint Setup] ページが表示されます。
- [URL] フィールドに、アカウントを検索する URL(
https://YOUR_ESPO_DOMAIN/api/v1/Contactなど)を入力します。 - [Method] で [GET] を選択します。
リクエスト パラメータを構成する手順は次のとおりです。
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
- [フィールドを追加] をクリックします。[フィールドを追加] ダイアログが表示されます。
- [フィールド キー] フィールドに「
where[0][attribute]」と入力します。 - [フィールド値] フィールドに「
phoneNumber」と入力します。 - [保存] をクリックします。
残りのリクエスト パラメータを構成するには、次の表の情報を使用して、上記の手順を繰り返します。最初のリクエスト パラメータはすでに作成済みです。
フィールド キー フィールド値 where[0][attribute]phoneNumberwhere[0][type]equalswhere[0][value]{PHONE_NUMBER}sortBycreatedAtascfalse
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
[Response Data Location] フィールドに「
data.list」と入力します。[保存] をクリックします。
[Back to Developer Settings] をクリックして、[Developer Settings] ページに戻ります。
ID でアカウントを検索するエンドポイントを構成する
[ID でアカウントを検索するエンドポイント] を構成する手順は次のとおりです。
- [CRM] ペインで、[API account] セクションに移動します。
- [Find an account by ID endpoint] で [Setup] をクリックします。[Generic API Endpoint Setup] ページが表示されます。
- [URL] フィールドに、アカウントを検索する URL(
https://YOUR_ESPO_DOMAIN/api/v1/Contact/{ACCOUNT_ID}など)を入力します。- [Method] で [GET] を選択します。
- [Response Data Location] を
dataに設定します。 - [保存] をクリックします。
- [Return to developer settings] をクリックして、[Developer Settings] ページに戻ります。
アカウントを作成するエンドポイントを構成する
[アカウントを作成するエンドポイント] を構成する手順は次のとおりです。
- [CRM] ペインで、[API account] セクションに移動します。
- [**Create an account endpoint**] で [**Setup**] をクリックします。[Generic API Endpoint Setup] ページが表示されます。
- [URL] フィールドに、アカウントを検索する URL(
https://YOUR_ESPO_DOMAIN/api/v1/Contactなど)を入力します。 - [Method] で [POST] を選択します。
[Request Parameters] を構成する手順は次のとおりです。
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
- [Request Parameters] で [Add field] をクリックします。[フィールドを追加] ダイアログが表示されます。
- [フィールド キー] フィールドに「
phoneNumber」と入力します。 - [フィールド値] フィールドに「
{PHONE_NUMBER}」と入力します。 - [保存] をクリックします。
残りのリクエスト パラメータを構成するには、次の表の情報を使用して、上記の手順を繰り返します。最初のリクエスト パラメータはすでに作成済みです。
パラメータキー パラメータ値 phoneNumber{PHONE_NUMBER}firstNameNew CallerlastName{CALL_ID}nameNew Caller {CALL_ID}
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
[Response data location] を
dataに設定します。[Object ID location] を
idに設定します。[保存] をクリックします。
[Return to developer settings] をクリックして、[Developer Settings] ページに戻ります。
アカウントを更新するエンドポイントを構成する
[アカウントを更新するエンドポイント] を構成する手順は次のとおりです。
- [CRM] ペインで、[API account] セクションに移動します。
- [Update an account endpoint] で [Setup] をクリックします。[Generic API Endpoint Setup] ページが表示されます。
- [URL] フィールドに、アカウントを検索する URL(
https://YOUR_ESPO_DOMAIN/api/v1/Contactなど)を入力します。 - [Method] で [PUT] を選択します。
[Request Parameters] を構成する手順は次のとおりです。
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
- [Request Parameters] で [Add field] をクリックします。[フィールドを追加] ダイアログが表示されます。
- [フィールド キー] フィールドに「
contactId」と入力します。 - [フィールド値] フィールドに「
{PHONE_NUMBER}」と入力します。 - [保存] をクリックします。
残りのリクエスト パラメータを構成するには、次の表の情報を使用して、上記の手順を繰り返します。最初のリクエスト パラメータはすでに作成済みです。
パラメータキー パラメータ値 contactId{PHONE_NUMBER}phoneNumberNew Caller
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
[Response data location] を
dataに設定します。[保存] をクリックします。
[Return to developer settings] をクリックして、[Developer Settings] ページに戻ります。
API レコード エンドポイントを構成する
このセクションでは、API レコード エンドポイントを構成する方法について説明します。
クエリでレコードを検索するエンドポイントを構成する
[クエリでレコードを検索するエンドポイント] を構成する手順は次のとおりです。
- [CRM] ペインで、[API record] セクションに移動します。
- [Find a record by query endpoint] で [Setup] をクリックします。[Generic API Endpoint Setup] ページが表示されます。
- [URL] フィールドに、アカウントを検索する URL(
https://YOUR_ESPO_DOMAIN/api/v1/Caseなど)を入力します。 - [Method] で [GET] を選択します。
[Request Parameters] を構成する手順は次のとおりです。
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
- [Request Parameters] で [Add field] をクリックします。[フィールドを追加] ダイアログが表示されます。
- [フィールド キー] フィールドに「
where[0][attribute]」と入力します。 - [フィールド値] フィールドに「
contactId」と入力します。 - [保存] をクリックします。
残りのリクエスト パラメータを構成するには、次の表の情報を使用して、上記の手順を繰り返します。最初のリクエスト パラメータはすでに作成済みです。
フィールド キー フィールド値 where[0][attribute]contactIdwhere[0][type]equalswhere[0][value]{ACCOUNT_ID}contactId{ACCOUNT_ID}sortBycreatedAtascfalse
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
[Response Data Location] フィールドに「
data.list」と入力します。[保存] をクリックします。
[Return to developer settings] をクリックして、[Developer Settings] ページに戻ります。
ID でレコードを検索するエンドポイントを構成する
SDK ベースのインタラクションでよく使用されます。これにより、特定のレコード ID を渡してインタラクションを関連付けることができます。 [**ID でレコードを検索するエンドポイント**] を構成する手順は次のとおりです。
- [CRM] ペインで、[API record] セクションに移動します。
- [Find a record by ID endpoint] で [Setup] をクリックします。[Generic API Endpoint Setup] ページが表示されます。
- [URL] フィールドに、アカウントを検索する URL(
https://YOUR_ESPO_DOMAIN/api/v1/Case/{RECORD_ID}など)を入力します。 - [Method] で [GET] を選択します。
- [Response Data Location] フィールドに「
data」と入力します。 - [保存] をクリックします。
- [Return to developer settings] をクリックして、[Developer Settings] ページに戻ります。
レコードを作成するエンドポイントを構成する
[レコードを作成するエンドポイント] を構成する手順は次のとおりです。
- [CRM] ペインで、[API record] セクションに移動します。
- [Create a record endpoint] で [Setup] をクリックします。[Generic API Endpoint Setup] ページが表示されます。
- [URL] フィールドに、アカウントを検索する URL(
https://YOUR_ESPO_DOMAIN/api/v1/Caseなど)を入力します。 - [Method] で [POST] を選択します。
[Request Parameters] を構成する手順は次のとおりです。
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
- [Request Parameters] で [Add field] をクリックします。[フィールドを追加] ダイアログが表示されます。
- [フィールド キー] フィールドに「
description」と入力します。 - [フィールド値] フィールドに「
CALL Session:{CALL_ID}」と入力します。 - [保存] をクリックします。
残りのリクエスト パラメータを構成するには、次の表の情報を使用して、上記の手順を繰り返します。最初のリクエスト パラメータはすでに作成済みです。
パラメータキー パラメータ値 descriptionCall Session: {CALL_ID}nameInbound Call from {ANI}contactId{ACCOUNT_ID}statusNewcchatId{CHAT_ID}ccallId{CALL_ID}cChannel{CHANNEL}Type{SESSION_TYPE}
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
[Response Data Location] フィールドに「
data」と入力します。[Object ID Location] フィールドに「
id」と入力します。[保存] をクリックします。
[Return to developer settings] をクリックして、[Developer Settings] ページに戻ります。
レコードを更新するエンドポイントを構成する
[レコードを更新するエンドポイント] を構成する手順は次のとおりです。
- [CRM] ペインで、[API record] セクションに移動します。
- [Update a record endpoint] で [Setup] をクリックします。[Generic API Endpoint Setup] ページが表示されます。
- [URL] フィールドに、アカウントを検索する URL(
https://YOUR_ESPO_DOMAIN/api/v1/Case/{RECORD_ID}など)を入力します。 - [Method] で [PUT] を選択します。
[Request Parameters] を構成する手順は次のとおりです。
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
- [Request Parameters] で [Add field] をクリックします。[フィールドを追加] ダイアログが表示されます。
- [フィールド キー] フィールドに「
parentId」と入力します。 - [フィールド値] フィールドに「
{RECORD_ID}」と入力します。 - [保存] をクリックします。
残りのリクエスト パラメータを構成するには、次の表の情報を使用して、上記の手順を繰り返します。最初のリクエスト パラメータはすでに作成済みです。
パラメータキー パラメータ値 parentId{RECORD_ID}parentTypeCasestatusNewdescription{TICKET_DESCRIPTION}
- 最初のリクエスト パラメータを構成する手順は次のとおりです。
[Response data location] フィールドに「
data」と入力します。[保存] をクリックします。
[Return to developer settings] をクリックして、[Developer Settings] ページに戻ります。