Better Software Testing

ソフトウェアテストをもっと良くしたい

connpassからQA関連イベントを取得してSlackに通知する

概要:

  • connpassのAPIを叩いて、以下の条件に該当するイベントを10件取得する
    • プログラムを実行した月のイベント(例:2022/01)
    • イベントタイトル、キャッチ、概要、住所に「QA」を含むイベント
  • 取得したイベント情報から、以下の情報を取得しSlackに投稿する
    • イベントID
    • イベントタイトル
    • キャッチ
    • 開始日時
    • 終了日時
    • 参加可能人数
    • 参加人数
    • URL

使ったもの:

connpass.com

api.slack.com

実行手順:

  1. Slackで、スラッシュコマンド"/get_qa_events "を実行する
  2. SlackからAPI Gatewayにリクエストが飛ぶ
  3. API Gatewayがリクエストをキャッチし、Lambda関数を実行する
  4. Lambda関数内にて、以下の処理を行う
    1. connpass APIを叩き、QA関連イベントの情報を取得する
    2. 取得した情報をSlackに投稿する

実行結果:

f:id:katsu-ichiro:20220201060334p:plain

実行例

Slackの仕様上、実行時間が3秒を超えるとエラーメッセージが表示される。ただし、一度開始した処理そのものは最後まで実行されるので問題ない。

 

感想:

作り込まなかったというのもあり、そんなに時間かからずに作れた。開催年月や検索ワードを自由に設定できると尚良いのだが、今回は基礎を作ったところで満足。毎回ブラウザ立ち上げてconnpassにアクセスしてキーワード入力して、、という操作をやっていたが、これをコマンド1つで実行できるようになったのですごく便利感がある。

 

ソースコード

github.com