我试图理解会话,但无法从中获取任何数据

I'm trying to make sense of session, but cannot get any data out of it

目前正在连接到 Slack 的机器人中使用 LUIS。现在我正在使用交互式消息并尝试正确响应用户输入。当我从下拉列表中单击一个项目时,LUIS 将其作为消息接收。我可以使用 session.message.text 获取文本,但是我需要获取附件的 callback_id 以及发送它的频道。

我已经使用 console.log(session) 来了解会话是什么样子的。从那里我看到 session.message.sourceEvent 包含我需要的数据,但是我不能使用 indexOf()contains() 来实际推断数据。我也试过 session.message.sourceEvent.Payload 但最终得到“[object [Object]]”。我尝试搜索有关会话格式的文档,但无济于事。

下面是我 运行 console.log(session.message.sourceEvent) 时返回的内容的片段。

 { Payload: 
     action_ts: '1513199773.200354',
     is_app_unfurl: false,
        subtype: 'bot_message',
     team: { id: 'T03QR2PHH', domain: 'americanairlines' },
     user: { id: 'U6DT58F2T', name: 'john.cerreta' },
     message_ts: '1513199760.000073',
     attachment_id: '1',
        ts: '1513199760.000073' },
     actions: [ [Object] ],
     callback_id: 'map_selection1',
     original_message: 
        username: 'Rallybot',
     response_url: 'https://hooks.slack.com/actions/T03QR2PHH/287444348935/Y6Yye3ijlC6xfmn8qjMK4ttB',
        type: 'message',
   { type: 'interactive_message',
     channel: { id: 'G6NN0DT88', name: 'privategroup' },
     token: 'removed for security',
      { text: 'Please choose the Rally and Slack team you would like to map below.',
        bot_id: 'B7WDX03UM',
        attachments: [Array],
     trigger_id: '285857445393.3841091595.085028141d2b8190b38f1bf0ca47dd88' },
  ApiToken: 'removed for security' }

session.message.sourceEvent 是 javascript Object,但是 indexOfcontainsStringArray 类型的函数.

您在对象中需要的任何信息,您应该直接使用代码 <object>.<key> 来调用该值。例如,您可以尝试 session.message.sourceEvent.Payload.action_ts

此外,您可以使用Object.keys(session.message.sourceEvent)获取此对象中的所有键。