LoginSignup
5
2

More than 3 years have passed since last update.

Qiitaのいいね数を通知してくれるLINE Botを作ってみた

Last updated at Posted at 2020-03-29

背景

  • Qiitaに投稿した記事数が増えてくると1日に何件かいいねがつくようになりそれがモチベーションになってきました
  • しかし通知一覧画面はいろいろな通知が混ざっていて見やすいものではなく、以前まであった日毎のいいね数のグラフも先日のアップデートでなくなってしまいました
  • なので前日何件のいいねがついたのか知らせてくれるLINE Botを勉強も兼ねて作ってみました
  • まだまだ機能を追加したいですが最低限できたので紹介します

できたもの

  • QiitaのIDを登録しておくと前日のいいね数を通知してくれるLINE Bot

Screenshot_20200329-202656.png

使った技術

  • フロントエンド
    • LINE Bot
    • LIFF
    • React
  • バックエンド
    • Lambda
    • API Gateway
    • DynamoDB
    • ServerlessFramework

スクリーンショット 2020-03-29 20.22.49.png

利用イメージ

ユーザの登録

  • QiitaのIDを登録してもらうフェーズです
  • LINE BotのあいさつメッセージでLIFFアプリのURLを表示しそこから登録してもらいます

Screenshot_20200329-203055.png

  • LIFFアプリはこんな感じです

Screenshot_20200329-203145.pngScreenshot_20200329-203157.png

  • LIFFアプリからはLINEのユーザIDを取得できるのでLINE IDとQiita IDの2つをLambdaに投げてDynamoに保存しています

いいね数の断面取得

  • QiitaのAPIの仕様上、前日に何いいねされたかを取得することはできません
  • なので毎日0時に登録ユーザの全記事を取得し、いいね数を合計した値を保存しておきます
  • Lambdaの定期実行はServerlessFrameworkからも指定可能で簡単にできました

前日のいいね数をユーザに通知

感想

  • LIFFを使うとWebアプリとして実装できるのでハードルがとても低く感じました
  • いいね数の内訳などもっと追加したい機能がありますがLIFFアプリを拡張すればいいだけなのでその辺も扱いやすそうです
    • 通知はLINEで、詳細情報はLIFFでという使い分けが便利!
  • バックエンドがサーバーレスなので課金の心配もそんなにないはずなので個人でお試しするにもやりやすい構成だなと感じました
5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2