Учу php, пытаюсь написать бота для телеграм. Запрашиваю геолокацию через кнопку с
request-location
В ответе приходит точка на карте.Не понимаю как обработать её и записать в переменные
$lat,$lon
код:
$output = json_decode(file_get_contents('php://input'),true);
$id = $output['message']['chat']['id'];
$token='***';
$ApiKey='***';
$message= $output['message']['text'];
$Location=$output['longitude']['latitude'];
switch ($message) {
case '/start':
$message = 'Привет! Нажми отправить местоположение чтобы начать.';
sendMessage($token, $id, $message . KeyboardMenu());
break;
case $Location:
$lat = $Location['latitude'];
$lon = $Location['longitude'];
if (isset($Location['longitude']['latitude']))
{
$message = "Отлично! ваше местонахождение определено." .$lat. $lon;
}
else
{
$message ="error";
}
sendMessage($token, $id, $message,$lat,$lon . KeyboardMenu().get_address($lat, $lon, $ApiKey));
break;
default:
$message='Неправильный запрос.';
sendMessage($token,$id,$message.KeyboardMenu());
function sendMessage($token, $id,$message)
{
file_get_contents("https://api.telegram.org/bot" . $token . "/sendMessage?
chat_id=" . $id . "&text=".$message);
}
function KeyboardMenu(){
$buttons = [[['text'=>"Отправить местоположение",
'request_location'=>true]],[['text'=>"Показать автосервисы"]],[['text'=>"Справка"]]];
$keyboard =json_encode($keyboard=['keyboard' => $buttons,
'resize_keyboard' => true,
'one_time_keyboard'=> false,
'selective' => true]);
$reply_markup ='&reply_markup='.$keyboard.'';
return $reply_markup;
}
Спасибо!