Amazon EventBridgeで Salesforce からイベントを受信する - Amazon EventBridge

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon EventBridgeで Salesforce からイベントを受信する

Amazon EventBridge を使用して、次の方法で Salesforce からイベントを受信できます。

  • Salesforce's のイベントバスリレー機能を使用して、EventBridge パートナーイベントバスでイベントを直接受信する。

  • データソースとして Salesforce を使用する Amazon AppFlow でフローを設定する。そうすると、Amazon AppFlow はパートナーイベントバスを使用して Salesforce イベントを EventBridge に送信します。

API 送信先を使用して Salesforce にイベント情報を送信できます。イベントは、Salesforce に送信されると、フローまたは Apex トリガーで処理できます。Salesforce API 送信先のセットアップの詳細については、「チュートリアル: Amazon EventBridge から Salesforce にイベントを送信する」を参照してください。

イベントバスリレーを使用して Salesforce からイベントを受信する

ステップ 1: Salesforce イベントバスリレーと EventBridge パートナーイベントソースをセットアップする

Salesforce でイベントリレー設定を作成する場合、Salesforce は、EventBridge で保留状態でパートナーイベントソースを作成します。

ステップ 2: EventBridge コンソールで Salesforce パートナーイベントソースを有効化し、イベントリレーを開始する

  1. EventBridge コンソールで、[Partner event sources] (パートナーイベントソース) ページを開きます。

  2. ステップ 1 で作成した Salesforce パートナーイベントソースを選択します。

  3. [Associate with event bus] (イベントバスと関連付ける) を選択します。

  4. パートナーイベントバスの名前を検証します。

  5. [Associate] (関連付ける) を選択します。

  6. イベントリレーを開始します

イベントバスリレーをセットアップして開始し、パートナーイベントソースを設定したため、イベントに反応する EventBridge ルールを作成して、データをフィルタリングしてターゲットに送信できます。

Amazon AppFlow を使用して Salesforce からイベントを受信する

Amazon AppFlow は、Salesforce からのイベントを EventBridge イベントエンベロープでカプセル化します。以下の例は、EventBridge パートナーイベントバスによって受信される Salesforce イベントを示しています。

{ "version": "0", "id": "5c42b99e-e005-43b3-c744-07990c50d2cc", "detail-type": "AccountChangeEvent", "source": "aws.partner/appflow.test/salesforce.com/364228160620/CustomSF-Source-Final", "account": "000000000", "time": "2020-08-20T18:25:51Z", "region": "us-west-2", "resources": [], "detail": { "ChangeEventHeader": { "commitNumber": 248197218874, "commitUser": "0056g000003XW7AAAW", "sequenceNumber": 1, "entityName": "Account", "changeType": "UPDATE", "changedFields": [ "LastModifiedDate", "Region__c" ], "changeOrigin": "com/salesforce/api/soap/49.0;client=SfdcInternalAPI/", "transactionKey": "000035af-b239-0581-9f14-461e4187de11", "commitTimestamp": 1597947935000, "recordIds": [ "0016g00000MLhLeAAL" ] }, "LastModifiedDate": "2020-08-20T18:25:35.000Z", "Region__c": "America" } }

ステップ 1: Salesforce をパートナーイベントソースとして使用するように Amazon AppFlow を設定する

