async function finishGame()

in chat-bot/bot/bot.js [129:163]


async function finishGame(intentRequest) {
    var sessionAttributes = intentRequest.sessionAttributes;
    var score = parseInt(sessionAttributes.currentScore, 10);
    var currentQuestionId = parseInt(sessionAttributes.currentQuestion, 10);
    var currentSlot = numToWords.toWords(currentQuestionId);

    const currentQuestionData = await getQuestion(currentQuestionId);

    // Check the answer, add to score if correct
    var isCorrect = false;
    var userAnswer = intentRequest.currentIntent.slots[currentSlot];
    // null user answer means a string response did not match any of the sample utterances
    if (userAnswer) {
        const answerData = await answerQuestion(currentQuestionId, userAnswer);
        console.log(answerData.data);
        isCorrect = answerData.data.result;
    }

    var messageContent = "";

    if (isCorrect) {
        score += currentQuestionData.data.points;
        messageContent += "That is correct! ";
    } else {
        messageContent += "Incorrect! ";
    }
    messageContent += `Thanks for playing! Your final score is ${score} points`;

    var message = {
        contentType: 'PlainText',
        content: messageContent
    };

    return close(sessionAttributes, 'Fulfilled', message);
}