Skip to content

jovotech/jovo-component-conduct-survey

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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.

Sample Dialog #1
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 <----

Sample Dialog #2
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 <----

Sample Dialog #3
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.

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.

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

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published