💬

LINE Messaging API を使用して Bot からメッセージを送信する

2023/09/11に公開

LINE Developers コンソールからプロバイダー・チャネルを作成 ~ Bot からメッセージを送信するまでの手順のメモ。

手順

LINE Developers コンソールにログイン

次のページにアクセス。

https://developers.line.biz/console/

LINEアカウントでログイン をクリック。

メールアドレスとパスワードを入力して ログイン をクリック。

プロバイダーを作成する

新規プロバイダー作成 をクリックする。

プロバイダー名 に任意のプロバイダーの名前を入力し、 作成 をクリックする。
これでプロバイダーが作成される。

チャネルを作成する

Messaging API をクリックする。

それぞれ必須項目を入力する。
それ以外の項目は必要に応じて入力する。

それぞれ入力できたら同意チェックボックスをチェックし、 作成 をクリックする。

確認ダイアログが表示されるため、 OK をクリックする。

情報利用に関する同意について のダイアログが表示されるため、 同意する をクリックする。

これでチャネルが作成される。

ボットを友達に追加する

チャネルの詳細画面で Messaging API設定 タブを選択する。
友だち追加用の QR コードが表示されるため、スマートフォン等から読み込んでボットを友達に追加する。


チャネルアクセストークンを準備する

LINE Messaging API で使用できるアクセストークンには次の 4 種類がある。

  • チャネルアクセストークンv2.1 (推奨)
  • ステートレスチャネルアクセストークン
  • 短期のチャネルアクセストークン
  • 長期のチャネルアクセストークン ( 今回はこちらを使用 )

今回は一番手軽に発行できる「長期のチャネルアクセストークン」を使用する。

チャネルの詳細画面で Messaging API設定 タブを選択し、一番下の チャネルアクセストークン セクションにある 発行 をクリックする。

これでチャネルアクセストークンが発行される。

自分のユーザー ID を確認する

自分にメッセージを送信する際に必要になるため、自分のユーザー ID を確認しておく。
チャネルの詳細画面で チャネル基本設定 タブを選択する。
下の方に あなたのユーザーID というのがあるので、控えておく。

メッセージを送信する

LINE Messaging API を使用してメッセージを送信するエンドポイントは下記。

POST https://api.line.me/v2/bot/message/push

次のコマンドは curl を使用してメッセージを送信する例。

<チャネルアクセストークン> チャネルアクセストークンを準備する」で発行したチャネルアクセストークン。
<ユーザーID> 自分のユーザー ID を確認する」で確認した自分のユーザー ID 。
curl を使用する例
$ curl -i -X POST https://api.line.me/v2/bot/message/push \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <チャネルアクセストークン>' \
    -d '{ "to": "<ユーザーID>", "messages": [{ "type": "text", "text": "Hello, world" }] }'
レスポンス
HTTP/2 200
x-xss-protection: 1; mode=block
x-line-request-id: ****
x-frame-options: DENY
x-content-type-options: nosniff
pragma: no-cache
expires: 0
date: Sat, 09 Sep 2023 06:19:01 GMT
content-type: application/json
content-length: 2
cache-control: no-cache, no-store, max-age=0, must-revalidate
server: legy

{}

メッセージを送信できました。

プログラムから LINE Messaging API を使用する

Messaging API 対応の公式 SDK も公開されている。

詳しくは下記ドキュメントを参照。

https://developers.line.biz/ja/docs/downloads/#official-sdks

まとめ

よき!!

参考

Discussion