LINE Notifyを使ったPHPによるメッセージ送信

LINE Notifyを使ったPHPによるメッセージ送信 プログラミング

「PHPからLINEを自動的に送信したい」
「LINEのAPIがよくわからない・・・」

このような場合には、この記事の内容が参考となります。
この記事では、LINE Notifyを使ったPHPによるメッセージ送信を解説しています。

本記事の内容

  • LINE Notifyとは?
  • PHPでLINE Notifyを利用するのに必要なモノ
  • 動作確認(LINE自動通知)

それでは、上記に沿って解説していきます。

LINE Notifyとは?

LINE Notify
https://notify-bot.line.me/ja/

上記ページでは、次のように説明が記載されています。

Webサービスと連携すると、LINEが提供する公式アカウント"LINE Notify"から通知が届きます。
複数のサービスと連携でき、グループでも通知を受信することが可能です。

この説明は、少しわかりにくいです。
あと、Webサービスの登録も必要かどうかもよくわかりません。

安心してください。
LINEのアカウントさえあれば、誰でも簡単に利用できます。

そして、Webサービスの登録も不要です。
ログインした後の画面にデカデカと次のように表示されています。

このLINE Notify(API)には、大きく2つのAPIが用意されています。

  • 認証系
  • 通知系

この記事で取り上げるのは、通知系の方です。
そして、公式マニュアルページに行くと次のような画像が出てきます。

OAuth2というキーワード出てきます。
これらを見ると、面倒臭いヤツだと思うかもしれません。

しかし、安心してください。
面倒臭いヤツは、認証系だけです。

通知系は、何も難しいところはありません。
決まったフレンド(自分含む)に送るだけなら、簡単です。

以上、LINE Notifyに関する説明でした。
次は、PHPでLINE Notifyを利用するのに必要なモノを確認します。

PHPでLINE Notifyを利用するのに必要なモノ

今回は、PHPからLINE Notifyを利用します。
その際に必要となるモノは、次の2つです。

  • アクセストークン
  • cURL関数

アクセストークンは、認証済みユーザーを識別するための文字列です。
LINE Notifyのページ上でアクセストークンを発行します。

アクセストークンの発行の方法は、次の記事で詳しく解説しています。

また、cURL関数については次の記事で説明しています。
cURL関数が利用できない場合は、参考にしてください。

以上、PHPでLINE Notifyを利用するのに必要なモノを説明しました。
最後は、発行したアクセストークンを用いて動作確認を行います。

動作確認(LINE自動通知)

LINE Notify API Document
https://notify-bot.line.me/doc/ja/

LINE Notify API仕様は、上記ページに記載されています。
この仕様に基づいて、動作確認を行います。

今回は、通知系のAPIを利用します。

<?php

require 'vendor/autoload.php'; 

$token = "LINE Notifyで発行したアクセストークン";


// リクエストヘッダ作成
$message = "テスト。\nLINE Notifyを利用。";
$query = http_build_query(['message' => $message]);
$header = ['Authorization: Bearer ' . $token];
$ch = curl_init('https://notify-api.line.me/api/notify');
$options = [
    CURLOPT_RETURNTRANSFER  => true,
    CURLOPT_POST            => true,
    CURLOPT_HTTPHEADER      => $header,
    CURLOPT_POSTFIELDS      => $query
];

curl_setopt_array($ch, $options);
$response = curl_exec($ch);
curl_close($ch);

echo $response;

?>

上記を実行して、次のように表示されれば成功です。

{"status":200,"message":"ok"}

アクセストークンが無効であれば、次のように表示されます。

{"status":401,"message":"Invalid access token"}

無効の場合は、設定したアクセストークンを確認してみましょう。
なお、成功の場合は、LINEアプリ上で次のように表示されています。

アクセストークン発行時に入力したトークン名が、先頭に表示されています。

以上、動作確認の説明でした。

タイトルとURLをコピーしました