从微软Bot框架频道找到skype的用户名

本文关键字:skype 用户 微软 Bot 框架 频道 | 更新日期: 2023-09-27 18:16:59

我使用Microsoft bot Framework (version 3.0.0.59)实现了Skype的bot应用程序。

我实现了如何检索Skype名称&Id,但我无法检索Skype帐户的用户名。我如何获得我的Skype帐户的用户名?

从微软Bot框架频道找到skype的用户名

不可能。由于API的v3版本,用户现在由每个bot的唯一用户ID表示。这是为了给用户提供一层额外的隐私(很像Facebook)。

在MessageActivity的From属性中,你只能找到Id和Name,但不能找到username

//Answer
if(activity.From.Name != null)
string userName= activity.From.Name;
//Example
public async Task<HttpResponseMessage> Post([FromBody]Activity activity)
{
    if (activity.Type == ActivityTypes.Message)
    {
    string userName= "";
    if(activity.From.Name != null)
    userName= activity.From.Name;//Here we are getting user name
    ConnectorClient connector = new ConnectorClient(new Uri(activity.ServiceUrl));
    Activity reply = activity.CreateReply(userName);
    activity.TextFormat = "markdown";
    await connector.Conversations.ReplyToActivityAsync(reply);
    }
    else
    {
    HandleSystemMessage(activity);
    }
    var response = Request.CreateResponse(HttpStatusCode.OK);
    return response;
}