3.0.2 • Published 3 years ago

jovo-component-get-phone-number v3.0.2

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

Jovo Conversational Component: GetPhoneNumber

Getting Started

The component provides a prepackaged solution to get your user's phone number.

Find out more about Jovo's Conversational Components

Installation

You can install the component using npm:

$ npm install --save jovo-component-get-phone-number

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

$ jovo load jovo-component-get-phone-number

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

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

import { GetPhoneNumber } from './components/jovo-component-get-phone-number';

app.useComponents(new GetPhoneNumber());

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

const { GetPhoneNumber } = require('../components/jovo-component-get-phone-number/index');

app.useComponents(new GetPhoneNumber());

Sample Dialog

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

UserAlexa SpeechAlexa RepromptKeys
 Please tell me your phone number. start-question
It's 0123456789   
 OK, I got {{phoneNumber}}. Is that correct?Is your phone number really {{phoneNumber}}confirm-question, confirm-reprompt
Yes.   
UserAlexa SpeechAlexa RepromptKeys
 Please tell me your phone number. start-question
It's 0123456789   
 OK, I got {{phoneNumber}}. Is that correct?Is your phone number really {{phoneNumber}}confirm-question, confirm-reprompt
No   
 Alright, let's try again. What is your phone number?Please tell me your phone number digit by digit.confirm-reject, reprompt
It's 0123456789   
 OK, I got {{phoneNumber}}. Is that correct?Is your phone number really {{phoneNumber}}confirm-question, confirm-reprompt
Yes.   
UserAlexa SpeechAlexa RepromptKeys
 Alright, let's try again. What is your phone number?Please tell me your phone number digit by digit.confirm-reject, reprompt
It's 0123456789   
 OK, I got {{phoneNumber}}. Is that correct?Is your phone number really {{phoneNumber}}confirm-question, confirm-reprompt
No   
 Unfortunately, I have some problems understanding your phone number. Let's slow down, please tell me the first three digits of your number. sequence-start
012   
 I got {{sequence}}. Is that correct? sequence-confirm-question
Yes   
 Great! Please continue with the next three digits of your phone number.Please tell me the next three digits of your phone number.sequence-question, sequence-reprompt
345   
 I got {{sequence}}. Is that correct? sequence-confirm-question
Yes   
 Great! Now tell me the last four digits please.Tell me the last four digits of your phone number please.sequence-last-digits-question, sequence-last-digits-reprompt
6789   
 I got {{sequence}}. Is that correct? sequence-confirm-question
Yes   
UserAlexa SpeechAlexa RepromptKeys
 Alright, let's try again. What is your phone number?Please tell me your phone number digit by digit.confirm-reject, reprompt
It's 0123456789   
 OK, I got {{phoneNumber}}. Is that correct?Is your phone number really {{phoneNumber}}confirm-question, confirm-reprompt
No   
 Unfortunately, I have some problems understanding your phone number. Let's slow down, please tell me the first three digits of your number. sequence-start
012   
 I got {{sequence}}. Is that correct? sequence-confirm-question
No   
 Oh, sorry! Could you say these digits again? sequence-confirm-reject

<---> continue just like in dialog #3 <--->

Response

The component's $response has the following interface:

{
    status: "SUCCESSFUL" | "REJECTED" | "ERROR",
    data: {
        phoneNumber: "string" // E164 format
    }
}

The data property will only be defined, if the component was successful!

Find out more about Conversational Component's responses

Configuration

The component only provides one option you can configure. It's the numberOfFails property, determining when the component should switch to the sequence mode, where it asks the user to input their phone number in a sequence of 3 digits, instead of the whole number at once.

Inside your project's config.js override the default value, which is 3:

// config.js

module.exports = {
  // ...
  components: {
    'jovo-component-get-phone-number': {
      numberOfFails: 5,
    },
  },
};

Find out more about Conversational Component's configuration