kintone連携設定例(コールアクション)

2024.09.11

RemoTELサーバと外部CRMとのサーバ連携を行う機能となります。

外部CRMの1つであるkintoneとの連携について、コールアクションの機能を用いて設定した場合の動作事例を紹介します。

注意事項

  • 本事例の設定を行うためには、「コールアクション連携」のオプション契約が必須です。
  • 外部連携先の基本契約ライセンスの追加・変更等が必要な場合がございます。お客様の契約状況によって異なりますので、詳しくはこちらの営業担当にお問い合わせください。
  • kintoneのAPI仕様、共通仕様、認証方法については、サイボウズ社より公開されている情報を参照ください。
    ●kintone API / ●kintone REST APIの共通仕様
  • 本マニュアルはHTML/PHP(PCRE正規表現等)/WebAPIの基礎的な技術知識がある、WEB系開発者様やCRMベンダー様を対象にしております。

1. 事前準備

kintoneとの連携前にkintoneアプリのカスタマイズを行います。

本マニュアル内での設定例となりますので、既に顧客管理アプリ・問い合わせ管理など、連携したいアプリをインストール済みのお客様については、設定不要です。

※本事例では、kintoneの「顧客管理(顧客サポートパック)」を用いた事例紹介となります。

1.1 Kintone アプリパックの追加

  1. kintone TOP画面より、アプリ内の「 + 」をクリックします。
  2. おすすめのアプリから「顧客サポートパック」を追加する為、「このアプリパックを追加」をクリックします。
  3. 「このアプリパックを追加しますか?」と表示されますので、「追加」をクリックします。
  4. TOP画面にて「アプリが追加されました!」と表示されたら追加完了です。

各アプリのID確認は、TOP画面より「アプリ管理」を参照する事で確認可能です。

1.2 Kintone OAuth設定

KintoneでOAuth認証を用いて連携する場合は、「4.1 Kintone OAuthクライアント設定方法」を参照ください。

2. コールアクション設定例①

本項では、以下の事例を元にkintoneのAPIトークン認証方法を用いたコールアクションの設定事例をいくつか紹介します。

APIトークン認証方法では、アプリ毎にAPIトークンを発行する必要があります。

※APIトークン認証とはkintoneのWebAPIが用意している認証方式の一つとなります。
※連携対象アプリのAPIトークンの取得方法はサイボウズ社が公開しているページを参照ください。

●kintone REST APIの共通仕様

●APIトークンを生成する

着信時に顧客レコードの登録、着信切断時に履歴を記録する

※本連携で利用する顧客管理アプリのIDは「 7 」として設定したものです。

イメージ図

例1)着信時に電話番号が一致する顧客レコードの登録確認をする

着信時に顧客発信電話番号を条件とし、kintoneの顧客管理アプリを検索し、電話番号の登録があるかを検索する。

 

項目 説明
基本情報
イベント種別 着信
実行順
API実行種別
判定用コード なし
判定用パターン なし
API実行パターン
API連携種別 マニュアル
URL https://お客様kintone環境URL/k/v1/records.json

XXXXXXXX.cybozu.comの部分を入力ください。
メソッド GET
リクエストヘッダ X-Cybozu-API-Token:取得したAPIトークン
Content-Type:application/json
リクエストボディ {
“app”: 7,
“query”: “電話番号 = {TEL}”,
“fields”: [
“record_no”
],
“totalCount”: “true”
}※連携するアプリのIDをご入力ください。
タイムアウト判定 10 ※任意
変数抽出パターン /(“value”:”(?P<ID>[0-9]+)”}}],)*”totalCount”:”(?P<COUNT>[0-9]+)”/
メモ ご自由に入力ください。

例2)着信時に顧客レコードの新規登録を行う

着信時に顧客発信電話番号がkintoneの顧客管理アプリに登録がない場合、新規レコードとして電話番号を登録する。

 

項目 説明
基本情報
イベント種別 着信
実行順
API実行種別
判定用コード {RESPONSE_COUNT}
判定用パターン /^0$/
API実行パターン
API連携種別 マニュアル
URL https://お客様kintone環境URL/k/v1/record.json

