Click-to-Call

Click-to-Callによりお客様のコンタクトClosed コンタクトセンターでエージェント、IVR、またはボットとやり取りする人。は、ワンクリックでライブエージェントにコールをかけることができます。 Webサイト上のボタンから、訪問者はエージェントに直接コールをかけることができます。 これは、以下の要因を削除または排除するのに役立ちます。

  • 営業チームまたはサポートチームに接続する際の余分なステップ。

  • オーバーヘッドコスト(サービス番号料金やモバイル追加料金など)。

Click-to-Callは、JavaScriptで書かれたソフトウェア開発キット(SDK)を通じて動作します。 これを設定するには、開発者と協力してSDKをウェブサイトに実装する必要があります。 また、特定の認証情報を提供できるアカウント担当者と協力する必要があります。

Click-to-Callはデスクトップブラウザーでサポートされています。

Click-to-CallSDKの詳細

SDKは、clicktocall.jsファイル1つで構成されています。 これは、Click-to-Callボタンを表示したい各Webページに含めるか、参照する必要があります。 また、 Click-to-Callボタンやコールコントロールなど、独自のUIコンポーネントを実装する必要があります。 Click-to-Callボタンを押すと、SDKのmakeCall関数が呼び出され、WebRTCの呼び出しが開始されます。 コールリクエストがCXoneによって認証されると、コールが配置されます。

統合の前提条件

開発者がClick-to-Callをサイトに統合する準備をするには、以下を完了する必要があります:

  • アカウント担当者からクライアントIDを取得してください。

  • アカウント担当者と協力して、Click-to-Callに固有の電話番号をプロビジョニングします。

  • 自分のサーバーにPOST APIを実装します。 このAPIは、認証のためにJWTトークンを生成しなければなりません。 これにより、着信コールリクエストが正当なものであることが検証されます。

  • 認証のために公開キーをアカウント担当者に提供します。

  • UIデザインを検討します。 ミュートや通話終了などのコールコントロール用のボタンなど、コールのコンタクト側の独自UIを開発する必要があります。 SDKには、開発者が参考やインスピレーションとして使用することができるサンプルのReactとAngularのコンポーネントが含まれます。 コールのエージェント側はエージェントアプリケーションで対応されるため、UI開発はコンタクト側のみに必要です。

CXoneセットアップ

WebサイトにClick-to-Call機能を追加するだけでなく、ルーティングコンポーネントがCXoneでセットアップされていることを確認する必要があります。 CXoneの管理者が必要なコンポーネントをセットアップします。

次を持っていることを確認してください:

  • それに割り当てられた必要なエージェントで作成されたインバウンド音声ACDスキル

  • 音声コール用にポイントオブコンタクト(POC)がセットアップされています。 これらは、各Click-to-Call電話番号用の電話POCでなければなりません。 お客様のサイトにClick-to-Callを実装する開発者は、JavaScriptファイル内のcontactAddress用にこれを使用する必要があります。

  • エージェントにコールをルーティングするStudioスクリプト。

CXone設定に応じて、既存のルーティングコンポーネントを使用することができるかもしれないし、新規コンポーネントを作成してセットアップする必要があるかもしれません。

SDK統合

前提条件のセクションにある必要項目が完了しているか、準備されていることを確認してください。

  1. clicktocall.jsファイルをお客様のWebページに適当に組み込んでください。

  2. clicktocall.jsファイルで、POST APIのAPIエンドポイントURLを設定します。

    let getJWT1TokenURL = '<YOUR_TOKEN_ENDPOINT_URL>';
  3. 以下のAPIエンドポイントを使用して、getJWT2TokenURL変数を更新します。 CXoneはこれを使用してJWTを検証します:

    let getJWT2TokenURL = 'https://api-na1.niceincontact.com/ClickToCall/GetJWT2Token';
  4. 以下のUIコンポーネントをWebサイトに追加してください。 各コンポーネントには必ず一意の識別子を付けてください。 SDKパッケージには、ReactとAngularのサンプルUIコンポーネントが含まれています。 これらはIntegrationHelpers/UIComponentsディレクトリにあります。

    • 音声コールを開始するボタン。

    • コールを切るまたは切断するボタン。

    • コール音声のミュート/ミュート解除ボタン。

    • DTMF入力用のキーパッドを表示するボタン。

    • キーパッドのキーを表示する<div>

    • コールの成功またはエラーのメッセージを表示するラベル。

    • 発信音やコール接続音など、特定の音を再生するための<audio>タグ。

  5. 前のステップで追加したUIコンポーネントへの参照付きでclicktocall.jsファイルを更新します。

    let clickToCallButtonId = '<YOUR_CLICK_TO_CALL_BUTTON_ID>';
    let hangUpButtonId = '<YOUR_HANG_UP_BUTTON_ID>';
    let muteAudioButtonId = '<YOUR_MUTE_AUDIO_BUTTON_ID>';
    let keypadButtonId = '<YOUR_KEYPAD_BUTTON_ID>';
    let dtmfKeyDivId = '<YOUR_DTMF_KEY_DIV_ID>';
    let callStatusMessageLabelId = '<YOUR_CALL_STATUS_MESSAGE_LABEL_ID>';
    let remoteAudioId = '<YOUR_AUDIO_CONTROL_ID>';
  6. Click-to-CallボタンにmakeCall(contactAddress)メソッドを追加します。

  7. DTMFトーンを送信するには、DTMFボタンがクリックされたときにguiSendDTMF(digit)関数を呼び出します。

  8. clicktocall.jsファイルの設定セクションで設定を行います。 これは、ある種の動作を制御するいくつかの設定変数を持つセクションです。

    • retryCountでリトライ回数を設定します。 コールが切断された場合、システムが再接続を試みる回数。 デフォルトは3です。

    • POCREnvironmentXHeaderValueの値をPRODに設定します。

    • phoneServerConfigおよびclientIdで電話サーバーの構成設定を設定します。

      let phoneServerConfig = {
      	domain: '<Domain of the SIP server>', //Set value of this configuration to 'cxonevoice.com'
      	addresses: [], //Keep this array empty
      	iceServers: [], //Keep this array empty
      	userName: '<username>', //This configuration is a human-readable string used to identify the sender in a more friendly way. In agent applications like CXone Agent, this might be displayed on the screen during a call. Tthis value should not contain any spaces and should not exceed 20 characters. 
      	displayName: '', // This is an optional field and its value can be kept the same as userName 
      	password: '' //Keep this field empty
      }
      let clientID = '<YOUR_CLIENT_ID>'; //Set the value of this configuration as provided by CXone 
  9. コールの失敗や切断に関するコンタクト側の通知をカスタマイズしたい場合は、 clicktocall.jsで以下の変数のテキスト文字列を変更してください。

    • callFailedToConnectErrorMessage

    • uiErrorMessage

    • contactSupportTeamMessage

  10. コールの開始とルーティングが正常に行えるよう、十分なテストを行ってください。