CometD によるプラットフォームイベント通知の登録
Salesforce はプラットフォームイベントを、受信した順序で CometD クライアントに順次送信します。イベント通知の順序はイベントの再生 ID に基づきます。
CometD を使用してプラットフォームイベント通知を登録するプロセスは、PushTopic または汎用イベントの登録に似ています。唯一の違いはチャネル名です。プラットフォームイベントのトピック (チャネル) 名の形式を次に示します。
API バージョンを追加した次の CometD エンドポイントを使用します。
例
「Low Ink (低インクレベル)」という名前のプラットフォームイベントがある場合、登録時に次のチャネル名を指定します。
配信されるプラットフォームイベントのメッセージは、次の[Low Ink (低インクレベル)] イベントの例に似ています。
イベントメッセージの schema 項目には、プラットフォームイベントスキーマの ID が含まれます。スキーマはバージョン管理されます。つまり、スキーマが変わると、そのスキーマ ID も変わります。
イベントのスキーマが変わったかどうかを確認するには、REST API を使用してスキーマを取得します。スキーマ ID を使用するには、REST API リソース /vXX.X/event/eventSchema/Schema_ID に対して GET 要求を実行します。または、イベント名をエンドポイント /vXX.X/sobjects/Platform_Event_Name__e/eventSchema に指定して、イベントスキーマを取得することもできます。詳細は、以下を参照してください。
EMP コネクタを使用して、配信されたイベントを受信できます。このコネクタはストリーミングイベントとプラットフォームイベントを登録します (指定されたトピック名のみ異なります)。『ストリーミング API 開発者ガイド』の「例: Java クライアントを使用した登録とイベントの再生」を参照してください。topic 引数には、/event/Low_Ink__e を指定します。トピック名の値は、イベント例の [Low Ink (低インクレベル)] に基づきます。
カスタムロジックをクライアントに追加して、プラットフォームイベント通知の受信後に何らかの操作を実行します。たとえば、このプリンタモデルの新しいカートリッジを注文するための要求をクライアントで作成できます。