XXXXXXXX.cybozu.comの部分を入力ください。
メソッド POST
リクエストヘッダ X-Cybozu-API-Token:取得したAPIトークン
Content-Type:application/json
リクエストボディ {
“app”: 7,
“record”:{
“電話番号”:{
“value”:”{TEL}”
}
}
}※連携するアプリのIDをご入力ください。
タイムアウト判定 10 ※任意
変数抽出パターン /”id”:”(?P<ID>[0-9]+)”,/
メモ ご自由に入力ください。

本コールアクションが実行されると、以下図のように電話番号のみが登録されたレコードが作成されます。

例3)通話切断時に通話録音URLコメントの投稿を行う

着信切断時、顧客発信電話番号がkintoneの顧客管理アプリに登録がある場合、該当レコードに録音URLが記載されたコメントを投稿する。

 

項目 説明
基本情報
イベント種別 着信切断
実行順
API実行種別
判定用コード {ISANSWERED}
判定用パターン /^1$/
API実行パターン
API連携種別 マニュアル
URL https://お客様kintone環境URL/k/v1/records.json

※「XXXXXXXX.cybozu.comの部分を入力ください。
メソッド POST
リクエストヘッダ X-Cybozu-API-Token:取得したAPIトークン
Content-Type:application/json
リクエストボディ {
“app”: 7,
“record”: “{RESPONSE_ID}”,
“comment”: {
“text”: “通話がありました。お客様RemoTELサーバ名:8000/monitor_link/{ID}”
}
}※連携するアプリのIDを入力ください。
※sXXXXXXXXXXXX.u.biztel.jpの部分をご入力ください。
タイムアウト判定 10 ※任意
変数抽出パターン なし
メモ ご自由に入力ください。

本コールアクションが実行されると、以下図のように顧客リストに録音URLが記載されたコメントが投稿され、クリックする事で再生が可能です。

例4)着信に応答できなかった場合、不応答コメントの投稿を行う

着信切断時(顧客からの着信に応答できなかった場合)、kintoneの顧客管理アプリ上の該当レコードに応答できなかった旨のコメントを投稿する。

 

項目 説明
基本情報
イベント種別 着信切断
実行順
API実行種別
判定用コード {ISANSWERED}
判定用パターン /^0$/
API実行パターン
API連携種別 マニュアル
URL https://お客様kintone環境URL/k/v1/records.json

※「XXXXXXXX.cybozu.comの部分を入力ください。
メソッド POST
リクエストヘッダ X-Cybozu-API-Token:取得したAPIトークン
Content-Type:application/json
リクエストボディ {
“app”: “7“,
“record”: “{RESPONSE_ID}”,
“comment”: {
“text”: “着信がありましたが、応答できませんでした”
}
}※連携するアプリのIDをご入力ください。
タイムアウト判定 10 ※任意
変数抽出パターン なし
メモ ご自由に入力ください。

本コールアクションが実行されると、以下図のように顧客リストに着信に応答できなかった旨のコメントが投稿されます。

3. コールアクション設定例②

本項では、以下の事例を元にkintoneのパスワード認証方法を用いたコールアクションの設定事例をいくつか紹介します。

パスワード認証方法では、リクエストヘッダに「X-Cybozu-Authorization」を追加し、
「ログイン名:パスワード」をBASE64エンコードしたものを値に指定します。
BASE64エンコードについては、お客様にて変換をお願い致します。

※パスワード認証とはkintoneのWebAPIが用意している認証方式の一つとなります。

※パスワード認証時のリクエストヘッダ等の詳細はサイボウズ社が公開しているページを参照ください。

●kintone REST APIの共通仕様

着信応答時に問い合わせ履歴を作成し、着信切断時に応答履歴を記録する

※本連携で利用する問い合わせ管理アプリのIDは「 7 」、顧客管理アプリのIDは「 8 」として設定したものです。

● イメージ図

例1)コールセンターへの着信応答時、発信元電話番号から会社名を検索する

コールセンターへの着信応答時、顧客発信電話番号を条件とし、kintoneの顧客管理アプリに登録されているかを検索する

