使用API​​从电报中获取当前位置

时间:2018-12-11 17:09:22

标签: api gps telegram

我有一个电报机器人,我在其中使用自定义按钮与用户进行交互。现在,我需要使用GPS信息从当前位置获取信息。是否可以使用电报API从设备获取纬度和经度?

这是我的PHP代码:

  if($text == '/start')
  {
    $botid = $xtokenid;
    $chatid = $chat_id;
    $reply = "Bem vindo ao EYB18, canal de informações online!";
    $url = "https://api.telegram.org/bot$botid/sendMessage";

    $keyboard = array('keyboard' => array(array("Localização")),'resize_keyboard' => true,'one_time_keyboard' => false,'request_location' => true);

    $postfields = array('chat_id' => "$chatid",'text' => "$reply",'reply_markup' => json_encode($keyboard));

    $str = str_replace('\\\\', '\\', $postfields);

    print_r($str);
    if (!$curld = curl_init()) {
    exit;
    }

    curl_setopt($curld, CURLOPT_POST, true);
    curl_setopt($curld, CURLOPT_POSTFIELDS, $str);
    curl_setopt($curld, CURLOPT_URL,$url);
    curl_setopt($curld, CURLOPT_RETURNTRANSFER, true);

    $output = curl_exec($curld);

    curl_close ($curld);
  }

Tks。

1 个答案:

答案 0 :(得分:0)

您正在发送一个键盘,它将要求用户发送其位置。如果他们按下此按钮,或者即使他们从地图发送了任何位置,您的机器人也将获得包含位置对象的消息对象。位置对象包含经度和纬度。

这是消息对象属性的完整列表:https://core.telegram.org/bots/api#message

这里是位置对象:https://core.telegram.org/bots/api#location