Laravel8 LINE MessagingAPIを使用してLINEユーザーにメッセージを送信する方法

LINE公式アカウント作成&設定

Laravel8 LINEのユーザー情報を取得する方法の記事の「LINEチャネルアクセストークン取得」まで行う。

Laravelサンプルコード

コントローラーに以下のメソッドを追加し、チャネルアクセストークンと送信先ユーザーIDを指定すればOK。

public function send(Request $request)
{
    $accessToken = '取得したチャネルアクセストークン';
    $userId = '送信先LINEユーザーID';

    $headers = [
        'Authorization: Bearer ' . $accessToken,
        'Content-Type: application/json'
    ];

    $data = [
        'to' => $userId,
        'messages' => [
            [
                'type' => 'text',
                'text' => 'こんにちは!'    // 送信したいメッセージをセット
            ]
        ]
    ];

    $options = [
        'http' => [
            'method' => 'POST',
            'header' => implode("\r\n", $headers),
            'content' => json_encode($data)
        ]
    ];

    $context = stream_context_create($options);
    $response = file_get_contents('https://api.line.me/v2/bot/message/push', false, $context);

    if ($response === FALSE) {
        // エラー処理
    }

    return response(null, Response::HTTP_OK);
}

注意点

LINE公式アカウントに登録済みのユーザーでないと送信出来ません。

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です