Articles in this section
Asterisk Telephony Gateway
Table of Contents
Well, there is the Phone Calls module in Vtiger CRM!
With the Phone Calls module, you can connect with your contacts by simply placing a call directly from your laptop or desktop by clicking the phone call icon. Now, you do not have to worry about tying up with a service provider, logging into CRM, and placing your calls.
How does Vtiger CRM’s Phone Calls feature work?
With the Phone Calls module installed, you can:
- Place calls directly from your desktop or laptop.
- Integrate services such as Live Chat, email, call logging, purchase history, feedback surveying, support tickets, etc.
- Use different telephony gateways to connect to other hosted telephony services such as Plivo, Exotel, ViciDial, Knowlarity, and Asterisk ver. 1.4 and 1.6 (without Vtiger Connector) and Asterisk ver. 1.8 - 11 (with Vtiger Connector).
Benefits of the Phone Calls feature
There are numerous advantages of using the Phone Calls module, a few are listed below:
- Lower investments - Integrated telephony (web-based) comes at a cheaper cost regarding hardware and handling, as calls are routed through your internet.
- Optimized resources - Vastly beneficial, especially if you are a small business with a few employees and do not want to invest more in communication.
- Better control and coordination - You can control and coordinate your communication with a single platform. No more worries about working with too many devices and losing out on contact.
- Flexibility - Call from anywhere and anytime. You or your employees can work from the office, at home, or on the road. You can log in at different times and not worry about changes in weather or social conditions.
- Increased volume of calls - Provides more lines of communication and enables handling many calls.
- Increased productivity and efficiency - You will have a single platform, your computer, to track customer data and communicate with them. You don’t have to switch between multiple applications and devices to see data, making a phone call much more efficient.
Also, you can set up two types of gateways with Asterisk:
- Normal gateway - To set this up, you must configure an extension phone number in the agent’s preferences. When you call a client, it connects to the extension number first. Agents must receive the call on the extension number to connect with the client.
- Client gateway - Outgoing calls directly connect to the clients when you use client gateways. You can set up client gateways only with Asterisk and Plivo.
Installing Phone Calls
To use the Phone Calls module, you must first install it from the Extension Store. You can access the Extension Store if you are an Admin user.
Follow these steps to install Phone Calls:
- Log in to CRM.
- Click the User Menu on the top right corner of the screen.
- Click Settings.
- Look for the Extensions section.
- Select Extension Store.
- Search for Phone Calls using the search bar.
- Click Install.
After you install the module, you can see it under Main Menu > Essentials > Conversations.
You can only configure Asterisk and other gateways if you are an Admin user. Let us look at the procedure of setting up Asterisk as a normal and client gateway.
Let us first see how Asterisk works as a normal gateway.
- CRM admins must subscribe to the Asterisk service and get their Asterisk Number.
- CRM admins must configure Asterisk in the CRM.
- Individual sales and support representatives must set up their Asterisk Extension Number in their CRM preferences.
- Incoming calls - When a customer calls on the Asterisk Number, the call is routed to all the sales and support representatives. Any one of the representatives can attend the call.
- Outgoing calls - When a sales and support representative calls a customer, the call is first routed to the representative’s own extension number. The representative must receive the call on their extension number, after which it connects to the customer.
Follow these steps to set up Asterisk as a normal gateway:
Perform these steps in Vtiger CRM
- Log in to CRM.
- Click on the User Menu in the top right corner of the screen.
- Click Settings.
- Look for the Extensions section.
- Select Phone Configuration.
- Click +Add Gateway.
- Select Asterisk from the Gateway drop-down.
- Select Active from the Gateway Status drop-down. This activates the gateway for incoming and outgoing calls.
- Set the gateway as default by selecting Yes from the Default Gateway drop-down. This step is optional.
Configure your Asterisk Server information
- Vtiger Asterisk App URL - configure server name where Vtiger Asterisk Connector is installed as shown:
Syntax : Protocol://Asterisk_Server_IP:Port
- Click the Save button.
Configure the extension number for each user
The extension number should be configured on the User preferences page for each user who can handle incoming and outgoing calls from the CRM.
- Open My Preferences.
- Configure the user number in the Asterisk Extension field under the Asterisk Configuration block.
- Number format: Enter the number format.
- Extension: [Extension_number] For example, 1002
Once the configuration is completed on both sides, i.e., Vtiger and Asterisk, you are ready to make and receive calls in the CRM.
Note: Current integration does not support PSTN-based connections (only SIP Trunks)
Vtiger Asterisk Connector
Vtiger Asterisk application acts as a gateway to connect to Vtiger CRM from the Asterisk Server. It makes it easy for Vtiger and Asterisk to interact over HTTP when incoming or outgoing calls need to be handled.
Vtiger Asterisk Connector provides the following features:
- Connect to Vtiger and notify the incoming call.
- Accept commands from Vtiger and forward it to Asterisk (Click-to-Call).
- Call recording file management.
Click here to view all the features list.
- Asterisk 1.8 onwards
- Java 1.8 onwards
- Vtiger Details [Copy these details from the Vtiger CRM PhoneCalls settings page]
VtigerServerURL - https://yourondemand.od1.vtiger.com
VtigerSecretKey - [Copy this detail from Vtiger CRM Settings > Extensions > Phone Calls page]
Installing Vtiger Asterisk Connector
- Click on the link to download Vtiger Asterisk Connector.
- Unzip the application package (VtigerAsteriskConnector.zip) to any path in Asterisk Server.
- Update VtigerAsteriskConnector/VtigerAsteriskConnector properties.
For Asterisk Server
Changes Required in Asterisk Server
- Edit Asterisk Extensions configuration file: (extensions.conf)
; --- START ---- [vtiger_inbound] exten => DID,1,Agi(agi://0.0.0.0/incoming.agi) exten => _X.,1,Agi(agi://0.0.0.0/incoming.agi) ; --- END --- --- START ---- [vtiger_outbound] exten => _X.,1,Agi(agi://0.0.0.0/incoming.agi) ; --- END ---
Add the above two contexts in extensions.conf OR include the below dial plan within the existing context (both inbound and outbound context).
exten => _X.,1,Agi(agi://0.0.0.0/incoming.agi)
- _X = pattern to accept any number as an extension
- 0.0.0.0 = VtigerAskteriskConnector_ServerIP (or the one configured in VtigerAskteriskConnector/VtigerAskteriskConnector.properties)
- DID = DID provided by your service provider.
- Edit the Asterisk cdr configuration file: (cdr_manager.conf) and modify the Enabled field as shown below:
;--- START --- enabled = yes ;--- END ---
- Edit Asterisk Manager configuration file: (manager.conf)
Add Vtiger IP in the ACL (Access Control List) under the username configured in VtigerAskteriskConnector/VtigerAskteriskConnector.properties as shown below:
;--- START --- permit = Vtiger_IP/255.255.255.0 ;--- END ---
- Add Asterisk server IP under the permit field as Vtiger Connector uses the same IP for AMI login.
;--- START --- permit = ASTERISK_IP/255.255.255.0 ;--- END ---
- Trunks: Select any one of the outbound trunk, say “XYZ” from FreePBX.
- Outbound Calls: [Should be part of trunk = XYZ]
Add new context for handling outbound calls.
; --- START ---- [vtiger_outbound] exten => _X.,1,Agi(agi://0.0.0.0/incoming.agi) ; --- END ---
Include dial plan within the existing context below, say Outgoing
exten => _X.,1,Agi(agi://0.0.0.0/incoming.agi)
- Inbound Calls:
Add new context for handling inbound calls. And make this context as default in FreePBX Settings > Asterisk SIP Settings > Default Context = vtiger_inbound.
; --- START ---- [vtiger_inbound] exten => 123456789,1,Agi(agi://0.0.0.0/incoming.agi) exten => _X.,1,Agi(agi://0.0.0.0/incoming.agi) ; --- END ---
where 123456789 - Inbound DID
Include the dial plan within the existing inbound context below, say from-internal, assuming all incoming calls are routed to this context.
[from-internal] … … exten => _X.,1,Agi(agi://0.0.0.0/incoming.agi)
Asterisk Manager Settings
AMI users added in the connector config file should have the following permissions.
;---------START---------- read = all,system,call,log,verbose,command,agent,user,config, originate write = all,system,call,log,verbose,command,agent,user,config, originate ;---------STOP
xx.xx.xx.xxx is our Vtiger Server IP, added under permit field.
permit = xx.xx.xx.xxx/255.255.255.0
yy.yy.yy.yyy is our Asterisk server IP, added under the permit field.
permit = yy.yy.yy.yyy/255.255.255.0
Go to CRM Settings – > Extensions –> Phone Calls. Add the following configuration:
- Vtiger Asterisk App URL = http://127.0.0.1: (the port you picked)
Refer VtigerAsteriskConnector config file.
ServerIP = 127.0.0.1 ServerPort = 56002 [pick a unused port] AsteriskServerIP = 127.0.0.1 AsteriskServerPort = 5038 AsteriskUserName =admin AsteriskPassword = xxxxxxxxx
- Outbound Context = Vtiger_outbound
It must match a context in extensions.conf, in that context, you must have exten => _X.,1,agi(agi://0.0.0.0/incoming.agi).
- Outbound Trunk = XYZ
It must match the trunk name added in FreePBX.
To know more about the features and benefits of this integration, please check Asterisk + Vtiger CRM.
Phone Calls Features
The Phone Calls module provides the features below.
Incoming Call Pop-up
Vtiger CRM users are notified about incoming calls through pop-up messages.
So how does this feature work? Incoming calls are matched with the lead, contact, or organization records in the CRM by matching caller numbers with numbers in the CRM.
- The lead, contact, or organization's name is displayed in the pop-up if a matching number exists.
- If a matching number does not exist, you can enter the caller's email ID in the pop-up to create a new contact record.
And if you have multiple users manning your phone calls, say a customer care team, then the incoming call pop-up is shown to all the users -
- For normal gateways, the incoming pop-up is shown to all the users who have configured the extension number in their preferences.
- For client gateways, the pop-up is shown only to the first 10 users who have installed and configured the Phone Calls extension.
When a user answers a call, the pop-up disappears for other users.
So, how is this incoming call pop-up helpful to you? Well, from the pop-up, you can:
- Search or Create a contact if there is no matching contact for an incoming call.
- Create a deal or a case from the incoming call pop-up.
- Transfer calls to other agents or reps.
- Add call notes.
Also, you can view recent call logs in related touchpoints of the contact’s record.
Click-to-Call for Outgoing Calls
This feature is available for all outgoing calls. You can directly call your contacts from the contact or organization record by adding their phone numbers to the record.
Follow these steps to place a call from a record:
- Log in to CRM.
- Click the Main Menu.
- Go to Essentials.
- Select Contacts.
- Hower on any required contact in the Listview and click on the phone icon on the available options.
- Choose a gateway (if multiple are configured and active).
The call is connected automatically. The outgoing call pop-up has a dialer icon that can be used for IVR messages.
You can add notes during or after the call to follow up with customers. These notes are available in the phone call records. You can also access these notes for reference whenever you call the customer again.
After a call is completed, you can rate the customer’s experience of talking with you using one of the five sentiments: Very Negative, Negative, Neutral, Positive, and Very Positive. Recording sentiments helps you improve customer experiences in the future.
You can automatically record all incoming calls to ensure you don't miss out on the important points you discussed with your contact. You can listen to these calls later to make notes or to review what you have discussed.
Phone Call Logs
The log of the calls (incoming and outgoing) is listed under Main Menu > Essentials > Phone Calls. You can view the following details on this screen:
- Call status, customer number, which agent or rep handled the call (mentioned in Handled By and Assigned To fields), call duration, etc.
- Details for each call can be seen when you open the call record, such as -
- Links to the voice recording
- Call notes
- Call transfer details
- Call directions, etc.
You can create a list of all your phone calls, such as missed calls, completed calls, etc., from the List View.
To learn how to create a list, click here.
Phone Call Status Values
Call status values to define the status of the calls being handled. You can see the following call statuses in the CRM.
- Ringing: For inbound calls, before the call is routed.
- In-progress: For inbound calls, after an agent or a rep picks up the call. For outbound calls, when a rep initiates a call.
- Completed: For inbound and outbound calls, after a call is completed.
- Voicemail: For inbound calls, if a call goes to voicemail.
- Hang-up: For inbound calls, if a customer hangs up the call before it is routed to a rep.
- No-answer: When it is not answered and there is no voicemail for an outbound call.
Other Telephony Gateways in Vtiger CRM
Vtiger CRM’s integrated telephony helps to connect with the following: