例えば、LINE公式の、 メッセージ配信>メッセージを作成 から
と配信した時、メッセージを開く前の表示は、下のように、改行が反映されず1行目~3行目が続けて表示されてしまいます。
これを、開く前は1行目だけ表示させる方法を紹介します。
ただ、PHP経由でMessaging API を使う方法なので、プログラミングの知識が無い方にはハードルが高いと思います。これ以外に、1行目のみを表示させる方法となると、多分、Lステップなど外部のツールを使う方法しか無いかもしれません。
LINE Developers への開発者情報の登録&Messaging APIの利用開始
新規でLINE公式アカウントを作成し、そこでMessaging APIを使う場合と、既存のLINE公式アカウントでMessaging APIを使う場合とでは、若干方法が異なります。
詳しくは、こちらのページを参考にしてください。
なお、一旦、既存のLINE公式アカウントを「プロバイダー」に関連付けてしまうと、解除ができない点に注意してください。上記ページにも記載があります。従って、クライアントのLINEアカウントで Messaging API を有効にする場合は、そのクライアントのためだけのプロバイダーを作成する必要があるでしょう。
それ以降の作業
それ以降の作業については、こちらのYouTube動画が詳しいです。
なお動画では、上記の「LINE Developers への開発者情報の登録&Messaging APIの利用開始」が予め完了しているものとして始まります。
右側の「ユニファース公式チャンネル」をクリックすると下の画面になります。動画は、この画面の状態から始まります。
後は、動画の通りに進めれば、LINE公式へメッセージを送れるようになるのですが、使うソースコードはこちらへ掲載のものではなく、下掲のものを使って下さい。
$mes へ入れる変数が、そのままLINE公式へ流されるメッセージとなります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
GO! <?php $mes = <<<EOD 1行目 2行目 3行目 EOD; lineBroadcast($mes); function lineBroadcast($text){ $channelToken = 'FP3giCtqUhNKbxcFV69t+xkozGlP+XWRdbZYHpjvvsOXHv33bmuVpERv8HdBMZsQbMFcepejiimlrAC+gn4eY3L+tEJ8YD/cutdX0twqDfVfDOfBt/2jOyDtvEwy6SoAMlC0LAYz454TJ2f85PhghQdB04t89/1O/w1cDnyilFU='; $headers = [ 'Authorization: Bearer ' . $channelToken, 'Content-Type: application/json; charset=utf-8', ]; $post = [ 'messages' => [ [ 'type' => 'text', 'text' => $text, ], ], ]; $url = 'https://api.line.me/v2/bot/message/broadcast'; $post = json_encode($post); $ch = curl_init($url); $options = [ CURLOPT_CUSTOMREQUEST => 'POST', CURLOPT_HTTPHEADER => $headers, CURLOPT_RETURNTRANSFER => true, CURLOPT_BINARYTRANSFER => true, CURLOPT_HEADER => true, CURLOPT_POSTFIELDS => $post, ]; curl_setopt_array($ch, $options); $result = curl_exec($ch); $errno = curl_errno($ch); if ($errno) { print_r($errno); }else{ echo 'SUCCESS'; } } ?> |
なお、 1行目<改行><改行>2行目のようにしないと、メッセージを開く前の表示に、2行目も表示されてしまうので注意が必要です。さっき気が付きましたが、行頭が揃わないのはLINE側の仕様かと思われます。
以上となります。