LINE

【2018年 LINE Bot 作り方】GASで支出管理Botを作ってみた


フリーランスエンジニアのyoshikiです。
 
 
最近、お金を使い過ぎてしまうことが多いので、1ヶ月の支出をざっくりと把握したいな〜と思いまして。
 
 
身近なLINEを使って、記録するためのBotを作ります!

作ったもの

作ったLINE Botアカウントは「ししゅつさん」。支出項目と金額を入力すると、Googleのスプレッドシートに記録されます。
 
 
使い方は単純で「食費 2000」と入力すると、

スプレッドシートの投稿日付(今日の日付)の箇所に、自動で入力してくれます。

 
今日の日付以外の記録をしたい場合、「日用品 1500 9/15」と入力すると、

指定した日付の箇所に入力してくれます。

 

作り方

ユーザーがメッセージ送信した際に、裏で動いているプログラムはGoogle Apps Script(GAS)を使用しています。
 
 
GASはGoogleが提供しているスクリプトで、Googleの各サービスにアクセスしたり、APIとして公開したりできます。例えば、Googleカレンダーにアクセスして、予定を確認して、空いている時間に予定を入れることができます。
 
 
このサービスはGoogleアカウントを持っているだけで無料で使うことができます。

 

1. GASでLINE Botを作るための準備

こちらの記事をご覧ください。


 

2. Messaging APIのアクセストークン発行

Messaging APIのアカウントページにあるアクセストークンの再発行を押します。発行されたトークンはコード記述時に使うのでコピーしておいてください。
 

 

3. スプレッドシート作成

Googleドライブにアクセスし、「新規」から「Googleスプレッドシート」をクリックします。

作成されたスプレッドシートに、支出項目と日付を追加します。こちらに→テンプレート用意しています。好きに入力してもらっても構いません。
 
 
 
GASでスプレッドシートを認識するために、IDをコピーしておきます。画像の青色に選択されている箇所をコード記述時に使うのでコピーしておいてください。
 

 

4. GASにコード記述

GASに以下のコードを記述します。
 
 
1行目〜3行目に事前にコピーしておいた内容を入力します。

ACCESS_TOKEN→2. Messaging APIで発行したアクセストークンを入力
id→3. スプレッドシート作成でコピーしたIDを入力
dateSheet→3. スプレッドシート作成で作成したスプレッドシートのシート名を入力

 

 

5. Webアプリケーションとして公開

コード記述が終わったら、使える状態にするために公開します。GASメニューの「公開」から「ウェブアプリケーションとして導入」をクリックします。

 
次の画面で「アプリケーションにアクセスできるユーザー」を「全員(匿名ユーザーを含む)」を選択して、更新をクリックします。

この時に表示されるURLをコピーしておき、Messaging APIのWebhook URLに貼り付けます。

 

6. 完成!

これで完成です!お疲れさまです!
 
 
LINEでメッセージ送信(食費 1000など)すると、「記録したよ!」と返信があり、スプレッドシートに金額が入力されているはずです。
 
 
もしうまく動かない場合は、コメントかTwitterのDMください!必ず返信いたします。
 
 
その他こんなLINE Botあったらいいなとかご相談などもお待ちしております。

関連記事

  1. Programming

    MacにWindowをインストールする簡単な方法(BootCamp)

    どうも、フリーランスエンジニアのyoshikiです。&…

  2. Ionic

    【初心者向け】スマホアプリ(ハイブリッド / Ionic3)の環境構築

    どうも、フリーランスエンジニアのyoshikiです。&…

  3. Programming

    アプリ開発時に押さえておきたい2点

    ヒカラボさんで開催されたセミナー『いまさら聞けない…

  4. Android

    Kotlin 内部クラス(inner)

    明示的にクラスの前にinnerと付けることで、外側のクラスのメンバ数に…

  5. Android

    kotlin スコープ関数の使い方

    applyapplyはローカル変数を書かずにオブジェク…

コメント

    • きい
    • 2019年 2月 07日

    はじめまして。
    自分は今プログラマーを目指しているものでLINEのbotって面白そう!と
    このサイトを発見して思い、参考にしながら頑張っています。

    このページではなくて申し訳ないんですが、【誰でもできる!】自分用LINEBOTの作り方 の
    プログラムが全文公開されていなくて困っています。
    もしよろしければ見せてもらうことって可能ですか?

    よろしくお願いします。返信お待ちしています。

      • umedaman
      • 2019年 2月 07日

      コメントありがとうございます。
      プログラム公開されていませんでしたね。

      こちらご確認くださいm(_ _)m

        • きい
        • 2019年 2月 18日

        返信ありがとうございます!
        返すのがとても遅れてすみません!!

        リンクありがとうございます!
        頑張ります!!

    • Yo_4040
    • 2019年 5月 19日

    BOTをあるサイトを見て作りました。
    喋ったことAに対してAッス!って返してくれるBOTをGASを使って作りました。
    Aッス!をAだに変えようとしたのですか、GASで’ッス!’→’だ’にしてもッス!のままです。
    変更を反映させる方法を教えて下さい。
    時間によって反映するものなのでしょうか?

    • Yo_4040
    • 2019年 5月 19日

    GASを編集してから、どのくらいで反映されますか?
    反映させる方法でもあるのでしょうか?
    30分以上待っていますが、返信されません!
    なにがいけないのでしょうか?

      • umedaman
      • 2019年 7月 29日

      プログラムの公開が正しくできていない可能性があります。

      「公開」→「ウェブ アプリケーションとして導入」→「ウェブアプリケーションを無効にする」をクリックした後、

      > 3.プログラムの公開
      の手順を再度行ってください。

      その後、LINE DeveloperのWebhook URLも更新してください。

  1. この記事へのトラックバックはありません。

  1. エンジニア

    円満な退職の仕方
  2. Ionic

    【初心者向け】スマホアプリ(ハイブリッド / Ionic3)の環境構築
  3. 生き方

    交流会で300人と出会って分かった「やりたいことが見つからない人」の特徴3選
  4. Android

    Kotlin 内部クラス(inner)
  5. Android

    【コルーチン】kotlinで遅延処理
PAGE TOP