从Microsoft Bot Framework Channel查找Skype的用户名

时间:2016-11-09 09:21:45

标签: c# skype botframework skype-bots microsoft-skype-bot

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

我实现了如何检索Skype名称&我但是我无法检索Skype帐户的用户名。我怎样才能获得Skype帐户的用户名?

2 个答案:

答案 0 :(得分:3)

这是不可能的。自API的v3版本起,用户现在由每个机器人的唯一用户ID 表示。这是为用户提供额外的隐私层(非常像Facebook)。

在MessageActivity的From属性中,您只能找到Id和Name而不是用户名

答案 1 :(得分:0)

//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;
}