※設定例
※各項目の詳細
項目 説明
基本情報
イベント種別 コールセンター応答
実行順
API実行種別
判定用コード なし
判定用パターン なし
API実行パターン
API連携種別 マニュアル
URL https://お客様kintone環境URL/k/v1/records.json

XXXXXXXX.cybozu.comの部分を入力ください。
メソッド GET
リクエストヘッダ X-Cybozu-Authorization:base64エンコードしたトークン
Content-Type:application/json
リクエストボディ {
“app”:8,
“query”:”電話番号={TEL}”,
“fields”:[“会社名”],
“totalCount”:”true”
}※連携するアプリのIDをご入力ください。
タイムアウト判定 10 ※任意
変数抽出パターン /(“value”:”(?P<COMPANY_NAME>.*)”}}],)*”totalCount”:”(?P<COUNT>[0-9]+)”/
メモ ご自由に記入ください。

例2)コールセンター応答時、問い合わせ履歴を作成する

コールセンターへの着信応答時、kintoneの顧客管理アプリに発信元電話番号の登録がある場合、問合せ管理アプリに問合せ履歴を作成します。

※各項目の詳細
項目 説明
基本情報
イベント種別 コールセンター応答
実行順
API実行種別
判定用コード {RESPONSE_COUNT}
判定用パターン /^1$/
API実行パターン
API連携種別 マニュアル
URL https://お客様kintone環境URL/k/v1/record.json

XXXXXXXX.cybozu.comの部分を入力ください。
メソッド POST
リクエストヘッダ X-Cybozu-Authorization:base64エンコードしたトークン
Content-Type:application/json
リクエストボディ {
“app”: 7
}※連携するアプリのIDをご入力ください。
タイムアウト判定 10 ※任意
変数抽出パターン /{“id”:”(?P<RECORD_ID>[0-9]*)”,/
メモ ご自由に入力ください。
※画面例

本コールアクションが実行されると、以下図のように顧客情報が紐付いていない問い合わせ履歴が作成されます。

例3)コールセンター応答時、問い合わせ履歴に顧客レコードを紐付ける

※問い合わせ履歴が作成された結果の電話番号登録がある場合の動作です。

以下のコールアクションを設定すると、問い合わせ履歴に会社名を紐付けます。

※設定例
※各項目の詳細
項目 説明
基本情報
イベント種別 コールセンター応答
実行順
API実行種別
判定用コード {RESPONSE_COUNT}
判定用パターン /^1$/
API実行パターン
API連携種別 マニュアル
URL https://お客様kintone環境URL/k/v1/record.json

XXXXXXXX.cybozu.comの部分を入力ください。
メソッド PUT
リクエストヘッダ X-Cybozu-Authorization:base64エンコードしたトークン
Content-Type:application/json
リクエストボディ {
“app”: 7,
“id”: “{RESPONSE_ID}”,
“record”: {
“ルックアップ”:{
“value”: “{RESPONSE_COMPANY_NAME}”
}
}
}※連携するアプリのIDをご入力ください。
タイムアウト判定 10 ※任意
変数抽出パターン なし
メモ ご自由に入力ください。
※画面例

本コールアクションが実行されると、以下図のように作成された問い合わせ履歴に顧客レコードが紐付けされます。

例4)コールセンター応答時、顧客レコードの新規登録を行う

※問い合わせ履歴の結果、電話番号登録がない場合の動作です。

以下のコールアクションを設定すると、コールセンター応答時にkintone上に発信元電話番号の登録がない場合、顧客管理アプリ上にレコードを新規登録します。

※設定例
※各項目の詳細
項目 説明
基本情報
イベント種別 コールセンター応答
実行順
API実行種別
判定用コード {RESPONSE_COUNT}
判定用パターン /^0$/
API実行パターン
API連携種別 マニュアル
URL https://お客様kintone環境URL/k/v1/record.json

※「XXXXXXXX.cybozu.comの部分を入力ください。
メソッド POST
リクエストヘッダ X-Cybozu-Authorization:base64エンコードしたトークン
Content-Type:application/json
リクエストボディ {
“app”: 8,
“record”:{
“電話番号”:{
“value”:”{TEL}”
}
}
}※連携するアプリのIDをご入力ください。
タイムアウト判定 10 ※任意
変数抽出パターン /”id”:”(?P<ID>[0-9]+)”,/
メモ ご自由に入力ください。
※画面例

