
ChatWorkのメッセージをSlackへ転送する方法を紹介します!
これでSlack(スラック)だけ開けば良いので効率化できます
目次
ChatWorkのメッセージをSlackへ転送する条件
ChatWorkのメッセージをSlackへ転送する条件は下記の4点になります。
①通知だけでなく、メッセージの内容も転送する
②自分宛ての通知のみ転送
③すべてのルームの自分宛ての通知を転送したい
④他のサービス(zapierとかAWS Lambdaとか)はできれば使わず、Google Apps Scriptだけでなんとかしたい
ネットで公開されているものをいくつか試したのですが、理想のものは見つかりませんでした。
- Toが既読されるまで、メッセージが投稿され続けたり
- すべてのメッセージがGmailに大量に転送されたり(かつ同じメッセージを取得し続けたり)
- 通知がありましたのみ表示されたり
納得いかなかったので定のルームに自分宛ての通知のみ、メッセージ内容も込みで転送させてみました。
ChatWorkのメッセージをSlackへ転送する方法
STEP
チャットワークAPIの取得
チャットワークAPIの取得します(あとは自分のIDと取得したいルームIDも調べておきましょう)
STEP
SlackAPIの取得
STEP
Google Apps Scriptの作成
Google Apps Scriptに下記のコードをコピペします。
xxxxx部分は手入力します
for each(var obj in json){}の記述からv8エンジン用に一部変更しました。
STEP
スクリプトの実行
実行(chatworkToSlack)しましょう。
通知を何分間隔でスクリプトを実行するかの設定は、下記の記事を参照してください
ChatWorkのメッセージをSlackへ転送した結果

①②④の条件を満たして、うまくいきました。
③に関しては、取得したいルームIDを配列へ入れてやります。
テストするときは、マイチャットで自分のIDを入れると、自分に対してTOで通知できて便利です!