メモ:   この記事は、Salesforce向けGenesys Cloudに適用されます。

拡張機能ポイントを使用して、Salesforce用Genesys Cloudのクリックからダイヤルまでの動作をカスタマイズできます。 拡張ポイントはSalesforce Apexプログラミング言語を使用します。

メモ:   この高度なカスタマイズの記事は、Salesforceに精通している開発者を対象としています。

前提条件

  • [拡張ポイント設定] セクションを含む管理パッケージのバージョン。 詳細については、以下を参照してください。 拡張ポイントを構成する.

Salesforceで、を実装するApexクラスを使用して単一のApexファイルを作成します。 purecloud.CTIExtension.ClickToDial インターフェース。 Apexクラスをグローバルとして定義し、統合でコードを呼び出します。

purecloud.CTIExtension.ClickToDialインターフェース

メソッドの署名が含まれ、Salesforce用Genesys Cloudのクリックからダイヤル機能をカスタマイズするために定義できます。

利用先

でメソッドシグネチャを使用する purecloud.CTIExtension.ClickToDial Click-to-Dial機能がどのように機能するかを定義するインターフェイス。

onClickToDialメソッド

電話またはSMSメッセージを開始します。 

SalesforceがクライアントにClick-to-dialイベントを通知すると、クライアントはApexコードのパラメータに基づいてClick-to-dialイベントを実行します。 このメソッドは、デフォルトのクリック・トゥ・ダイヤル動作を変更するデータを返すことができます。

Apexコードが例外をトリガーする場合、統合はデフォルトの画面ポップ動作を実行します。 値が返されない場合、統合は画面のポップ動作を抑制します。

入力プロパティ

以下のプロパティは、メソッドに渡されるJSONデータに含まれます。

名前 データ・タイプ 説明 メモ  
番号 文字列  統合が電話する電話番号。
オブジェクト 文字列  Salesforceの連絡先やアカウントなどのオブジェクトのタイプ。
オブジェクトID 文字列  連絡先やアカウントなど、アクティビティと自動関連付けする関連オブジェクトのID。 オブジェクトID は1つのレコード専用です。 
オブジェクト名 文字列  Salesforce内のレコードの名前。

出力プロパティ

以下のプロパティは、メソッドから返されたJSONデータでサポートされています。

名前 データ・タイプ 説明 メモ  
番号 文字列  参照 入力プロパティ 表。
オブジェクト 文字列  参照 入力プロパティ 表。
オブジェクトID 文字列  参照 入力プロパティ 表。
オブジェクト名 文字列  参照 入力プロパティ 表。
attributes オブジェクト インタラクションに追加する属性のキーと値のペア。
queueId 文字列  代理で電話をかけるキューの ID。
オートプレイス ブール型 統合は自動的に電話をかけます(真)。または、統合によって名前または番号ボックスに電話番号が入力されます(偽)。
type 文字列  相互作用のタイプ

有効な値 電話、SMS。 

「いいえ」の場合 種類 は、デフォルトでは通話に設定されています。 

callerIdName 文字列  電話の受信者に表示される名前。
発信者ID 文字列  電話の受信者に表示される電話番号
協会 配列 クライアントの[名前]ボックスまたは[関連先]ボックスに追加するSalesforceレコードのリスト。

詳細については、以下を参照してください。 ダイヤルをクリック, ダイヤルするクリックを設定する、および カスタムVisualforceページでクリックからダイヤルまでを作成

重要。  
  • Apexクラスをグローバルとして定義し、統合でコードを呼び出します。
  • 複数の拡張ポイント(またはインタフェース)を実装する場合は、それらをすべて同じApexファイルに配置します。
global class MyCTIExtensions implements purecloud.CTIExtension.ClickToDial {
    public String onClickToDial(String data) {
        // Example: Specify On Behalf of Queue, Caller ID and Name for click-to-dial.
        Map<String, Object> clickToDialData = (Map<String, Object>) JSON.deserializeUntyped(data);
        clickToDialData.put('queueId', '04a183b6-de9e-4c01-9e88-eab81799ad0d');
        clickToDialData.put('callerIdName', 'John Smith');
        clickToDialData.put('callerId', '+13175550123');
        return JSON.serialize(clickToDialData);
    }
}

詳細については、以下を参照してください。 Salesforce用Genesys Cloudの拡張ポイント.

統合の詳細については、以下を参照してください。Salesforce向けGenesys Cloudについて.