Telegram Bot API
🌐 中文

sendLocation

分类: 消息 · Bot API 10.3 · 官方文档

发送位置。

返回值: 调用成功时返回 Message。

参数

参数类型必填说明
business_connection_idString可选商业连接 ID
chat_idInteger or String是聊天 ID 或 @username
message_thread_idInteger可选论坛话题 ID
direct_messages_topic_idInteger可选私信话题 ID (Bot API 10.0)
ephemeral_message_parametersEphemeralMessageParameters可选EphemeralMessageParameters JSON 对象——仅对单个用户可见的临时消息 (Bot API 10.3)
latitudeFloat是纬度
longitudeFloat是经度
horizontal_accuracyFloat可选精度(米,0-1500)
live_periodInteger可选实时位置有效期(秒,60-86400)
headingInteger可选方向(度,1-360)
proximity_alert_radiusInteger可选接近提醒半径(1-100000)
disable_notificationBoolean可选静默发送
protect_contentBoolean可选保护内容
allow_paid_broadcastBoolean可选允许付费广播
message_effect_idString可选消息特效 ID
suggested_post_parametersSuggestedPostParameters可选SuggestedPostParameters JSON 对象(用于频道)
reply_parametersReplyParameters可选ReplyParameters JSON 对象
reply_markupInlineKeyboardMarkup or ReplyKeyboardMarkup or ReplyKeyboardRemove or ForceReply可选JSON 对象:InlineKeyboardMarkup / ReplyKeyboardMarkup / ReplyKeyboardRemove / ForceReply

参数说明为简要概括,完整内容请参阅官方文档。

请求示例

curl

curl -s -X POST "https://api.telegram.org/bot$TOKEN/sendLocation" \
  -H "Content-Type: application/json" \
  -d '{"chat_id":123456789,"latitude":51.5007,"longitude":-0.1246}'

Python

import requests

TOKEN = "123456789:AAEexampleTokenReplaceWithYours"
resp = requests.post(
    f"https://api.telegram.org/bot{TOKEN}/sendLocation",
    json={
        "chat_id": 123456789,
        "latitude": 51.5007,
        "longitude": -0.1246
    },
    timeout=30,
)
print(resp.json())

JavaScript

const TOKEN = "123456789:AAEexampleTokenReplaceWithYours";
const res = await fetch(`https://api.telegram.org/bot${TOKEN}/sendLocation`, {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    "chat_id": 123456789,
    "latitude": 51.5007,
    "longitude": -0.1246
  }),
});
console.log(await res.json());

分步教程: Telegram 机器人教程:从零创建 Telegram 机器人并发送第一条消息