在Bot Framework中从Skype接收传入消息时,除了消息文本外,没有ChannelData

时间:2018-09-19 11:42:38

标签: botframework bots skype

当我从Telegram收到消息时,我在Activity.ChannelData字段中获得了有关帐户的详细信息(例如用户名,session_id等)。

{
  "update_id": ,
  "callback_query": {
    "id": "",
    "from": {
      "id": ,
      "is_bot": false,
      "first_name": "",
      "last_name": "",
      "username": "",
      "language_code": ""
    },
    "message": {
      "message_id": ,
      "from": {
        "id": ,
        "is_bot": true,
        "first_name": "",
        "username": ""
      },
      "chat": {
        "id": ,
        "first_name": "",
        "last_name": "",
        "username": "",
        "type": "private"
      },
      "date": ,
      "text": "Example text"
    },
    "chat_instance": "",
    "data": ""
  }
}

但是关于Skype,我所看到的只是消息文本,仅此而已。

{  "text": "Example text"}

如何知道,谁是向我发送消息的人?

更新:该名称不应该与用户名完全相同,任何其他数据(如用户唯一ID)都可以容纳。

1 个答案:

答案 0 :(得分:2)

不幸的是,返回的内容是特定于渠道的,由渠道开发人员确定。这不是由Azure Bot Service或Bot Framework决定的。

关于知道谁发送了消息,这是不可能的。 Skype仅为每个用户返回唯一的ID,以便为隐私问题提供一层保密性。