jovo-component-conduct-survey
v3.0.1
Published
The component provides a prepackaged solution to run a survey.
Downloads
1
Readme
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.
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.
User | Alexa Speech | Alexa Reprompt | Keys --- | --- | --- | - | 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 <----
User | Alexa Speech | Alexa Reprompt | Keys --- | --- | --- | - | 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 <----
User | Alexa Speech | Alexa Reprompt | Keys --- | --- | --- | - | 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.
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.
Name | Descriptions | Type | Required
--- | --- | --- | ---
numberOfQuestions
| The number of questions that should be asked | number | No - default 3
Example:
// config.js
module.exports = {
// ...
components: {
'jovo-component-conduct-survey': {
numberOfQuestions: 5
}
}
};
Find out more about Conversational Component's configuration