jazzedge
7/8/2017 - 1:24 PM

Bot logging middleware

Bot logging middleware

// 01. First example
// https://github.com/Microsoft/BotBuilder/blob/master/Node/examples/basics-logging/app.js
// Install logging middleware
bot.use({
    botbuilder: function (session, next) {
        if (/^log on/i.test(session.message.text)) {
            session.userData.isLogging = true;
            session.send('Logging is now turned on');
        } else if (/^log off/i.test(session.message.text)) {
            session.userData.isLogging = false;
            session.send('Logging is now turned off');
        } else {
            if (session.userData.isLogging) {
                console.log('Message Received: ', session.message.text);
            }
            next();
        }
    }
});

//02. Second example

const logUserConversation = (event) => {
    console.log('Logged message: ' + event.text + ', user: ' + event.address.user.name);
};

// Middleware for logging
// https://github.com/Microsoft/BotBuilder-Samples/blob/master/Node/capability-middlewareLogging/app.js
bot.use({
    receive: function (event, next) {
        logUserConversation(event);
        next();
    },
    send: function (event, next) {
        logUserConversation(event);
        next();
    }
});