Slackにつないでメッセージをらくらくポスト!~Slackアダプターを使ってみた~

Slackにつないでメッセージをらくらくポスト!~Slackアダプターを使ってみた~

みなさん、こんにちは。
アステリアのキクチです。

先日、某テーマパークでは11時間待ちの行列が発生したそうです。

11時間といったら一日の約半分、、、。寒がりのキクチには真似できない(汗)

 

菊池キャラクター画像

どんどんと冷え込んでくるこの季節、皆さんもカゼなど引かないように気をつけてくださいね。

 

さて、今日も新しいアダプターのご紹介です。

ついにビジネスチャットツールとして人気の「Slackアダプター」がExperimentalでリリースされたので、早速つないでみしょう。

Slackとは?

2013年にアメリカで公開され、急速に世界中で普及し利用者を増やし続けているビジネスチャットツール。
パソコンやモバイルなどの閲覧環境を選ばずにリアルタイムのコミュニケーションが行えることから日本でも利用者が増加しています。
皆さんの中にも社内で利用されているという方がいらっしゃるかもしれませんね。

Slackには、最近のWebサービスらしくAPIが用意されているので、すでにRESTコンポーネントでつないでいる方もいらっしゃるかもしれません。

弊社アステリアでもSlackを導入していて、情報共有やコミュニケーションの場として活用しています。
さらにはASTERIA Warp(RESTコンポーネント)を利用して「受注情報の通知」や、体験セミナー/AUGの勉強会など各種セミナーの「来場者通知」もSlackに通知が届くようになっていて、とても便利です。

そして、今回Slackアダプターが加わったことで、どれだけ便利になるのか、
楽しみにしながら体験してみたいと思います!

「Slack」連携アダプターご紹介

SlackPostコンポーネントアイコン

追加されたのは「SlackPostコンポーネント」。

SlackのWeb APIを使用してSlackにメッセージを送信できるコンポーネントで、
パブリックチャンネル、プライベートチャンネル、ダイレクトメッセージを送信できます。

今回は「Slack上にメッセージをポストする」、という単純な要件のもと、RESTコンポーネントを利用した場合と、SlackPostコンポーネントを利用した場合のそれぞれのフローを比較してみたいと思います。

RESTコンポーネントを使った場合

まずは、RESTコンポーネントを利用したメッセージのポスト。
フローはこんな感じになります。

RESTコンポーネントを利用したメッセージフロー

このフローでは、SlackのAPI「IncomingWebhooks」を利用しています。
簡単な設定手順はこちら↓をご覧ください。

(設定手順)

Slack APIのページから、“Start Building”で新しいアプリ(メッセージをポストするアプリ)を登録しておきます。

Slack API登録ページに新しいアプリとして登録

今回は「ASTERIA-Post」として登録したアプリを利用します。

「ASTERIA-Post」として登録

↑このアプリを選択するとツールバーメニューから「IncomingWebhooks」を選択し、メッセージをポストしたいチャンネルのURLを生成できます。

ツールバーメニューから「IncomingWebhooks」を選択し、メッセージをポストしたいチャンネルのURLを生成

↑こちらで生成したURLをRESTコンポーネントに設定すると、JSONフォーマットで渡されたメッセージがSlack上にポストされます。

そして、フローを実行すると…

フロー実行結果

きちんとポストされていますね。
そうなんです。RESTコンポーネントでもちゃんと連携できるんです。

SlackPostコンポーネントを使った場合

では、今回追加されたSlackPostコンポーネントを利用するとどうなるでしょうか。
フローはこんな感じになりました。

SlackPostコンポーネントを使ったフロー

なんと!
コンポーネント3つで完了してしまいました。
並べてみると一目瞭然です。

RESTコンポーネントを使ったフロー

SlackPostコンポーネントを使ったフロー

RESTコンポーネントだと、JSONフォーマットでポストしないといけなかったのでフォーマット変換の手間が発生していましたが、SlackPostコンポーネントはその辺りをまとめて行ってくれるので面倒な操作がアイコン1つで解決できます。

ちなみに、SlackPostコンポーネントもSlackのAPIを利用していますが、「IncomingWebhooks」とは違う権限が必要になりますので、以下の手順で必要な権限(スコープ)を設定し、OAuthトークンを取得してください。

