Create a Custom User Registration Process

This article deals with the following topics:

Overview

Luma VA provides Administrators a configurable approach to register users in Luma VA and associate them with the required chat channels. Administrators can register users through email (available out-of-the-box see Register Users through Email), SMS or another approach of their choice. When a new user sends a message to Luma from any chat channel, Luma needs to associate that user's chat account with their Luma account. The user is prompted for association with or without validation. After successful association, the user's chat account is mapped to their Luma account. The default role associated with users after registration is Self Service User. 

The Luma platform provides several key API components that can be used for a custom registration process including the following:

  • Retrieve user details like Display Name, Phone Number, Contact Id
  • Associate a verified user with a channel account with appropriate authentication status and mode.

For more information on all of these components see APIs for User Registration.

Register and Associate users through an SMS One Time Password (OTP) Verification

The following example is a custom user registration process that validates the user using a One Time Password (OTP) sent to their registered mobile number. If a mobile number is associated with an existing active Luma account, a one-time password (OTP) will be sent to their phone number. Once the number is entered the user's chat channel account is successful associated with their Luma account and they can interact with Luma.

Refer the below diagram to view the full workflow of this process.
                                                               


Before you start creating a custom user registration skill in Luma VA, ensure that you are familiar with the following articles:

Follow the below steps to create a custom registration process:

  1. Create a new custom skill, and add details such as Skill Name, Category, Description, and KPI Metrics.
  2. Under Invocation type, add User Phrases such as ‘Register in Luma,’ ‘Register user in Luma.’

  3. Design the Conversation flow:

    1. Add attribute Username to prompt the user to enter their username.

    2. Once the user has entered the user name, Luma validates is the user exists in Luma. Add the Integration operation GetContact. The operation verifies if the user exists in Luma. 

      1. Create the Integration Operation to check whether the user exists in Luma. Pass the username provided by the user to the API.

      2. If the user is found, fetch the user's Contact Id and registered mobile number from the Luma profile and store the information in Global Attributes Phonenumber and ContactID.

    3. Add a Rule to verify the user’s phone number. 

      1. If the user’s Phonenumber is found, continue executing the skill to generate OTP.

      2. If the user’s Phonenumber is not found, i.e., is NULL or empty, prompt the user that the mobile number is not available, and exit the skill. Set Execute to Exit.

    4. Generate a Random OTP number using Transformation Function- Random and store it in the global attribute OTP_Send.

    5. Use a third-party Integration operation, for example Send SMS to a number, to send the generated OTP to the user's registered mobile number.

    6. Add a global attribute OTP_Check to prompt the user to provide the OTP received on the registered phone number.

    7. Add a Rule to validate the OTP and authenticate the user.

      1. If OTP provided by the user matches the OTP sent to the user, set Execute to Continue to execute the next step.

      2. If OTP provided by the user does not match the OTP sent to the user, prompt the user that the provided OTP is invalid and exit the skill.

    8. Once the OTP is verified, add the Integration operation MapUserToChannelAccount to associate the user's contact id to the channel account.

    9. The user is now registered and associated with the respective chat channel.
    10. Add a Rule to prompt the user with Welcome Skills upon successful Registration in Luma. (Note: Branching to 'Welcome/What can you do System Skills' will be available in the next release).

Registration Process in Action

This section discusses the user registration process in Luma through a user's chat process.

Scenario 1: The User name is not available in Luma

When a new user interacts with Luma through any channel for the first time, it prompts users to register themselves. The user registration skill prompts the user to enter their username. If the entered name is not available in Luma, then the following error appears.

Scenario 2: User enters incorrect OTP

When a new user tries to register in Luma through a supported chat channel, an OTP is sent to their registered mobile number for verification. If the user enters the wrong OTP, then the following error message appears.

Scenario 3: User is authenticated through the OTP

When the user-entered username is found in Luma and has a registered mobile number, then an OTP is sent to the registered mobile number. When the user enters the correct OTP, welcome skills are shown to the registered user as shown below.

Once the user registration is complete, you can send messages to your Bot user and receive responses from your Luma Virtual Agent. In case of any issues with the configuration, please contact the Serviceaide Support team.

© 2019 Serviceaide 1-650-206-8988 http://www.serviceaide.com info@serviceaide.com