SDKを使用してSalesforce Eメールをルーティングする

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

SalesforceでSalesforceの電子メールのルーティングを設定した後、管理パッケージのSDKを使用して、SalesforceのGenesys Cloudを介してSalesforceの電子メールをルーティングします。SDKはSalesforce Apexプログラミング言語を使用しています。

注意:この記事は、Salesforceに精通している開発者を対象とした高度なカスタマイズのトピックです。

前提条件

  • 認証 構成されています。

当社のSDKにアクセスするには、 purecloud.SDK.Email および purecloud.Email(purecloud.Email 名前空間。_を使用 purecloud.Email(purecloud.Email 名前空間を使用して、サブジェクト、fromName、および fromAddress の情報を設定します。

メールクラス

SalesforceのGenesys Cloudを通じてSalesforceの電子メールをルーティングする静的な方法が含まれています。

名前空間

purecloud.SDK.Email

使用法

これらの方法を使用して、Salesforce用のGenesys Cloudを介してSalesforceの電子メールをルーティングするGenesys Cloud電子メールオブジェクトを作成します。これらのオブジェクトには、スクリーンポップを設定したり、 インタラクション詳細を変更したり、 Salesforceアクティビティレコードにデータを追加したりするためのデータを含めることができます。

メール方法

電子メールクラスでは、次の方法を使用できます。

メールのやり取りを指定されたキューにルーティングし、指定されたSalesforceページを画面にポップします。

パラメーター

データ・タイプ 説明 メモ
キュー 文字列 Salesforceの電子メールをルーティングするGenesys Cloud組織のキュー。 中Call.QueueNameにマップインタラクションの詳細。
sfUrlPopValue 文字列 インタラクションアラートが発生すると、スクリーンするSalesforceページのURLの値がポップアップします。

次の例は、これらのアクションを実行する方法を示しています。

  • Salesforceメールを指定されたキューにルーティングします。
  • 指定したSalesforceページをスクリーンポップします。

Apexコードを使用したインタラクション詳細

purecloud.SDK.Email.create('CustomerService', '500360000015OCJ');

指定したキュー内のエージェントにSalesforceメールをルーティングします。このエージェントはGenesys Cloud組織で指定したスキルと言語が割り当てられ、属性パラメータを使用してアクションを実行します。

パラメーター

データ・タイプ 説明 メモ
キュー 文字列 Salesforceの電子メールをルーティングする統合を希望するGenesys Cloud組織のキュー。 中Call.QueueNameにマップインタラクションの詳細。
スキル リスト<String> Genesys Cloud組織のスキルのリスト。 Salesforceの電子メールを受信するエージェントに関連付けられています。
言語 文字列 Genesys Cloud組織の言語スキル。 Salesforceの電子メールを受信するエージェントに関連付けられています。
属性 地図<String, Object> 参照 属性マップ.

属性マップ

Salesforceページまたは検索結果、またはSalesforceのインタラクション詳細またはアクティビティレコードに追加するデータを含む属性のマップ。

パラメーター

キー タイプ 必須またはオプション 説明 メモ
SF_URLPop 文字列 オプショナル インタラクションがアラートをスクリーンポップアップときにスクリーンポップアップするSalesforceページのID SF_URLPopまたはSF_SearchValueのいずれかを使用してください。両方は使用できません。スクリーンポップの処理を高速化するには、SF_URLPopを使用します。
SF_SearchValue 文字列 オプショナル インタラクションがアラートをスクリーンポップアップときに検索たいSalesforce 検索結果のID SF_URLPopまたはSF_SearchValueのいずれかを使用してください。両方は使用できません。スクリーンポップの処理を高速化するには、SF_URLPopを使用します。
{カスタム属性 } 文字列、整数、ブール値 オプショナル インタラクションアラート時にインタラクションの詳細またはアクティビティレコードに追加するデータ。

次の例は、これらのアクションを実行する方法を示しています。

  • Salesforceメールを、指定されたスキルと言語が割り当てられた指定されたキュー内のエージェントにルーティングします。
  • 指定したSalesforceページをスクリーンポップします。
  • インタラクションの詳細にケース番号を追加します。
  • Salesforceアクティビティレコードにリモートメールアドレスを追加します。

注意:CaseNumberとcontactEmailAddressはカスタム属性なので、まず参加者を追加する必要があります。[CustomFieldName}]をクリックして、[クライアント設定]の[インタラクション詳細のカスタマイズ]および[アクティビティフィールドマッピング]セクションクライアント設定の詳細については、 管理パッケージ設定

Apexコードを使用したインタラクション詳細

String[] skills = new List<String>();
skills.add('Warranties');
skills.add('Cellphone repair');

String language = 'English - Spoken';

Map<String, Object> attributes = new Map<String, Object>();
attributes.put('SF_URLPop', '500360000015OCJ');
attributes.put('CaseNumber', 'Case: 000149');
attributes.put('contactEmailAddress', 'john.smith@customer.com');

purecloud.SDK.Email.create('CustomerService', skills, language, attributes);

インスタンス化 purecloud.Email(purecloud.Email オブジェクト。以下を参照してください。 purecloud.Email(purecloud.Email タブ。

メールクラス

Genesys CloudのEメールインタラクションを表します。Salesforceの電子メールをGenesys Cloud for Salesforceにルーティングする方法が含まれています。

名前空間

purecloud.Email

使用法

これらの方法を使用して、Genesys Cloud電子メールオブジェクトを作成します。これらのオブジェクトには、スクリーンポップを設定したり、 インタラクション詳細を変更したり、 Salesforceアクティビティレコードにデータを追加したりするためのデータを含めることができます。これらのオブジェクトは、件名、fromName、およびfromAddressの情報も設定できます。

メール方法

電子メールクラスでは、次の方法を使用できます。

定義されたインスタンス属性とGenesys Cloudの相互作用を作成します。

プロパティ

データ・タイプ 説明 メモ
キュー 文字列 Salesforceの電子メールをルーティングする統合を希望するGenesys Cloud組織のキュー。 中Call.QueueNameにマップインタラクションの詳細。
スキル リスト<String> Genesys Cloud組織のスキルのリスト。 Salesforceの電子メールを受信するエージェントに関連付けられています。
言語 文字列 Genesys Cloud組織の言語スキル。 Salesforceの電子メールを受信するエージェントに関連付けられています。
属性 地図<String, Object> 参照 属性マップ.
件名 文字列 アクティブなインタラクションのメール件名。 インタラクションアラートのときにインタラクション詳細に追加されます。インタラクションの詳細でEmail.Subjectにマップします。
名前から 文字列 アクティブなインタラクションのリモート名。 インタラクションアラートのときにインタラクション詳細に追加されます。へのマップ Call.RemoteName インタラクションの詳細。
fromAddress 文字列 アクティブなインタラクションのリモート電子メール アドレス。 インタラクションアラートのときにインタラクション詳細に追加されます。インタラクションの詳細でSalesforce.DisplayAddressにマップします。

属性マップ

Salesforceページまたは検索結果、またはSalesforceのインタラクション詳細またはアクティビティレコードに追加するデータを含む属性のマップ。

パラメーター

キー タイプ 必須またはオプション 説明 メモ
SF_URLPop 文字列 オプショナル インタラクションアラートが発生すると、スクリーンするSalesforceページのIDがポップアップします。 SF_URLPopまたはSF_SearchValueのいずれかを使用してください。両方は使用できません。スクリーンポップの処理を高速化するには、SF_URLPopを使用します。
SF_SearchValue 文字列 オプショナル インタラクションアラートが発生すると、スクリーンするSalesforce検索結果のIDがポップアップします。 SF_URLPopまたはSF_SearchValueのいずれかを使用してください。両方は使用できません。スクリーンポップの処理を高速化するには、SF_URLPopを使用します。
{カスタム属性 } 文字列、整数、ブール値 オプショナル インタラクションアラート時にインタラクションの詳細またはアクティビティレコードに追加するデータ

次の例は、メール オブジェクトを作成し、プロパティを使用してこれらのアクションを実行する方法を示しています。

  • ルートSalesforceスキルや言語、またはルートに割り当てられている指定されたキュー内のエージェントへの電子メールSalesforce使用してエージェントに電子メールをArchitect割り当てスキルと言語のインバウンド電子メールの流れを。
  • 指定したSalesforceページをスクリーンポップします。
  • インタラクションの詳細にケース番号を追加します。
  • Salesforceアクティビティレコードにリモートメールアドレスを追加します。
  • 件名、FROMNAMEを追加し、FROMADDRESSプロパティインタラクションの詳細。

注意:CaseNumberとcontactEmailAddressはカスタム属性なので、まず参加者を追加する必要があります。[CustomFieldName}]をクリックして、[クライアント設定]の[インタラクション詳細のカスタマイズ]および[アクティビティフィールドマッピング]セクションクライアント設定の詳細については、 管理パッケージ設定

Apexコードを使用したインタラクション詳細

キューを使用してSalesforceメールをルーティングする例

String[] skills = new List<String>();
skills.add('Warranties');
skills.add('Cellphone repair');

Map<String, Object> attributes = new Map<String, Object>();
attributes.put('SF_URLPop', '500360000015OCJ');
attributes.put('CaseNumber', 'Case: 000149');
attributes.put('contactEmailAddress', 'john.smith@customer.com');

purecloud.Email email = purecloud.SDK.Email.create();
email.queue = 'CustomerService';
email.skills = skills;
email.language = 'English - Spoken';
email.attributes = attributes;
email.subject = 'Warranty Question'; 
email.fromName = 'John Smith'; 
email.fromAddress = 'john.smith@customer.com'; 
email.create();

受信メールフローを使用してSalesforceメールをルーティングする例

Map<String, Object> attributes = new Map<String, Object>();
attributes.put('SF_URLPop', '500360000015OCJ');
attributes.put('CaseNumber', 'Case: 000149');
attributes.put('contactEmailAddress', 'john.smith@customer.com');

purecloud.Email email = purecloud.SDK.Email.create();
email.flow = 'RouteEmails';
email.attributes = attributes;
email.subject = 'Warranty Question'; 
email.fromName = 'John Smith'; 
email.fromAddress = 'john.smith@customer.com'; 
email.create();

詳細については、 Salesforceメールのルーティングを構成するプロセスビルダーを使用してSalesforceメールをルーティングする、そして Salesforceメールのルーティングについて

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