3.0.1 • Published 4 years ago

jovo-component-conduct-survey v3.0.1

Weekly downloads
-
License
Apache-2.0
Repository
-
Last release
4 years ago

Jovo Conversational Component: ConductSurvey

Getting Started

The component provides a prepackaged solution to run a survey.

It asks the user questions that are predefined in a JSON file, which they answer to with a number from 1 to 5, where 1 is really bad and 5 is really good.

Find out more about Jovo's Conversational Components

Installation

You can install the component using npm:

$ npm install --save jovo-component-conduct-survey

After that, you use the Jovo CLI to transfer the component's files to your project using the load command:

$ jovo load jovo-component-conduct-survey

Last but not least you have to include the component in your app.js:

// @language=typescript
// src/app.ts

import { ConductSurvey } from './components/jovo-component-conduct-survey';

app.useComponents(new ConductSurvey());

// @language=javascript
// src/app.js

const { ConductSurvey } = require("../components/jovo-component-conduct-survey");

app.useComponents(new ConductSurvey());

Sample Dialog

SSML tags are not included in sample dialogs, but might be included in the responses.

UserAlexa SpeechAlexa RepromptKeys
 Please help me improve by answering the {{numberOfQuestions}} following questions with a number between 1 and 5, where 1 is the worst and 5 is the best. Question 1 start, question.1
2   
 Question 2 question.2
5   
 Question 3 question.3
4   

----> Send response back <----

UserAlexa SpeechAlexa RepromptKeys
 Please help me improve by answering the {{numberOfQuestions}} following questions with a number between 1 and 5, where 1 is the worst and 5 is the best. Question 1 start, question.1
Stop   

----> Send response back <----

UserAlexa SpeechAlexa RepromptKeys
 Please help me improve by answering the {{numberOfQuestions}} following questions with a number between 1 and 5, where 1 is the worst and 5 is the best. Question 1 start, question.1
Help   
 Simply answer to the questions with a number between 1 and 5, where 1 is the worst and 5 is the best. Question x help, question.x
5   

----> run through other questions <----

Response

The component's $response has the following interface:

{
    status: "SUCCESSFUL" | "REJECTED" | "ERROR",
    data: {
        answers: {
            '1': 5,
            '2': 2
        }
    }
}

The answers object contains the user's answers to each question, where the object's key is the question number.

Find out more about Conversational Component's responses

Configuration

The component offers two configurations. First, the questions. They are specified inside the questions.json file in the src/ folder. The questions start with number 1 and continue until the last question is or until the configurable numberOfQuestions is reached.

NameDescriptionsTypeRequired
numberOfQuestionsThe number of questions that should be askednumberNo - default 3

Example:

// config.js

module.exports = {
    // ...
    components: {
        'jovo-component-conduct-survey': {
            numberOfQuestions: 5
        }
    }
};

Find out more about Conversational Component's configuration