実施環境:
Windows 11 Home 21H2
curl 8.0.1 (Windows)
iOS 16.7.2
LINE 13.18.1
0. 概要
パソコンやスマホでメッセージのやり取りをしようとするとき、その選択肢は非常に多岐に渡ります。
電子メールを用いる人もいるでしょうし、 SMS という選択肢もあるでしょう。
アプリも非常に様々なものが存在します。
ただ、現在の、特に日本においてメッセージングアプリといえば、おそらく大半の人が LINE を思い浮かべるのではないかと思います。
さて、その LINE のサービスの1つに、 LINE Notify というサービスがあります。
これは、外部のプログラムと LINE を連携することができるサービスです。
これを用いれば、外部のプログラムから LINE にメッセージを投稿することができます。
今回はこの LINE Notify を用いて、 Windows の DOS コマンドライン上から LINE にメッセージを投稿してみます。
1. 投稿先トークルームの作成
LINE Notify ではトークンを用いてプログラムと LINE を連携しますが、このトークンはトークルームごとに発行されます。
そのため、今回は事前にスマホの LINE アプリ側で専用のトークルームを作成しておきます。
まずは、スマホの LINE アプリで、「トーク」⇒「トークルームを作成」を選択します。
「グループ」を選択します。
「友だちを選択」画面では、誰も選択をせずに「次へ」を押します。
トークルーム名は何でもよいのですが、今回は「テスト用」にして、「作成」を押します。
これで、メンバーが自分だけのトークルームが作成されました。
トークルーム名の後ろにつく「(1)」は、メンバーの数です(今回は自分だけなので1人)。
2. LINE Notify にログイン
次に、 Web から LINE Notify にログインします。
LINE のアカウントがあれば、特別なアカウント作成などは不要です。
今回は、 QR コード方式でログインしてみましょう。
まずは、ブラウザで以下のサイトに接続します。
右上の「ログイン」を選択します。
「 QR コードログイン」を選択します。
すると、 QR コードが表示されます。
これをスマホの LINE アプリから読み込むことで、メールアドレスやパスワードを入力しなくともログインが可能です。
スマホの LINE アプリで、「ホーム」⇒「友だち追加」を選択します。
「 QR コード」を選択し、先ほど表示された QR コードを読み込みます。
読み込みに成功すると、ブラウザ側に認証番号が表示されるので、それをスマホアプリ側で入力して「本人確認」を押します。
これで、 LINE Notify にログインできました。
3. トークンの発行
さて、いよいよトークンを発行していきます。
まずは先ほどログインした LINE Notify のページの右上にログインユーザ名が表示されているので、そこから「マイページ」を選択します。
少し下に進むと「アクセストークンの発行(開発者向け)」という項目があるので、そこの「トークンを発行する」を押します。
トークン名は何でもよいですが、今回は「テストトークン」としましょう。
トークルームに先ほど作成した「テスト用」を選択し、「発行する」を押します。
これで、トークンが発行されます。
この画面を閉じるとトークンは二度と表示できませんので、きちんと保管しておいてください。
4. トークルームへの招待
これでいよいよ投稿...とはならず、あと1つ、必要な作業が残っています。
それは、トークルームに「 LINE Notify 」を招待することです。
トークンを用いた投稿のアカウントは一律「 LINE Notify 」になるので、このアカウントがトークルームに投稿できるようにしておく必要があります。
まずはスマホの LINE アプリで先ほど作成した「テスト用」のトークルームを開き、右上の「設定」を選択します。
「招待」を選択します。
すると友だちのリストが表示されますが、先ほどトークンを発行した段階で「 LINE Notify 」が友だちとして自動で登録されているはずです。
なので、リスト内の「 LINE Notify 」を選択し、「招待」を押します。
これで、トークルームに「 LINE Notify 」を招待できました。
5. 投稿
さて、いよいよ投稿を行います。
今回は手っ取り早く、 Windows のコマンドプロンプト上で curl コマンドを実行して投稿します。
なお、今回使用する Windows 11 は標準で curl コマンドが搭載されていますが、古いバージョンの Windows の場合は curl コマンドが標準で搭載されていないこともあるので注意してください。
コマンドは、以下のドキュメントのサンプルをほぼそのまま用います。
ただし、「 ' (シングルクォート)」だけは「 " (ダブルクォート)」にしないとうまく動作しないので注意してください。
status で 200 が返却されれば成功です。
C:\Users>curl -X POST -H "Authorization: Bearer 発行したトークン" -F "message=foobar" https://notify-api.line.me/api/notify
{"status":200,"message":"ok"}
C:\Users>
スマホの LINE アプリで「テスト用」のトークルームを見ると、確かに message に指定した文字列が投稿されていることがわかります。
6. 備考
今回は単なる文字列を投稿しましたが、 LINE Notify では画像やスタンプの投稿も可能です。
LINE Notify についてより詳しく知りたければ、以下の公式ドキュメントが参考になるかと思います。