gpt4 book ai didi

c# - Microsoft Bot Framework 地理定位

转载 作者:太空宇宙 更新时间:2023-11-03 23:10:58 25 4
gpt4 key购买 nike

如何使用 Bot Framework 获取用户地理坐标?我知道我必须使用实体,但不确定如何实际获取坐标而不是定义它们。

最佳答案

遗憾的是,没有自动获取用户位置的方法,因为这会侵犯用户隐私

但是,您始终可以请求用户的位置。取决于他们使用的聊天 channel ,他们可能会向您发送他们的位置(我在 telegram 上测试过)

作为起点,您可能需要阅读有关

如何发送位置信息

示例代码:

var reply = activity.CreateReply();
reply.ChannelData = new TelegramCustomMessage
{
Method = "sendLocation",
Parameters = new Parameters
{
ChatId = "your_chat_id",
Latitute = 0,
Longitute = 0
}
};

public class TelegramCustomMessage
{
[JsonProperty(PropertyName = "method")]
public string Method { get; set; }
[JsonProperty(PropertyName = "parameters")]
public Parameters Parameters { get; set; }
}

public class Parameters
{
[JsonProperty(PropertyName = "chat_id")]
public string ChatId { get; set; }
[JsonProperty(PropertyName = "latitute")]
public float Latitute { get; set; }
[JsonProperty(PropertyName = "longitute")]
public float Longitute { get; set; }
}

https://docs.botframework.com/en-us/csharp/builder/sdkreference/channels.html#customtelegrammessages

https://core.telegram.org/bots/api#sendlocation

如何从事件中提取地理位置

示例代码:

if (entity.Type == "Place")
{
Place place = entity.GetAs<Place>();
GeoCoordinates geoCoord = place.Geo.ToObject<GeoCoordinates>();
// geoCoord object will contains Longtitude & Latitude
}

https://docs.botframework.com/en-us/csharp/builder/sdkreference/activities.html#places

关于c# - Microsoft Bot Framework 地理定位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39218683/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com