Developer Docs | Kommunicate

Developer Docs | Kommunicate

  • Docs

›Web

Web

  • Installation
  • Authentication
  • Conversation
  • Conversation Assignment
  • Customization
  • Localization
  • Logout
  • Troubleshooting

Android

  • Installation
  • Authentication
  • Conversation
  • Push Notification
  • Customization
  • Localization
  • Logout

iOS

  • Installation
  • Authentication
  • Conversation
  • Push Notification
  • Customization
  • Localization
  • Logout

Ionic/Cordova/Phonegap

  • Installation
  • Authentication
  • Conversation
  • Push Notification
  • Customization
  • Localization
  • Logout
  • Resolving Errors

React Native

  • Installation
  • Authentication
  • Conversation
  • Push Notification
  • Customization
  • Logout

Rich Messages

  • How To Use
  • Types of Rich Messages

Platform APIs

  • Authentication
  • Endpoints

Bots

  • Bot setup
  • Dialogflow Integration
  • Lex Integration
  • Custom Bot Integration
  • Bot Samples

Configuration

  • Email Fallback
  • Webhooks
  • Access Token URL

Authentication

Overview

In this section, you can get the instructions to authenticate the users coming to the chat. You can set how users are identified and authenticated. You can also set up lead collection forms to get information from the users before initializing the chat.

User details

You can set and update user details in kommunicateSettings function in the Kommunicate chat plugin script.

Here are the parameters you can pass in the plugin script to add the user information:

ParametersDescription
userIdThis is your user’s/visiter's ID. Kommunicate will generate a random ID if this is not defined.
userNameThis is the display name of the user. Your team will identify the user by this display name.
emailEmail ID of the user. If not online, the user will be notified by fallback emails sent to this email ID.
passwordThis will be User's password.
imageLinkThis will be the profile image of the user.
conversationTitleAll conversations will have this title. Once the conversation is assigned to one of your team, their name would come as the conversation title.
defaultMessageMetaDataThis will send defaultMessageMetaData with every message
authenticationTypeIdYou can use this to authenticate userId and password from your server Set AccessToken URL and pass the value of 'authenticationTypeId' as "0" (Optional).

User authentication

There are 3 ways to log in users into the chat.

1. Visitors

Whenever users come to your website, they are assigned a random ID by default. This behavior is best suited for anonymous users. Your anonymous users will be identified by pseudonyms. Our pseudonyms structure contains an adjective with a sea-creature name (For example, Jolly Shellfish). Add the below-mentioned setting to allow anonymous users into the chat:

ParametersDescription
appIdA unique application ID assigned to your Kommunicate account.
conversationTitleAll conversations will have this title. Once the conversation is assigned to one of your team members, their name would come as the conversation title.

NOTE: APP_ID is a unique application ID assigned to your Kommunicate account. You can get it from the Install section in Kommunicate Dashboard. Example:


var kommunicateSettings = {
    ...
    "appId": '<APP_ID>',
    "conversationTitle": '<CONVERSATION_TITLE>'
    ...
};
 

2. Pre-chat lead collection

For collecting users' contact information before initiating the chat, use the preLeadCollection method. Once configured, users will see the form on click of the chat widget launcher icon.

NOTE: At least one of the (name, email, phone) fields is required.

Adding custom properties in the pre-chat lead collection form

You can collect any custom information from the users as well. Just add the object for that particular information in the code. Let's say you want to collect your user's employment information, you can add that field in a similar manner.

Example:


var kommunicateSettings = {
     ...
    "preLeadCollection": [{
            "field": "Name", // Name of the field you want to add
            "required": true, // Set 'true' to make it a mandatory field
            "placeholder": "enter your name" // add whatever text you want to show in the placeholder
        },
        {
            "field": "Email",
            "type": "email",
            "required": true,
            "placeholder": "Enter your email"
        },
        {
            "field": "Phone",
            "type": "number",
            "required": true,
            "element": "input", // Optional field (Possible values: textarea or input) 
            "placeholder": "Enter your phone number"
        },
        {
            "field": "Employer", // You can add any number of custom properties
            "required": true,
            "element": "input",
            "placeholder": "Enter employer name"
        }
    ]
    ...
};

3. Log in your existing users on Kommunicate

If the user has already logged into your website previously, then pass the user details to Kommunicate using the following setting:

ParametersDescription
userIdIt is the unique identifier for any user, it can be anything like email, phone number or uuid from your database.
Note: Spacing and set of special characters^!$%^&*() are not accepted in this parameter.
userNameDisplay name of the user. Your team will identify the user by this display name.
emailEmail ID of logged in user.
passwordPassword of logged in user.
authenticationTypeIdDefault: 1 ,you can pass 1 for password verification from Kommunicate server and 0 for access token verification from client server.

Example:


var kommunicateSettings = {
    ...
    "userId": '<USER_ID>',
    "email": '<EMAIL_ID>',
    "password": '<PASSWORD>',
    "authenticationTypeId" : 1 // 1 for password verification from Kommunicate server and 0 for password verification from your server
    ...
};

Updating user details after the plugin is initialized

Once the chat plugin is initialized and has returned success response, then you can use Kommunicate.updateUser(userdetail) method to update the user's details.

var kommunicateSettings = {
    ...
    "onInit": function () {
        // paste your code here
        var userdetail = {
            "email": '<EMAIL_ID>',
            "displayName": '<DISPLAY_NAME>',
            "imageLink": '<PROFILE_IMAGE_URL>',
            "metadata": {      // add userinfo you want to show in userinfo section of kommunicate dashboard
                "companyName": value1,
                "designation": value2,
                "linkedInProfile": value3
            }
        };
        Kommunicate.updateUser(userdetail);
    }
    ...
};

parametersdescription
emailEmail ID to be updated.
displayNameDisplay name of the user. Your team will identify the user by this display name.
imageLinkThis will be the profile image of the user.
metadataIt is the extra information about the user. You can pass information such as the user's company name and designation. This information will be visible to your team in the Kommunicate dashboard.
← InstallationConversation →
  • Overview
  • User details
  • User authentication
    • 1. Visitors
    • 2. Pre-chat lead collection
    • 3. Log in your existing users on Kommunicate
  • Updating user details after the plugin is initialized
Facebook Open Source

Stanford Financial Square,
2600 El Camino Real, Suite 415,
Palo Alto, CA 94306

(+1) (310) 909-7458
hello@kommunicate.io

Docs
WebAndroidiOSIonic/PhonegapReact NativeXamarin
Product
Pricing and FAQsRequest Demo
Social
FacebookTwitterLinkedin
Copyright © 2019 Kommunicate.io.