見出し画像

AWS Lambdaを使ってSlackからBacklogの情報を取得してみた

※2年前に自分のブログに書いた記事をnoteに移植しました

はいどーも!

てりやきです。

とにかくAWS Lambdaを使いたいと思い、
しかし使って一体何を作るんだと考えた結果、
本投稿のタイトルみたいなことをしてみました。

何が出来上がったか

自分のSlackの任意のチャンネルで、「shinchoku *」
(*にはbacklogのイシュー名を入力)
と入力すると、そのイシューのタイトル、ステータス、アサイニー、期限日が返ってくるというチャットボット(?)を作ることができました。

-----------------------
Subject: ゆうちょバンク行く
Assignee: teriyakiegg
Status: Open
Due Date: Tue Mar 14 00:00:00 UTC 2017
-----------------------

↑こんな感じ

↓スクリーンショット

画像1

ソースコード

はGithubにアップしました。

READMEも書いてみたので、
使い方はこれを読めば分かるはず、です。

作った時のメモ

Lambdaの設定は主にここを参考にしました。
ただ、LambdaのUIが変わってて結構苦戦しました。
苦戦した時どうやって設定とかしたかはメモしてません:)
とりあえずMapping Templatesが大事です。

言語はJavaで以下の記事を参考にしました。

Lambda関数ではMap<String,Object>型でSlackのOutgoing Webhooksから送られるPOSTデータを取得できました。

あまりよく覚えてませんが、
当時のメモによるとLambda関数実行時外部ライブラリが読み込めなくてハマりました。
maven-shade-pluginを追加していなかったことが原因だったようです。
AWSの公式ドキュメントを読んでハマりを回避。

まとめ

進捗を確認する頻度やイシューのステータスの変化具合によってチャットボットに発言するコメントを変えさせるのが今後の課題です。
まずは自分が使うのに便利なものにしてみます。
お暇な方、プルリクお待ちしてます。

Posted by てりやき
Twitter→@teriyakiegg

<参考URL>


この記事が気に入ったらサポートをしてみませんか?