出典:https://www.slideshare.net/DeveloperForceJapan/platform-events-82492862
こんにちは、管理人の@Salesforce.Zです。
プラットフォームイベントって便利な機能だ。Salesforceのプラットフォームイベントとは何かはこちらへ
ある程度分かった前提での記事になる。
今回、プラットフォームイベントを公開したが、Salesforce内部で、購読したい。そして、購読はSalesforceの外部にあるDataSpiderによって購読することになる。
★ プラットフォームイベントの公開と購読をDataSpider(Salesforce外部)によってのやり方
目次
プラットフォームイベント
メッセージの公開と購読の方法はそれぞれ、下記の画像通り
出典:https://www.slideshare.net/DeveloperForceJapan/platform-events-82492862
今回、テラス会社の製品であるDataSpiderを使い、メッセージの公開と購読をやる。
プラットフォームイベント公開(Publisher)➜Pub
プラットフォームイベントはsObjectとほぼ同じで、事前に定義する必要がある。 定義済み前提で、進む。
DataSpiderで、定義済のプラットフォームイベントオブジェクトのレコードをinsertするだけで Pubに該当することが完了。
ただし、メッセージを公開だけじゃ、購読する行為がまだ行っていないため、公開行為が成功したかどうかだけ分かる。
Youtubeみたいに、動画を成功にアップロードしただけ。見るには、別の行為が必要。
プラットフォームイベント購読(Subscription)➜Sub
メッセージを公開した後に、どこかで購読したい理由があるはず。
DataSpiderでは、プラットフォームイベントレコードを登録したら、その購読をSalesforceの通知ベルであるカスタム通知をしたい場合
この記事の大事なポイントである。
SFDC内で、カスタム通知を事前に作成したことが前提で、次に進む。
プラットフォームイベントの内容をそのまま、カスタム通知に必要なパラメータを設定すれば、通知ベルに来る。
DataSpiderからSalesforceのカスタム通知はREST
ポイント1:RESTグローバルリソースは、カスタムドメインを使う場合、カスタムドメインに置き換えてください
ポイント2:スクリプト内で、POSTコンポーネントでは、ヘッダー認証はセッションIDで行う(セッションIDはユーザ情報取得コンポーネント変数セッションIDの15桁以降+組織IDで結合)
ポイント3:スクリプト内で、POSTコンポーネントへのマッピング設定に、typeにarrayやobjectや、Stringを指定する必要がある。
最後に
スクリプト内のPOSTコンポーネントで、ハマっていたので、ご注意してください。認証問題で、auth2認証に行きがち。
typeに、データ型を指定するポイントも大事。
異常