MS Bot Framework and FB Messenger user



不确定我是否遗漏了什么,但我设置了新的Facebook Messenger功能,在我现有的Skype Bot框架上运行,一切都很完美。

我面临的唯一问题是,我似乎无法获得向我的机器人发送消息的用户名。我尝试了发件人字段(ID、地址、姓名等)以及参与者字段,但它们都返回了一个数字。

描述发生的情况

用户登录到一个网站,填写他们的数据,并为Skype和Facebook提供他们的唯一ID,这些ID保存在我的后端。一旦完成,他们就可以通过机器人程序框架发送消息,我会选择谁发送了消息,并回复他们特定的详细信息

因此,我需要将facebook用户映射到我的后端用户。

我假设脸书的用户名会被发送出去,因为大多数人都知道他们的用户名是什么

有人知道我在哪里能买到这个吗?

感谢

我查看了当前的代码;现在,Facebook发送给我们的消息不包括用户名,只包括Facebook用户Id,所以你给了我们所拥有的(请参阅message对象上的ChannelData)。

有一个配置文件API,我们可能可以调用作为额外的往返行程;但目前我们还没有这么做。

对于每个对话框,都有一个session对象。您可以在session.message.participants.to.from 下找到用户的友好名称

http://docs.botframework.com/sdkreference/nodejs/interfaces/_botbuilder_d_.imessage.html

如果像你说的那样,你得到的只是一个"数字"。该号码应该是发件人id。您也应该在channelData.sender.id中看到相同的号码。尝试对facebook进行第二次查询以获取用户信息。我试过了,效果很好。

https://developers.facebook.com/docs/messenger-platform/implementation#user_profile_api