Skip to content

Commit

Permalink
Fixed codeclimate issues
Browse files Browse the repository at this point in the history
  • Loading branch information
omenocal committed Sep 24, 2018
1 parent 9579eec commit 06f6eba
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 29 deletions.
66 changes: 38 additions & 28 deletions lib/Voxa-Chatbase.js
Expand Up @@ -26,42 +26,16 @@ function register(skill, config) {

lambdaLog.info('Sending to chatbase');

const timestamp = Date.now().toString();
const intentName = request.intent.name || request.request.type;
const slots = {};

_.each(request.intent.slots, (x) => {
slots[x.name] = x.value;
});

const userMessage = request.intent.slots ? JSON.stringify(slots) : '';
const appMessage = reply.msg.statements.join(' ');

const messageSet = Chatbase.newMessageSet()
.setApiKey(pluginConfig.apiKey)
.setPlatform(pluginConfig.platform)
.setVersion('1.0');

// PROCESSING INCOMING RESPONSE
const user = messageSet.newMessage()
.setAsTypeUser()
.setCustomSessionId(request.session.sessionId)
.setIntent(intentName)
.setMessage(userMessage)
.setTimestamp(timestamp)
.setUserId(request.user.userId);

if (_.includes(['AMAZON.FallbackIntent', 'Unhandled', 'DefaultFallbackIntent'], request.intent.name)) {
user.setAsNotHandled();
}
createMessage(messageSet, request, reply, true);

// PROCESSING OUTGOING RESPONSE
messageSet.newMessage()
.setAsTypeAgent()
.setCustomSessionId(request.session.sessionId)
.setMessage(appMessage)
.setTimestamp(timestamp)
.setUserId(request.user.userId);
createMessage(messageSet, request, reply);

// SENDING ANALYTICS
return messageSet.sendMessageSet()
Expand All @@ -74,3 +48,39 @@ function register(skill, config) {
});
}
}

function createMessage(messageSet, request, reply, isUser) {
const unhandledIntents = ['AMAZON.FallbackIntent', 'Unhandled', 'DefaultFallbackIntent'];
const timestamp = Date.now().toString();

const newMessage = messageSet.newMessage()
.setCustomSessionId(request.session.sessionId)
.setTimestamp(timestamp)
.setUserId(request.user.userId);

if (isUser) {
const slots = {};

_.each(request.intent.slots, (x) => {
slots[x.name] = x.value;
});

const intentName = request.intent.name || request.request.type;
const userMessage = request.intent.slots ? JSON.stringify(slots) : '';

newMessage
.setAsTypeUser()
.setMessage(userMessage)
.setIntent(intentName);

if (_.includes(unhandledIntents, request.intent.name)) {
newMessage.setAsNotHandled();
}
} else {
const appMessage = reply.msg.statements.join(' ');

newMessage
.setAsTypeAgent()
.setMessage(appMessage);
}
}
2 changes: 1 addition & 1 deletion run-ci.sh
Expand Up @@ -8,4 +8,4 @@ npm run lint
if [ "${CI}" = "true" ]; then
npm install coveralls
cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js
fi
fi

0 comments on commit 06f6eba

Please sign in to comment.