(設定手順)

Slack APIのページから、“Start Building”で新しいアプリ(メッセージをポストするアプリ)を登録しておきます。

Slack APIのページから、Start Buildingで新しいアプリを登録

今回は「ASTERIA-Post」として登録したアプリを利用します。

STERIA-Postとして登録

上記のアプリを選択し、ツールバーメニューから「OAuth & Permissions」を選択し、必要な権限をアプリに設定できます。

ツールバーメニューからOAuth & Permissionsを選択し、必要な権限をアプリに設定

SlackPostコンポーネントに設定が必要な情報は3つです。

SlackPostコンポーネント

  • Slack APIのトークン
  • ポスト先のチャンネル
  • ポストするメッセージ

ただ、これらのプロパティはMapperコンポーネントで設定が可能なので、ポスト先のチャンネルを動的に変更したり、メッセージの内容ももちろん取得してきたデータを埋め込むことも出来ます。

Mapperコンポーネントで設定

※今回はメッセージのみをマッピングしています。

さあ、必要な情報が設定出来たら、フローを実行してみましょう!

メッセージの内容を取得

おぉ、きちんとポストされてますね!
プロパティでポストするユーザー名も変更できるので、設定を変更してみると…

フロー実行結果

違う名前でポストされてますね!

REST APIが用意されているサービス/システムであればRESTコンポーネントで接続することも出来ますが、やはりアダプター(専用コンポーネント)を利用すると格段にラクに開発できますね!

ちなみに、今回リリースされたSlackアダプターを利用したフローテンプレートが、「フローテンプレート広場」で公開されています。
実は、今回の“SlackPostコンポーネントを使った場合”のフローもこのテンプレートを利用して作っちゃいました(^^)v
Slackをより活用していく上でのヒントになるかと思いますので、ぜひ皆さんご利用ください!

フローテンプレート広場について

最後に

いかがでしたか。
SlackのようなチャットツールでもASTERIA Warpで簡単に連携できちゃうんです!

冒頭でご紹介した某テーマパークのように行列が発生する場所でも“ASTERIA Warp×Slack”で「待ち時間表示チャンネル」を作れちゃうかもしれませんね。

発想次第で様々なシステムを簡単に構築できるASTERIA Warp。
ぜひ一度試してみてください!

フローダウンロード

今回のフローはこちらからダウンロードしてお使いいただけます↓

フローダウンロード

 



クラウド版

手ぶら de ASTERIA Warp
体験 5日間を申し込んで
簡単データ連携を体験してみよう!

サーバー準備の手間なくデータ連携ツール「ASTERIA Warp」の
全ての機能を5日間お試しいただけます。

今すぐ体験してみる 書籍の詳細についてはこちらをご覧ください。
基礎と実践 使い方マニュアル
「ASTERIA Warp、データ分析、クラウド、業務効率化、最新技術」人気!ホワイトペーパーダウンロード受付中!今すぐチェック
ASTERIA Warpと色々つないでみた特集!記事はこちら>

ASTERIA Warp 関連サイトのご紹介

X ASTERIA Warp Developer Network(ADN)サイト

技術情報をお探しの方

ASTERIA Warp Developer Network
(ADN)サイト

ASTERIA Warp製品の技術情報やTips、また情報交換の場として「ADNフォーラム」をご用意しています。

X ASTERIA Warpユーザーグループ(AUG)

ASTERIA Warpデベロッパーの方

ASTERIA Warp オンラインコミュニティ
ADN slack

ASTERIA Warpデベロッパー同士をつなげ、技術情報の共有やちょっとしたASTERIA Warpの疑問解決の場とすることを目的としたコミュニティです。

X ASTERIA Warpユーザーサイト

ASTERIA Warpユーザーの方

ASTERIA Warpユーザーサイト
Login

製品更新版や評価版のダウンロード、各種ドキュメントのご提供、また 技術的なお問合せもこちらで受付ています。

X ASTERIA Warpパートナーサイト

ASTERIA Warpパートナーの方

ASTERIA Warpパートナーサイト
Login

パートナーライセンスの発行や各種ドキュメントのご提供をしています。

ページ先頭へ