2017-08-09 75 views
0

嘗試記錄來自Facebook的所有傳入請求,以便我可以檢查回來的對象,以使用內置的NLP Facebook實現一些內容。在BotBuilder中記錄傳入的請求

但是,我似乎無法找到任何地方告訴我我可以console.log傳入的請求。

server.post('/api/messages', connector.listen());方法我試圖通過console.log但沒有任何反應。

const express = require('express'); 
const builder = require('botbuilder'); 

const server = express(); 

const connector = new builder.ChatConnector({ 
    appId: process.env.MICROSOFT_APP_ID, 
    appPassword: process.env.MICROSOFT_APP_PASSWORD, 
}); 

server.post('/api/messages', connector.listen()); 

server.listen(process.env.PORT || 5000,() => { 
    console.log('Running on port 5000'); 
}); 

回答

2

您可能想要使用中間件來訪問傳入/傳出消息。

查看Middleware and Logging with BotBuilder Node SDK示例。

捕獲用戶輸入

botbuilder: function (session, next) { 
     console.log(session.message.text); 
     next(); 
    } 

捕獲機器人向用戶輸出

send: function (event, next) { 
    console.log(event.text); 
    next(); 
} 

特別是,因爲要檢查的東西從Facebook來了,你可能需要重新登錄了sourceEvent屬性,這是渠道發送其原生信息的地方。

+1

乾杯人!是的,這正是我正在尋找的。 – PourMeSomeCode

+0

在我知道意圖之前會調用這個函數,是否有任何中間件在意圖之後被觸發? – PirateApp