Technology

Salesforce2Slack Integration インテグレーション シンプル

投稿日:

IT業界では、インテグレーションをすれば、いろいろな製品をつながって、弱点やできないことを補うことができる、良いところですね。

今回、Slackの投稿をSalesforceから操作したいので、関連設定やコードを共有したいと思います。

SalesforceとSlackをつながるため

難しいことはないが、Slack側で、Webhook URLを発行すれば、Salesforceがそのリンクに対して、データを送信すれば、OK。これで大まかな つながる 方法です。

Slack側の設定

  • Webhook URLを発行すれば、基本これだけで良い、つまりIncoming Webhookを対象Slackに追加すること。 Slack APIを利用する場合Incoming WebHookの設定ページでWebHokURLを取得します 。

Salesforce側

Salesforce側では、設定と実装2つ部分が必要
なぜ、設定がいるかというと、まずリモートサイトに登録しないと、HTTPのPostメソッドのコールで、セキュリティ問題で、飛ばせない。次にWebhook URLはあっちこっちのところで、POSTを行うときに、使うendpointになるため、組織全体的に持ったほうがいい。僕の場合、カスタム設定にした。

設定

  • リモートサイト登録(Webhook URL: https://hooks.slack.comここまでよい)
  • カスタム設定やカスタムメタデータに Webhook URL (POST用に使う)を設定

実装(匿名コンソールで実行しているシンプルコード)

投稿結果:Salesoforceアプリの部分

サンプルコードの内部ラッパークラスMessageについて

この内部ラッパークラスのプロパティは全部、Slackに投稿する際に固定の文字列です。投稿チャンネルを変更したい場合、ポストメソッドに内容に下記のように構成することが前提となります。

なので、チャンネルを変更し、投稿するなら、ラッパークラスのプロパティ変数:channelの値を変えるか、ポストメソッドの内容に直接「”channel”:”#yourchannel”」を含めるようになにかをする必要がある。絵文字や対象アカウントを変更したい時にも同じ。

終わりに

Webhook URLさえあれば、Apexコードを叩いて、すんなり投稿できます。
これで、Salesforceで、webhook URLに対して、データをHTTP のpostメソッドで送信した検証です。

リファレンス

Incoming Webhook

Salesforce→Slack通知をオープンソースで公開しました

Sending messages using Incoming Webhooks

-Technology
-,

執筆者:


  1. […] 前回、Webhook URLでSalesforceから、Slackのチャンネルに投稿する記事を公開した。非常にシンプルでした。今回、やや複雑なSlack Web APIを使って、投稿することをチャレンジしてみたいと思います。 […]

comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

【git初心者のあなたへ】 xx files changed, xx insertions(+), xxx deletions(-)

git こんにちは、管理人の@Salesforce.Zです。 gitの差分を求めるコマンドの最後の行にある文章を説明する

Conten …

【勉強法網羅】 sfdc フィールドサービス 試験準備

こんにちは、管理人の@Salesforce.Zです。 Salesforceには資格がたくさん設定をしている。開発系・デザイン系・コンサルタント系、さまざまな種類を設けている。今回、そのうちのField …

Salesforce Field Service コンサルタント試験 想定問題集1

FSL Welcome to your Salesforce Field Service EXAM 1-20 回答制限30mins 1 out of 0 back

【FSL】 作業指示 作業指示明細 サービス予定の関係

こんにちは、管理人の@Salesforce.Zです。 Contents1 作業指示とサービス予定2 作業指示に対する、作業指示明細とサービス予定 作業指示とサービス予定 通常では、作業指示(WorkO …

git clone エラー128対策

gitで終了コード128エラーとなりリモートリポジトリがクローン出来ないでしょうか 私も今日、同じ問題に遭遇してしまい、2、3時間かかってしまった(泣)。絶対メモしようと思います。やりたいこともかんた …