Alteryxは、データ分析や集計をするだけでなく、インターネット上からリアルタイムに情報を取得したり、
レポートとしての出力、集計結果の通知などの共有もでき、分析をするだけだけではない使い方をすることができます。
本日は、Webhook を使い、Alteryx DesignerからTeamsへメッセージを送る方法をご紹介します。
こんにちは、PR担当Saoriです。
処理アイコンをドラッグ&ドロップし、線でつなげていくことで「ワークフロー」という処理の履歴を構築し、
再生ボタンを押すことで、処理が実行できるため、とても分かりやすいのが強みの統計ツールである”Alteryx”。
今日は、Webhook を使い、Alteryx DesignerからTeamsへメッセージを送る方法をご紹介します。
これにより、処理の完了通知を送ったり、エラーを発見した場合に通知を送るなど、知りたい状況や結果を
受動的に受け取ることができるようになります。
ステップ数が多いように見えますが大変簡単ですので是非参考にして、活用して下さい。
※今回ご紹介する記事で利用している画像は、Alteryx Designer 2021.4、日本語表示を利用して作成しました。
Alteryx Desinger からWebhookを利用し、Teamsへメッセージを飛ばす方法
1.Teams側での事前準備
受信Webhookを作成する、という方法を参考に作成しました。
↓↓
マイクロソフトTeamsヘルプページ
また、そもそもWebhookとは?はこちらをご覧ください。
Webhookとは、Webアプリケーションに対して、特定のイベントが発生したら別のWebアプリケーションに通知を発行するよう利用者が指定する仕組み。
HTTPのPOSTリクエストを利用する。
引用元:IT用語辞典 e-words 引用元はこちら:IT用語辞典 e-words
なんだかAPIに似てますね。
APIと何が違うの?となると、私も詳しくないので正確な説明をすることができないのですが、APIと同じように今ご自身が使っているツールと連携することができる機能だと思っていただければ良いと思います。
※これ以上の詳細は割愛します。
では早速Teams上でWebhookを使えるようにしましょう。
TeamsにWebhook コネクタを追加する
まずはTeamsにWebhookを追加します
①ご利用されているTeamsの、メッセージを送りたいと思っているチャネルの右横にあるマーク”・・・”をクリックします。
②その下にある、”コネクタ”をクリックします。
③Webhook用のコネクタを追加する
Incoming Webhook (画面上に出てこない場合は検索してみてください)の横にある追加ボタンをクリックします。
※見つからない場合は下記に記載しました、⑤の下に対応をいくつか書きましたので、試してみてください。
④通知する際の設定をします。
どこから来たか、をわかるように名前を付けます。今回は LHit_Webhookとしました。
また、必要に応じて画像変更を行ってください。
⑤URLを発行する
④で追加を押すとURLが発行されます。
このURLは必ずコピーしましょう。
これで設定は完了です。
③Webhook用のコネクタを追加する で出てこないとき 1
左上に検索窓があるので、検索をしてみてください。
③Webhook用のコネクタを追加する で出てこないとき 2
見つからない場合は「アプリ」の部分をクリックしてみてください。
そうすると、下記のように出てきます。
それでも出てこない場合か、下記のように鍵マークがある場合があります。
その場合は、部門長の方やIT部門、情報セキュリティ担当の方へ相談ください。
※設定できたところ(自社:正社員)、鍵マークが出たところ(他社:顧客半常駐)、全くでなかったところ(他社:ゲストアカウント)とありましたので使える状況と設定、というのはあるようです。
2.Alteyxワークフローの作成
TeamsとWebhookが簡単に設定できました。
それでは、Alteryx 上でメッセージを送るためのワークフローを作りたいと思います。
用意するものは以下の2つです。
・手順1.⑤でコピーしておいたURL
・投稿したいメッセージ
1.送信先を記入する
テキスト入力ツール(Text Input Tool)を使い、
手順1.⑤でコピーしておいたURL使いURLを記入しておきます。
フィールド名はお好きな名称を記入ください。
2.投稿するメッセージを作成する
先ほど同様、テキスト入力ツール(Text Input Tool)を使い、送信したいメッセージを作成します。
フィールド名は何でも構いませんが、わかりやすいような記載をされることを推奨します。
また、nameフィールドには必ずtextと記載ください。
送信したいメッセージは今回dすとvalue欄になります。
3.JSON形式へ変換する
Webhookを利用してメッセージを送信する際には、JSON形式にして指示を出す必要があります。
JSON形式でのコード私書けるよという方ならいいのですが、簡単には書けません。私は、書けません。
また、今回はサンプルのため通知のみにしていますが、実際利用される際は処理の結果や数値を送るかと思います。
そうなると毎回JSON形式を書くわけにもいかないので、今回はこちらのツールを使います。
JSON作成ツール(JSONビルドツール)
こちらはJSON形式に変換してくれるツールです。
設定は簡単で、名前のフィールドと文字列の値のフィールドを、プルダウン形式になっていますので、クリックで設定するのみです。
なお、このツールを通過すると、フィールド名がJSONに変更されますのでご注意ください。
なお、JSON形式とは?気になる方、JSONは、JavaScript Object Notation の略です。ざっくりそういう言語というか文法があるんだなーくらいで思っててください。
詳細は下記の参考リンクをご覧ください。
参考:https://www.nic.ad.jp/ja/basics/terms/json.html
4.送信設定を行う
さて、最後は送信するための設定を行うだけです。
ダウンロードツール(Download Tool)を使います。
このツールはURLから指定したデータをダウンロードまたはアップロード(POST)することができるツールです。
基本設定タブではフィールドを指定します。
次に、ペイロードタブにて設定します。
HTTPアクションはPOSTを選択してください。
また、フィールドからクエリ文字列/本文を取得するではJSONを選択します。
5.実行と確認
ワークフローはこのようになります。
こちらのワークフローに実行ボタンを押すだけでメッセージが送信されます。
送信した際の実際の画面はこちらになります。
無事メッセージが届くと嬉しいものですね。
応用編|Alteryxで集計した結果、エラーだった場合に通知を送る
今回は、事前にメッセージを2パターン用意しておいて、
その条件だった場合=正しい処理が終了した通知
そうでない場合=正しい処理ではなかったという通知
がTeamsに届くように設定します。
分岐を行うことで、例えば想定ではないデータが出力された場合に通知をする。という事もできます。
先ほどと違う点としては、JSONビルドツールを使うのではなく、フォーミュラツールを使い、事前に準備しておいたJSON形式にしたメッセージを追加する方法を取ります。
下記のように設定します。(URLは一部隠してあります。)
ワークフローはこのようになります。
条件を分岐させれば指定の条件の場合に希望のメッセージを送るよう、出し分けを行うことが可能になります。
まとめ
今回はTeamsにメッセージを送る方法をご紹介しました。
メンションを付ける方法(PowerAutomateでメンションするためのIDを確認するという裏技があるようです。)、絵文字が付加されたメッセージの送信方法など、今回の使い方を発展させた使い方は、身に付け次第ご紹介しようと思います。
また、同じような方法で、Slackにも送ることができるようですので、その設定記事はまた次回にご紹介したいと思います。
私もWebhookが何か、JSONとは何か、について正直きちんと説明するだけの知識は正直無いのですが、それでも簡単に設定できました。
是非一度使ってみてください。
【参考】
ワークフロー作成時に参考にした記事をご紹介します。
AlteryxCommunity : Slack bot – send message to your Slack channel
詳細お問い合わせ
データ分析基盤構築・ご相談は下記ボタンより、お問い合わせフォームに進み、お問い合わせください。
お問い合わせはこちら
その他、LHitのワークフロー作成事例、Alteryx導入事例、はこちら
●チャットワークからAlteryx Designerを使ってメッセージを送る方法のご紹介
●プログラム未経験者があっという間に使いこなせた”消費財メーカー”の導入改善事例
●Tableauとの組み合わせを活用している”店舗やECサイト運営商社”の導入事例
●データ加工・集計にかかる工数を大幅に削減した”データ分析専門会社”の導入事例
Alteryx(アルテリックス)を1か月間無料でご体験いただけます。
早速はじめてみませんか?
トライアル期間中もサポート対応実施中です!ご不明な点がございましたらお気軽にお問い合わせください。
1か月間のフリートライアルはこちらから
Alteryxや、データ分析・集計に関するお悩みがございましたら、こちらからご相談ください。
お問い合わせページはこちら