お金がないので「Heroku」を使って「Go」+「LINEBOT」を公開する

2 min read読了の目安(約2500字

はじめに

どもです。

最近、「Go」+ 「LINE BOT」 やってみたいなーと思い、AWSとかGCPも無料枠で色々やっても、よくわかんなかったので、「Heroku」というクラウドサービスを使って、公開していきたいと思います。

使い方を忘れたらめんどうなのでここに記します

今回作ったもの

初めてのLINEBotだったので、簡単なものにしたいと思いました。
TwitterAPIに登録したはいいもの、何も触ってなかったので、TwitterAPIを使ったものにする。

  • トレンドの取得
  • ツイートの検索

この2つができるLINEBotを構築しました。

↓ 作成したLINEBotさん(ここが悪い!とかはやめて)

全体の流れ

番号 やること
1 Herokuアカウントの作成(ブラウザにて)
2 CLI上でログイン
3 LINEアカウントの作成
4 Goのコーディング
5 Herokuにデプロイ

1.Herokuのアカウント作成

Herokuとは、簡単に言うと無料でアプリ公開ができるやつ。

まず、アカウントの作成をしましょう。
アクセス:https://jp.heroku.com/

無料で新規登録 より、アカウントを作成しましょう。
ログインして、ブラウザ上での操作は一旦終わり

2.Herokuのログイン(CLI)

Heroku CLI というのをインストールします。インストールは自分の開発環境に合わせてお願いします。

# heroku login

このコマンドを実行し、Logged in as メールアドレスとでたら成功

3.LINEのアカウント作成

アカウントの作成
アクセス:https://www.linebiz.com/jp/

右上のアカウントの開設 よりアカウントを作成しましょう。

アカウント開設→LINE公式アカウント開設(無料)→未認証アカウントを開設する
の手順でアカウントの作成

ログインできることの確認をする


こんな感じの画面が出るはず

LINE公式アカウントの作成

ここでいうLINE公式アカウントは、BOTのことを指していて、自分のログイン用アカウントとは別の存在
以下、手順

  1. LINE Developersにアクセスし、ログイン
  2. コンソールを選択し、プロバイダーを作成する
  3. 今回はMessaging APIを作成するため、選択
  4. プロバイダー欄にて、作成したプロバイダーを選択
  5. チャネル基本設定より、チャネルシークレットを、Messaging API設定より、チャネルアクセストークンを発行し、値をメモ(Goのコードで使います)
  6. QRコードをLINEでスキャンして友達追加
  7. LINE for Businessにアクセス
  8. ログインをする→管理画面にログインを選択
  9. 作成したアカウントを選択
  10. 応答メッセージがONになっているので、左のメニューから応答メッセージをクリックし、ステータスをオフにする

多分このくらいで大丈夫なはず。

4.Goのコーディング

まず、Go getしましょう

$ go get github.com/line/line-bot-sdk-go/linebot

サンプルがあるので参考にする

https://github.com/line/line-bot-sdk-go/blob/master/examples/echo_bot/server.go

コードに関してはまぁ適当に...

5.Herokuにデプロイ

Herokuにはgitを使ってデプロイします
注)デプロイする際、ちゃんとコードが動作しないとエラーがでます(多分)

というより、公式のスターターガイドを見ましょう

herokuに関しては、エラーが謎だったりするので、push時にエラーされたらなにか、コードが悪かったんだと思いながら、探しましょう

6.動作確認

実際にLINEBotのQRコードを読み取って、使ってみましょう。
リッチメニューや、おはようメッセージ等はLINE for Businessとかから設定しましょう

おわりに

どうでしたかね。この通りにやってもどこかで詰まるかもしれませんが、どうにかなります。僕もそうでしたから。

最近はLINEBotはかなり話題になるものだと感じています。
アイデアだけで、かなりいいものが作れるので、なにかいいアイデアがあればぜひ。

では。