NOTE: This connector only supports domestic calling. If you want to enable international calling, please ask your account manager to reach out to [email protected]
This Exotel connector enables a LeadSquared agent to have Incoming Call intimation, visualize the call details and provide Click2Call capabilities on the CRM portal.
A seamless integration for enhanced agent productivity and better experience, also allows users to configure multiple telephony accounts on a single connector.
Use cases
Integrate multiple instances/accounts of Exotel -( eg: if multiple contact centres in different regions you can now configure each of them as separate tabs)
Integrate multiple telephony providers –
If customers are using more than one telephony service provider, they can now integrate all of them into one place.
Integration features
Click to Call - Place outbound calls to customers from LeadSquared directly.
Call pop-up - All calls take place in a call pop-up that has all information related to the call
Call Log API - To pass LeadSquared UTC Call Log API URL
Call Timer API - This API is exposed to configure time-based usage for click to call. This will enable users to make calls only during preset timings:
Prerequisites
In order to have a successful integration with the LeadSquared account, you must complete the following tasks:
Sign up for an Exotel Account
Verify your account through phone or email
Get your account KYC verified
Purchase ExoPhone(VN) to be used by LeadSquared users/agents for outbound calls
Lead must be created in LeadSquared CRM
Installation/ Configuration - LeadSquared portal
Navigate to Apps>Apps Marketplace on the LeadSquared portal, search for the Universal Telephony Connector and click Install
Add/ Modify connector
Hover the cursor over the settingsicon and click Configure.
Click the Add New Connector button.
Enter a name for the new connector, then click Add.
Virtual Number
Copy the VN purchased from the Exotel portal, add the same in the Virtual Number field ( prefix with country code followed by - eg: +91-)
COC-Config - Connector config / Call timer
This API is exposed to configure the connector and schedule time-based usage for click to call which will enable users to make calls only during preset timings. This API is responsible for configuring the time limit of each call made by LeadSquared.
Call_Timer = TRUE / FALSE. By default, it will be set to FALSE. If set to TRUE, then only honour the following three parameters (else, ignore):
Call_Start_Timer - Time in format HH:MM:SS. Allow calling from this time on a day. Default Value = 00:00:00
Call_End_Timer - Time in format HH:MM:SS. Stop calling from this time of the day. Default Value = 23:59:59
Call_Allowed_Days - Array of strings to take input as [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. By default allow all 7 days.
This can be configured via the Leadsquared app available on https://my.exotel.com/{AccSID}/apps#available-apps
Note: API key token Base 64 value will be fetched only on clicking 'update'. The same value needs to be copied onto Leadsquared connector Click2call settings.
Call Route URL
To be copied from Leadsquared connector >> Lead Route V2 and configured under Call route URL on Exotel >> App Bazaar >> Leadsquared connector(UTC)
Kindly configure the LeadRouteV2 URL. Do not use Call Route API which is depreciated. Only configure the URL without query parameters (?caller_id=<phonenumber of caller/lead>&agentInfo=<pass true to retrieve entire agent information>) as mentioned
eg: Call route URL for the above screenshot would be
Agent Popup URL
To be copied from Leadsquared UTC connector >> Agent pop-up API and configured under Pop-up URL on Exotel >> App Bazaar >> Leadsquared connector(UTC)
- Click on the ‘Enable’ checkbox and save, the remaining options as pre-configured on LSQ portal.
- Enable the "Show Phone Call Popup" checkbox in Leadsquared User profile settings(https://in21.leadsquared.com/Settings/MyProfile)
Call Log URL
To be copied from Leadsquared UTC connector >> Call Log API and configured under Call log URL on Exotel >> App Bazaar >> Leadsquared connector(UTC)
Click 2 Call
Custom Headers
Base64 value of Exotel API token/ key + AccSid (Exotel Acc ID)
(available on the Leadsquared app on Exotel Appbazaar)
HTTP Method - GET
POST COC-Config( optional):
This endpoint is responsible for enabling the LeadSquared integration( already invoked by the connector app, no need to call separately):
https://api.cocreate.exotel.com/v1/coc-auth/{AccSid}/config
Sample HTTP Request:
curl --location --request POST https://api.cocreate.exotel.com/v1/coc-auth/{AccSid}/config
Request:
Query Parameters:
Sample Request:
{
"isActive": "true",
"leadsquared":{
"callLogAPIURL": "https://telephony-in21.leadsquared.com/...",
"callRouteURL" : "https://telephony-in21.leadsquared.com/...",
"agentPopupURL" : "https://telephony-in21.leadsquared.com/..."
"isActive": "true"
}
}
Response:
Sample Response:
{
"Data": {
"isActive": "true",
"token":
"<token>..."
},
"Status": "Success"
}
GET COC-Config:
This endpoint is responsible for retrieving the configs of the LeadSquared application.
HTTP Request:
curl --location --request GET 'https://api.cocreate.exotel.com/v1/coc-auth/{AccSid}/config
Request:
Response:
Sample Response:
{
"Data": {
"isActive": "true",
"leadsquared": {
"agentPopupURL": "https://telephony-in21.leadsquared.com
/...",
"callAllowedDays": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday",
"Sunday"
],
"callEndTimer": "23:59:59",
"callLogAPIURL": "https://telephony-in21.leadsquared.com
/...",
"callRouteURL": "https://telephony-in21.leadsquared.com
/...",
"callStartTimer": "00:00:00"
"isActive": "true"
},
"token": "<token>"
},
"Status": "Success"
}
Call flow configuration - Exotel portal
Login to Exotel acc(https://my.exotel.com/)
Navigate to Admin panel >> App Bazar
Click on Custom Apps (+ Create) to add a new flow
Add an ‘App Name’ and create a new flow
Call Start >> Add a Connect applet to begin the call flow
Connect Applet:
Configure DialWhom section with ‘Dial phone number(s) returned by URL’
PrimaryURL: https://api.cocreate.exotel.com/v1/leadsquared/inbound/call/dialwhom?AccSid={AccSID}
Create popup - To enable pop up on the Leadsquared portal
https://api.cocreate.exotel.com/v1/leadsquared/inbound/call/popup?AccSid={AccSID}
After the call conversation ends - Add Passthru applet
If nobody answers - Add Passthru applet
Passthru Applet (Call conversation ends)
Passthru URL - https://api.cocreate.exotel.com/v1/leadsquared/inbound/call/passthru?AccSid=xxxxx
Make Passthru asynchronous (☑)
Passthru Applet (If nobody answers)
Passthru URL -
https://api.cocreate.exotel.com/v1/leadsquared/inbound/call/passthru?AccSid=xxxx
Make Passthru asynchronous (☑)
The above call flow setup can only handle calls from existing leads that are created and available in LeadSquared. To handle new callers whose data is not available in LeadSquared, please add the below to the existing call flow. The idea is to route the new callers to the groups available in Exotel if we don’t receive any lead owner numbers from LeadSquared and we will send those call details to LeadSquared based on which they can create a lead in LeadSquared post-call completion.
Place the 2nd connect applet in the “We didn't dial anyone...” section as mentioned below.
In Dial Whom of 2nd connect applet, choose a group to dial.
You can also route the calls to a common customer care number by doing below where 1234567890 is the customer care number instead of providing a group.
Configure both agent popup and passthru with the below URLs as same as it’s configured in the 1st connect applet to send popup data and call logs to Leadsquared.
Create popup - To enable pop up on the Leadsquared portal
https://api.cocreate.exotel.com/v1/leadsquared/inbound/call/popup?AccSid={AccSID}
Passthru Applet (Call conversation ends)
Passthru URL - https://api.cocreate.exotel.com/v1/leadsquared/inbound/call/passthru?AccSid={AccSID}
Make Passthru asynchronous (☑)
Passthru Applet (If nobody answers)
Passthru URL - https://api.cocreate.exotel.com/v1/leadsquared/inbound/call/passthru?AccSid={AccSID}
Make Passthru asynchronous (☑)