參考資料 ----
Location message
<?php
// 因為網站是寄放在虛擬主機商那, 所以要指定時區
date_default_timezone_set('Asia/Taipei');
$channelAccessToken = '{從 LINE 官方帳號後台取得的 token}';
// 客戶端傳來的訊息
$bodyMsg = file_get_contents('php://input');
// 寫 log, 檔案在目前目錄下的 log 目錄內
// 檔名為 log_西元年月日.log, 一天一個檔
$sLogfile = './log/log_'.date('Ymd').'.log';
$fp = fopen($sLogfile, "a+");
fwrite($fp , print_r(date('Y-m-d H:i:s').', Recive: '.$bodyMsg."\n", true));
fclose($fp);
$obj = json_decode($bodyMsg, true);
foreach ($obj['events'] as &$event)
{
$userId = $event['source']['userId'];
// 取得 使用者傳來的訊息
$msgUser = $event['message']['text'];
// 回傳 地址位置訊息
$payload = [ 'replyToken' => $event['replyToken'],
'messages' => [
[
"type" => "location",
"title" => "高捷紅線美麗島站",
"address" => "高雄市新興區中正四路3號",
"latitude" => 22.631392,
"longitude" => 120.301803
]
]
];
// Send reply API
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.line.me/v2/bot/message/reply');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Content-Type: application/json',
'Authorization: Bearer ' . $channelAccessToken
]);
$result = curl_exec($ch);
curl_close($ch);
}
?>

沒有留言:
張貼留言