Herokuでサンプルボットを作成する

このチュートリアルでは、LINE Messaging API SDK for Javaを使って、単純なEchoボットとすべての機能を備えたKitchensinkボットをHerokuでデプロイする方法を説明します。

サンプルボットを別言語でデプロイしたい場合は、以下のLINE Messaging API SDKリポジトリを参照してください。

始める前に

以下の作業が完了していることを確認します。

Echoサンプルボットをデプロイする

受け取ったテキストメッセージをエコーするボットをデプロイする手順は、以下のとおりです。

  1. コンソールで、チャネルシークレットとチャネルアクセストークンを確認します。
  2. GitHubのsample-spring-boot-echoディレクトリのREADMEファイルに含まれる[Deploy to Heroku]ボタンをクリックします。
  3. 手順1で確認した値を使って、[App name](任意)、[LINE_BOT_CHANNEL_TOKEN]、および[LINE_BOT_CHANNEL_SECRET]の各フィールドに入力し、[Deploy app]をクリックします。次の手順で使うので、アプリ名は記録しておきます。アプリがデプロイされるまでしばらく待ちます。
  4. https://{HEROKU_APP_NAME}.herokuapp.com/callback」というURL形式で、Webhook URLをコンソールに入力します。
    注:{HEROKU_APP_NAME}は手順3で指定したアプリ名です。
  5. [Webhook送信]を選択してWebhookを有効にします(注:デフォルトではオフに設定されています)。
  6. コンソールの[チャネル基本設定]ページにあるQRコードを読み取って、ボットが関連づけられているLINE公式アカウントを友だち追加します。
  7. LINE公式アカウントにLINEでテキストメッセージを送り、同じメッセージが返ってくることを確認します。

Heroku CLIでログを確認する

ボットのログをHerokuで確認する手順は、以下のとおりです。

  1. Heroku CLIをダウンロードし、インストールします。
  2. ターミナルまたはコマンドラインアプリケーションを使って、Herokuにログインします。

    $ heroku login
    
  3. ログを確認します。注:{HEROKU_APP_NAME}は手順3で指定したアプリ名です。

    $ heroku logs --tail --app {HEROKU_APP_NAME}
    

Kitchensinkサンプルボットアプリをデプロイする

Kitchensinkサンプルボットアプリには、テンプレートやイメージマップメッセージなど、Messaging APIで利用できるすべての機能が含まれています。Kitchensinkボットをデプロイするには、Herokuダッシュボードで新しいHerokuアプリを作成します。

  1. コンソールで新しいチャネルを作成し、チャネルシークレットとチャネルアクセストークンを確認します。コンソールの[チャネル基本設定]ページにあるQRコードを読み取って、ボットが関連づけられているLINE公式アカウントを友だち追加します。
  2. GitHubのline-bot-sdk-javaリポジトリのクローンをローカルコンピューターに作成します。
  3. Procfileを開き、すべてのechokitchensinkに置き換えます。

    // Before
    web: java $JAVA_OPTS -jar sample-spring-boot-echo/build/libs/sample-spring-boot-echo-*.jar --server.port=$PORT
    // After
    web: java $JAVA_OPTS -jar sample-spring-boot-kitchensink/build/libs/sample-spring-boot-kitchensink-*.jar --server.port=$PORT
    
  4. sample-spring-boot-kitchensink/src/main/resources/application-template.ymlファイルをコピーしてapplication.ymlに名前を変更します。手順1で確認した値を使って、channel-secretフィールドとchannel-tokenフィールドに入力します。「This is tempalte file for configuration. Please copy as application.yml and change your value」の部分は削除します。

  5. Herokuダッシュボードで新しいHerokuアプリを作成して、アプリ名をコピーします。

  6. ローカルのline-bot-sdk-javaディレクトリに移動してGit™リモートを追加します。注:{HEROKU_APP_NAME}は手順5で指定したアプリ名です。

    $ heroku git:remote -a {HEROKU_APP_NAME}
    
  7. 変更をHerokuにプッシュします。

    $ git add .
    $ git commit -m 'First commit'
    $ git push heroku master
    
  8. https://{HEROKU_APP_NAME}.herokuapp.com/callback」というURL形式で、Webhook URLをコンソールに入力します。

  9. LINEを使って以下の機能をLINE公式アカウントで試してみます。

  • 「profile」と入力して、ユーザープロフィールを取得する。
  • 「buttons」、「confirm」、または「carousel」と入力して、テンプレートメッセージを送る。
  • 「imagemap」と入力して、イメージマップメッセージを送る。
  • LINE公式アカウントをグループチャットに招待する。「bye」と入力すると、グループチャットからLINE公式アカウントを退出させられます。
  • LINE公式アカウントに画像、音声、動画、位置情報などを送る。ボットはこれらのコンテンツを取得し、同じものを送り返してきます。

次のステップ

Messaging APIを使ったボットの作成方法について詳しくは、「ボットを作成する」と『Messaging APIリファレンス』を参照してください。

{{ $t("form.question.helpful") }}

{{ $t("form.question.detail") }}

{{ $t("form.question.improve") }}

{{ $t("form.info.start") }}{{ $t("form.info.link") }}{{ $t("form.info.end") }}


{{ $t("form.result.success") }}
{{ $t("form.result.error") }}
{{ $t("form.result.errorLink") }}