本コールアクションが実行されると、以下図のように電話番号のみが登録されたレコードが作成されます。

例5) コールセンター切断時、問い合わせ履歴に録音URLのリンクを作成する

※問い合わせの結果の電話番号登録がある場合の動作です。

以下のコールアクションを設定すると、コールセンター切断時に該当する問い合わせ履歴内のリンクに
録音URLを作成します。

※設定例
※各項目の詳細
項目 説明
基本情報
イベント種別 コールセンター切断
実行順
API実行種別
判定用コード {RESPONSE_COUNT}
判定用パターン /^1$/
API実行パターン
API連携種別 マニュアル
URL https://お客様kintone環境URL/k/v1/record.json

XXXXXXXX.cybozu.comの部分を入力ください。
メソッド PUT
リクエストヘッダ X-Cybozu-Authorization:base64エンコードしたトークン
Content-Type:application/json
リクエストボディ {
“app”: 7,
“id”:{RESPONSE_RECORD_ID},
“record”:{
‘”リンク”:{
“value”: “https://お客様RemoTELサーバ名:8000/monitor_link/{ID}”
}
}
}※連携するアプリのIDをご入力ください。
※sXXXXXXXXXXXX.u.biztel.jpの部分をご入力ください。
タイムアウト判定 10 ※任意
変数抽出パターン なし
メモ ご自由に入力ください。
※画面例

本コールアクションが実行されると、作成された問い合わせ履歴に録音URLのリンクが追加されます。

例6)コールセンター切断時、顧客管理アプリに録音URLコメントを投稿する

※電話番号登録がない場合の動作です。

※設定例

 

※各項目の詳細
項目 説明
基本情報
イベント種別 コールセンター切断
実行順
API実行種別
判定用コード {RESPONSE_COUNT}
判定用パターン /^0$/
API実行パターン
API連携種別 マニュアル
URL https://お客様kintone環境URL/k/v1/record.json

※「XXXXXXXX.cybozu.comの部分を入力ください。
メソッド POST
リクエストヘッダ X-Cybozu-Authorization:base64エンコードしたトークン
Content-Type:application/json
リクエストボディ {
“app”: 8,
“record”: “{RESPONSE_ID}”,
“comment”: {
“text”: “通話がありました。https://お客様RemoTELサーバ名:8000/monitor_link/{ID}”
}
}※連携するアプリのIDをご入力ください。
※sXXXXXXXXXXXX.u.biztel.jpの部分をご入力ください。
タイムアウト判定 10 ※任意
変数抽出パターン なし
メモ ご自由に入力ください。

 

※画面例

本コールアクションが実行されると、以下図のように顧客管理アプリ内の該当顧客リストに着信に応答できなかった旨のコメントが投稿されます。

4. OAuth認証を利用する場合

API連携時にOAuth認証を用いる場合の、OAuth設定方法を紹介します。

4.1 Kintone OAuthクライアント設定方法

  1. Kintoneへログイン後、「設定」>「cybozu.com共通管理」をクリックします。
  2. 「外部連携」>「OAuthクライアントの追加」をクリックします。
  3. 「クライアントID」「リダイレクトエンドポイント」を入力し、「保存」をクリックします。

    クライアント名 任意
    リダイレクトエンドポイント https://お客様RemoTELサーバホスト名/oauth_client/callback
    ※https://s2XXXXXXXXXXX.u.biztel.jp:8000の赤字部分を入力ください。
  4. 作成されたOAuthアカウントの右側「連携利用ユーザの設定」をクリックします。
  5. OAuth認証を利用するユーザにチェックを入れ、「保存」をクリックします。
  6. 作成されたOAuthアカウントの右側「編集」をクリックします。
  7. 「クライアントID」「クライアントシークレット」はRemoTELOAuthアカウント設定にて使用しますので、コピーしてください。

4.2 RemoTEL OAuthアカウント設定

API連携時にOAuth認証方法を用いる場合は、

RemoTEL OAuthアカウント設定については「OAuthアカウントの設定」を参照ください。