位置情報の送信
位置情報の送信には、LocationMessageBuilderを使います。
index.phpの最後?>より前に以下のコードを追記してください。
function replyLocationMessage($bot, $replyToken, $title, $address, $lat, $lon) {
$response = $bot->replyMessage($replyToken, new \LINE\LINEBot\MessageBuilder\LocationMessageBuilder($title, $address, $lat, $lon));
if (!$response->isSucceeded()) {
error_log('Failed!'. $response->getHTTPStatus . ' ' . $response->getRawBody());
}
}
?>
引数として住所と緯度経度の両方を指定する形になりますが、地図には住所は関係なく緯度経度をもとにしてピンが刺されるのでご注意ください。
動作確認のため、以下のようにコードを変更します。
replyImageMessage($bot, $event->getReplyToken(), "https://" . $_SERVER["HTTP_HOST"] . "/imgs/original.jpg", "https://" . $_SERVER["HTTP_HOST"] . "/imgs/preview.jpg");
replyLocationMessage($bot, $event->getReplyToken(), "LINE", "東京都渋谷区渋谷2-21-1 ヒカリエ27階", 35.659025, 139.703473);
function replyTextMessage($bot, $replyToken, $text) {
再びデプロイして、適当にBotに呼びかけてみましょう。Botから位置情報が送られます。タップするとアプリ内の地図で詳細を確認することができます。
右上のメニューから経路検索へも遷移できるので非常に便利です。