EventBridge にイベントを送信するには、まず Salesforce をパートナーイベントソースとして使用するように Amazon AppFlow を設定する必要があります。

  1. Amazon AppFlow コンソールで、[Create flow] (フローの作成) を選択します。

  2. [Flow details] (フローの詳細) セクションで、[Flow name] (フロー名) にフローの名前を入力します。

  3. (オプション) フローの説明を入力して、[Next] (次へ) を選択します。

  4. [Source details] (ソースの詳細) で [Source name] ドロップダウンから Salesforce を選択し、[Connect] (接続) を選択して新しい接続を作成します。

  5. [Connect to Salesforce] ( への接続) ダイアログボックスで、Salesforce 環境として [Production] (本番稼働用) または [Sandbox] (サンドボックス) を選択します。

  6. [Connection name] (接続名) フィールドに接続の一意の名前を入力し、[Continue] (続行) を選択します。

  7. [Salesforce] ダイアログボックスで、以下の操作を実行します。

    1. Salesforce サインイン認証情報を入力して、Salesforce にログインします。

    2. Amazon AppFlow が処理するデータの種類として、Salesforce イベントを選択します。

  8. [Choose Salesforce event]( イベントの選択) ドロップダウンで、EventBridge に送信するイベントのタイプを選択します。

  9. 送信先として [Amazon EventBridge] を選択します。

  10. [Create new partner event source] (パートナーイベントソースの作成) を選択します。

  11. (オプション) パートナーイベントソースの一意のサフィックスを指定します。

  12. [Generate partner event source] (パートナーイベントソースの生成) を選択します。

  13. 256 KB を超えるイベントペイロードファイルを保存する Amazon S3 バケットを選択します。

  14. [Flow trigger] (フロートリガー) セクションで、[Run flow on event] (イベントでフローを実行) が選択されていることを確認します。この設定により、新しい Salesforce イベントが発生するとフローが実行されるようになります。

  15. [Next] を選択します。

  16. フィールドマッピングとして、[Map all fields directly] (すべてのフィールドを直接マッピング) を選択します。あるいは、[Source field name] (ソースフィールド名) リストから対象となるフィールドを選択することもできます。

    フィールドマッピングの詳細については、「データフィールドのマッピング」を参照してください。

  17. [Next] を選択します。

  18. (オプション) Amazon AppFlow でデータフィールドのフィルターを設定します。

  19. [Next] を選択します。

  20. 設定を確認し、[Create] (作成) を選択します。

フローが設定されると、Amazon AppFlow はアカウントのパートナーイベントバスに関連付ける必要がある新しいパートナーイベントソースを作成します。

ステップ 2: Salesforce イベントを受信する EventBridge を設定する

このセクションの指示に従う前に、EventBridge を送信先として Salesforce イベントからトリガーされる Amazon AppFlow フローが設定されていることを確認してください。

Salesforce イベントを受信する EventBridge を設定するには
  1. EventBridge コンソールで、[Partner event sources] (パートナーイベントソース) ページを開きます。

  2. ステップ 1 で作成した Salesforce パートナーイベントソースを選択します。

  3. [Associate with event bus] (イベントバスと関連付ける) を選択します。

  4. パートナーイベントバスの名前を検証します。

  5. [Associate] (関連付ける) を選択します。

  6. Amazon AppFlow コンソールで、作成したフローを開き、[Activate flow] (フローのアクティブ化) を選択します。

  7. Eventbridge コンソールで [Rules] (ルール) ページを開きます。

  8. [‬Create rule‭‬] を選択します。

  9. ルールの一意の名前を入力します。

  10. [Define pattern] (パターンの定義) セクションで [Event pattern] (イベントパターン) を選択します。

  11. [Event matching pattern] (イベント照合パターン) で、[Pre-defined pattern by service] (サービスごとの事前定義パターン) を選択します。

  12. [Service provider section] (サービスプロバイダー) で [All Events] (すべてのイベント) を選択します。

  13. [Select event bus] (イベントバスの選択) で [Custom or partner event bus] (カスタムまたはパートナーイベントバス) を選択します。

  14. Amazon AppFlow パートナーイベントソースに関連付けたイベントバスを選択します。

  15. [Select targets] (ターゲットの選択) で、ルールの実行時に動作する AWS サービスを選択します。1 つのルールに、最大 5 つのターゲットを設定できます。

  16. [Create] (作成) を選択します。

ターゲットサービスは、アカウントに設定されたすべての Salesforce イベントを受信します。イベントをフィルタリングする、または一部のイベントを別のターゲットに送信するには、イベントパターンによるコンテンツベースのフィルタリングを使用できます。

注記

イベントが 256 KB を超える場合、Amazon AppFlow は完全なイベントを EventBridge に送信しません。かわりに Amazon AppFlow は、イベントをお客様のアカウントの S3 バケットに配置し、Amazon S3 バケットへのポインタを持つイベントを EventBridge に送信します。このポインタを使用して、バケットから完全なイベントを取得することができます。