JANDIにメッセージを飛ばしたい
ビジネス用チャットツール『JANDI』を使っていて、メンバー間のやり取りは活発にコミュニケーションできるようになりましたが、使っているとどんどん欲が出てきて「あれもやりたい」「これはできないの?」と機能に関しての要望が出てきます。
今回は、私が実際に設定した『自分宛てに届いたメールをJANDIのチャットビューに送信する方法』に関してご説明したいと思います。
難しいことは分からなくてもOK
かくいう私も、JavaScriptが書けるわけでも、なにかソースコードを書けるわけではありません。
この記事を書くにあたってもタグやCSSを理解していないのであーでもないこーでもないとGoogle先生に都度聞きながら設定している次第です。
そんな私にもできた、苦戦履歴も含めた設定の方法をご紹介します。
JANDIのトピックにWebhookを使ってメッセージを送る方法 目次
チャットビューとボードビュー
まずはじめに機能のおさらい。
JANDIのコミュニティ(トピック)にはチャットビューとボードビューという2つの仕様があります。
チャットビューは名前のとおり、チャット。それぞれの会話が吹き出しで次々と登場します。
そしてボードビューはいわゆる掲示板。一つのお題に対してコメントをつける形で表示されます。
複数のお題が同時進行で走るときはボードビュー
ディスカッションを含めコミュニケーションや「あれどうなってる?」などの進捗確認にはチャットビューと、用途に合わせて利用できるのが特徴です。
このボードビューは有料プランでしか利用ができません。
トピックにメッセージを送りたい!
仕事でチャットを使っていると、メールを見る機会が本当に少なくなります。
また、メールには様々なものが届くので多くの受信メールから大事なものを見つけることも大変になります。
そんなときに思うのが「JANDIにメールが飛んで来たらいいのに・・・」ということ。
必要なメールがJANDIに通知されればスマートフォンアプリへの通知も届くし、
どのトピックに届くかでどの内容に関しての通知かもわかります。
でも、どうしたらいいのでしょうか。
Webhookを使えば転送できる
Google先生に色々確認したところ、どうやらWebhook(ウェブフック)というものを使えば転送できることが分かってきました。
Webhookとは
カスタムコールバックを使用してWebページまたはWebアプリケーションの動作を拡張または変更する方法です。
Wikipediaより(英文)
なにやらよくわからないですね。
要は、JANDIに手動で投稿しなくても外部ツールからメッセージを受信できる機能らしいです。
使ってみたい!ということで更に調べてみました。
Webhookには受信と送信がある
その名のとおり、情報を送りたいときは送信・情報を受け取りたいときは受信です。
今回の場合は
JANDIで情報を受け取りたいので、Webhookの受信を使います。
自動化といえばIFTTTかZapier
難しいコードが書けなくても、コードの書き方を理解していなくても使えるツールと言えばIFTTT(イフトと読みます)かZapier(ザピアー)。
どちらも無料で使えますし、多くのものをつないでくれます。
今回実現したいのは、
『自分宛てに届いたメールをWebhookに転送し、そこからJANDIに送ってもらう』です。
ZapierはWebhookが有料だったため断念
Zapierは色々機能があったのですが、Webhookを使うには有料でした。
会社に決済を・・・(月額)と考えると断念せざるを得ませんでした。
IFTTTにはメールを転送できなかった
IFTTTは先日Googleメールのアプリ利用が終了してしまい、直でGoogleメールを接続することができなくなってしまいました。
そのため汎用的なメールアプリを利用して使うのですが、私のメールアドレスからIFTTT宛にメールを転送しないと起動してくれません。
Gmailは他ドメインへの転送は相手に許可をもらう必要があるため、IFTTT側に確認コードを送っても返答してくれないため転送処理をすることができませんでした。
困ったときに出てきたのがGoogle Apps Script(GAS)だった
途方に暮れていた私に一筋の光を与えてくれたのがGoogle Apps Scriptでした。
Googleアカウントを持っている人ならだれでも使えます。
ただ、ZapierやIFTTTのようにノーコードでは使えません。
そこで、先輩の力をお借りしてコピペで使えるコードを書いてもらいました。
Google Apps Scriptを使うと、Gmailと直で繋げることができるので、メールを指定してWebhookの送り先を指定すれば送ることができます。
設定方法
いよいよ設定方法に入ります。
今回の設定は、JANDIとGoogle Apps Script(GAS)を使います。
なお大前提ですが、メールはGoogleのGmailを利用して受信しています。
準備するもの
事前に準備するものは以下の3点です。
進めながら準備してももちろんOKですが、あらかじめ準備しておいたほうがささっと進められます。
- ・JANDIで流したいトピック(新しく作るときは新規作成しておきましょう)
- ・転送したいメールの件名(今回は件名を指定して転送します)
- ・Googleアカウントへのログイン
設定の条件
今回は以下の条件で起動させる設定をします。
- ・メールが自分のGoogle受信箱に届く
- ・未読メールに対してスクリプトを起動させ、JANDIへ転送する
- ・スクリプトが動いたらメールは既読にする
- ・未読メールがないかのチェックは5分おきにチェックさせる
JANDI手順
まずはJANDIで必要なWebhookの受信URLを取得します。
1.メールを転送したいトピックをPCで開き、右上のプラグマークをクリックする
右上のプラグ(コンセント?)がコネクタのマークです。
既に繋がっているコネクタがある場合は接続済みの数が表示されます。
2.追加ボタンをクリック
接続済みのコネクタがある場合はココに表示されます。
コネクタ数に上限はありませんので、複数の登録をしてもOKです。
3.Webhook受信を選んで追加ボタンをクリック
ボードビューにはまだ接続できるコネクタがWebhook受信しかないため、1つしかでてきません。
チャットビューには
- ・Webhook発信(Outgoing Webhook)
- ・Google Calendar
- ・RSS
- ・Trello
- ・JIRA
- ・GitHub
- ・Bitbucket
- ・Webhooks受信 (Incoming Webhooks)
と、8種類のコネクタが用意されています。
今回はWebhooks受信 (Incoming Webhooks)を使います。
4.Webhook URLをコピーする
https://wh.jandi.com/connect-api/webhook/…と始まるURLが生成されていますので、このURLをコピーします。
Google Apps Script(GAS)手順
今回はGoogle Apps Scriptを使って受信したメールを転送していきますので、Scriptを作成する必要があります。
ただし、ほぼ9割コピペでいけますので心配は不要です。
Script設定に必要なのはJANDIからコピーしてきたWebhookのURLと、転送したいメールの件名です。
5.Google Apps Scriptを開き新しいプロジェクトをクリック
https://script.google.com/u/0/home
上記URLから開き、左上にある新しいプロジェクトを作りましょう。
6.以下コードをコピーしてそのまま貼り付ける
3行目の〇WebhookのURL〇の部分を上記手順4でコピーしたURLを貼り付けてください。
6行目の〇メールのタイトル〇の部分を転送したいメールの件名に変えてください。
編集はこれで終わりです。
テンプレート作ってくれた先人に感謝するばかりです。
7.保存する
画面上部にあるフロッピーアイコンが保存ボタンです。
(フロッピーって今の子はわかるんでしょうか・・・?)
スクリプト名をまだつけていない場合は名前を付けてくれと表示されますので、名前を付けて保存してください。
「無題のプロジェクト」のまま保存してもいいですが、今後このスクリプトがなんなのか分からなくなってしまいがちなので、名前は付けておくのが安心です。
8.再生ボタンを押してGoogleアカウントでスクリプトの使用を許可する
この時点ではまだ、スクリプトを利用する許可が下りていません。
再生ボタンを押すことで「動かしてもいいか?」と聞かれますので押してみましょう。
Authorization requiredで許可を確認を押します。
どのアカウントで許可しますか?と出てくるので、自分のアカウントを選択します。
スクリプトが操作する範囲が出てきますので、許可ボタンをクリックすれば設定完了です。
9.トリガーボタンをクリックし、トリガーを追加する
上にある時計マークがトリガーの設定ボタンです。
利用するのは毎回この設定画面を開いて手動で再生ボタンを押す、というのであればタイマーは不要ですが、面倒なのでタイマー設定しましょう。
トリガー設定画面の右下にトリガーを追加ボタンがありますので、クリックします。
10.スクリプトを動かすトリガーを設定する
ここはご自身が転送したいメールの受信具合で設定を変更してください。
参考までに私が修正しているのは赤枠の部分です。
スクリプトを動かす条件は、5分おきに対象の未読メールがないかチェックし、あればスクリプトを動かすというものなので、
時間ベースのトリガーのタイプを選択:分ベースのタイマー
時間の間隔を選択(分):5分おき
に設定しています。
時間ベースのトリガーのタイプは特定の日時(YYYY-MM-DD HH:MM)・分・時間・日付・週・月とあります。
分ベースのタイマーは1分・5分・10分・15分・30分とあります。
これを保存したらすべてが完了です。
あとはJANDIに通知されていることを確認しましょう。
お疲れ様でした。
便利な使い方
この機能を使うと様々なことがJANDIで解決できるようになります。
自分だけのアラートとして利用する
JANDIのトピックは自分一人でも作成できます。
・大事な人からのメール
・届いたらすぐにチェックしたいメール
などはこの設定で自分だけにアラートが飛ぶようにしておくととても便利です。
ちなみに私は、
承認依頼のメールが届いた時にアラートが飛ぶようにしています。
チームメンバーに共有したい数値などを共有する
・前日の数値
・問合せが入ったとき
などチームで共有したい数値や情報があったときにアラートを飛ばすと便利です。
共有したいトピックは後から変更できる
一度作ったトピックの受信先を変えたいとき、新しく作成する必要はありません。
設定画面で赤枠のプルダウンを押して別の作成済みトピックへ変更することも可能です。
ちなみに赤枠のとなりにはトピックを作成もありますので、設定しながらトピックも一緒に作成することも可能です。
トピックへ投稿する際の名称やアイコンも修正できる
同じくコネクタの設定画面でアイコン(写真)や投稿名も変更できます。
一つのトピックに複数のアラートを流した場合でも、アイコンの違いで投稿内容を判別できるようになるため、視覚的にも分かりやすくなります。
ちなみにこの設定は、Slackなどにも流用できます。
スクリプトの中のJANDIと記載してある部分の修正も一部必要になってきますが、Slackでの設定で困っている方は参考にされてください。