- 続きも書きました。
先程LINEからLINE Notifyという、Webサービスからの通知をLINEで受信できるサービスが発表されました。
https://notify-bot.line.me/ja/
なんだか便利そうですね。
ドキュメントをサラッと見てみた所、開発用アクセストークンを使えばメッセージ送るのは超絶楽そうだったんで丁度開いていたLaravelのプロジェクトで試してみました
Line Notifyの管理画面から開発用アクセストークンを発行する。
ログイン後画面の下の方にこのようなボタンがあるのでクリックします
するとトークン名の入力と、自分自身に送るかorどこかのグループに送るか選択出来る画面が表示されるので適当に入力します。
発行ボタンを押すとトークンが表示されるのでメモします。
※以後どこからも確認出来ないようなので注意
エンドポイントにPOSTするプログラムを書く
次にLaravelのartisanコマンドを以下のように作成します。
※丁度Laravelが開いていたのでこうしてますが、本当にただPostしてるだけです。
<Your Access Token>の部分を先程メモしたアクセストークンに置き換えてください。
<?php
namespace App\Console\Commands;
use GuzzleHttp\Client;
use Illuminate\Console\Command;
class LineNotifySample extends Command
{
protected $signature = 'line:notify';
public function handle()
{
$uri = 'https://notify-api.line.me/api/notify';
$client = new Client();
$client->post($uri, [
'headers' => [
'Content-Type' => 'application/x-www-form-urlencoded',
'Authorization' => 'Bearer <Your Access Token>',
],
'form_params' => [
'message' => 'Hello, World!'
]
]);
}
}
これで準備完了です。Artisanコマンドとして動かしてみます。
$ php artisan line:notify
「[トークン名]messageで指定した文字列」の形で表示されるようですね。
ということで超絶かんたんにLINEにメッセージが送れました。
実際Webサービス内で使う場合はユーザ毎のアクセストークンを発行する必要があるので、その部分はまた後程試してみたいと思います。