Archives October 2021

How to – integrate vTiger 7.3 into Vicidial

How to – integrate vTiger 7.3 into Vicidial

This article will go over how to complete a vTiger integration into Vicidial, I have done it and its working on version 7.3. I would like to go a little deeper on this than the original coder wrote up but I will do that over time with pictures and such. I did NOT write this up, this was all done by mstopkey from the vicidial forums.

Credit for this goes to mstopkey from the Vicidial forum: http://www.vicidial.org/VICIDIALforum/viewtopic.php?f=5&t=38869&p=145760&hilit=vtiger+integration#p136775

vTiger Integration
vTiger integration 7.3

VTIGER INTEGRATION WITH VICIDIAL STEPS

Features Working:
1. Inbound dialer call screen pop existing Lead/Contact/Prospect/Organization in Vtiger. If “Entity” does not exist in Vtiger it will insert new Lead.
2. Inbound dialer call logging in Vtiger.
3. Outbound dialer call functions the same as feature # 1.
4. Outbound dialer call logging in Vtiger.
5. Agent login to Vicidial also launches Vtiger and logs in.
6. Vtiger mobile App sync.
7. Vtiger mobile App click to call from cell phone and logging call in Vtiger.

Features not working:
1. Sync Vicidial users to Vtiger. (Currently, manually setup same username/password in Vtiger and Vicidial. Set Vicidial phone extension in Vtiger user)
2. Click to dial from Vtiger through Vicidial.

Future features:
1. Ability for one instance Vicidial to integrate with mutliple Vtiger instances at dialer Inbound Group and Campaign
2. Call recordings from Vicidial available in Vtiger

Vtiger Integration & Configuration:


1. Install Vtiger Open Source 7.3. Follow the on-screen instructions. (If need click to dial from Vtiger, install on same web server as Vicidial web server) “Feature not working yet”
2. COPY file /vtigercrm/includes/http/Request.php to /vtigercrm/includes/http/Request.php.ORIGINAL, this way you have a backup file to restore incase of any problems editing Request.php
3. Edit file /vtigercrm/includes/http/Request.php . On line 213 comment out “throw new Exception(‘illegal request’);” by placing //in front of it. If you don’t, the login request from Vicidial will fail.
4. Create Vtiger users with same usernames and passwords as in Vicidial. Also enter Vicidial phone extension in user field “CRM Phone extension”.

Vicidial Configuration:
1. Update/Upgrade to the Vicidial version and build listed above. BACK IT UP FIRST!
2. Make sure SVN trunk is up to date.
3. On your vicidial web server, COPY file /srv/www/htdocs/vicidial/vtiger_search.php to /srv/www/htdocs/vicidial/vtiger_search.php.ORIGINAL
4. Edit file /srv/www/htdocs/vicidial/vtiger_search.php (NOTE: Leads are no longer in Sales, they are in Marketing. And, Vtiger no longer uses ‘tabs’, it uses ‘app’ for Module lookups)
(a) Comment out line 339 with # in front of it. $account_URL = “$vtiger_url/index.php?module=Calendar&action=EditView&return_module=Accounts&return_action=DetailView&record=$activityid&activity_mode=Events&return_id=$vendor_id&parenttab=SALES”;
(b) On line 340, comment out } with # in front of it.
(c) On line 344 change from $account_URL = “$vtiger_url/index.php?module=Accounts&action=DetailView&record=$vendor_id&parenttab=Sales”; TO $account_URL = “$vtiger_url/index.php?module=Accounts&view=Detail&record=$vendor_id&app=SALES”;
(d) Comment out lines 523 through 526 with # in front of them. (FIRST ACTION OF ELSE WILL NOT WORK. ONLY NEED THE ACTION AFTER ELSE. THIS WILL BE REFINED IN FUTURE)
(e) On line 528 change from $account_URL = “$vtiger_url/index.php?module=Accounts&action=DetailView&record=$accountid&parenttab=Sales”; TO $account_URL = “$vtiger_url/index.php?module=Accounts&view=Detail&record=$accountid&app=SALES”;
(f) On line 577 change from $account_URL = “$vtiger_url/index.php?module=Vendors&action=DetailView&record=$vendorid&parenttab=Inventory”; TO $account_URL = “$vtiger_url/index.php?module=Vendors&view=Detail&record=$vendorid&app=INVENTORY”;
(g) Comment out lines 735 through 738 with # in front of them. (FIRST ACTION OF ELSE WILL NOT WORK. ONLY NEED THE ACTION AFTER ELSE. THIS WILL BE REFINED IN FUTURE)
(h) On line 740 change from $account_URL = “$vtiger_url/index.php?module=Leads&action=EditView&record=$leadid&parenttab=Sales”; TO $account_URL = “$vtiger_url/index.php?module=Leads&view=Detail&record=$leadid&app=MARKETING”; (YES, THIS IS CURRENTLY REDUNDANT LEADS LOOKUP AS LEADS ARE ONLY IN SALES MODULE. WILL FIX IN FUTURE. MAY CUT THIS ONE OUT)
(i) Comment out lines 843 through 846 with # in front of them. (FIRST ACTION OF ELSE WILL NOT WORK. ONLY NEED THE ACTION AFTER ELSE. THIS WILL BE REFINED IN FUTURE)
(j) On line 848 change from $account_URL = “$vtiger_url/index.php?module=Leads&action=DetailView&record=$leadid&parenttab=Sales”; TO $account_URL = “$vtiger_url/index.php?module=Leads&view=Detail&record=$leadid&app=MARKETING”;
5. Go to Vicidial Admin/System Settings
(a) Set Enable Vtiger Integration: to 1. (Do NOT click on “Click here to Synchronize users with Vtiger”)
(b) In field Vtiger DB Server IP: enter your Vtiger Database server IP address.
(c) In field Vtiger DB Nmae: enter the name of your Vtiger database.
(d) In field Vtiger DB Login: enter the Vtiger database username.
(e) In field Vtiger DB Password: enter the password for Vtiger DB user.
(f) In field Vtiger URL: enter the URL of your Vtiger instance. Example, http://mycrm.com
6. Go to detail view of your campaign.
(NOTE 1: These settings are how we are using it. Upon agent login to Vicidial, Vtiger opens in new window and agent is automatically logged in.)
(NOTE 2: Do NOT try to run the old vicidial-vtiger patch files.)
(NOTE 3: Do NOT try to synchronize Vicidial users with Vtiger. We are setting up same usernames and passwords in both systems.)
(a) In field Web Form: enter the URL of your Vicidial web server/vtiger_search.php. Example, http://192.168.1.1/vicidial/vtiger_search.php
(b) In field Web Form Target: enter vdcwebform
(c) In field Get Call Launch: Select WEBFORM
(d) Leave field CRM Popup Login: = N
(e) Leave field CRM Popup Address: empty
7. Go to Inbound/Show DIDs.
(a) Setup a DID and point it to an Inbound Group that is allowed in your campaign.
8. Edit the Inbound Group you pointed your DID to.
(a) In the inbound group, set field Web Form: to URL of your Vicidial web server/vtiger_search.php. Example, http://192.168.1.1/vicidial/vtiger_search.php
(b) Set field Get Call Launch: to WEBFORM
9. Edit file /srv/www/htdocs/agc/vicidial.php (BACK IT UP) When done editing, back up this file to off-server location as any SVN updates to it you will lose your modifications.
(a) On line 17803 change:
document.getElementById(“ScriptContents”).innerHTML = “<iframe src=\”” + VtigeRurl + “/index.php?module=Users&action=Authenticate&return_module=Users&return_action=Login&user_name=” + user + “&user_password=” + orig_pass + “&login_theme=softed&login_language=en_us\” style=\”background-color:transparent;z-index:17;\” scrolling=\”auto\” frameborder=\”0\” allowtransparency=\”true\” id=\”popupFrame\” name=\”popupFrame\” width=\”” + script_width + “px\” height=\”” + script_height + “px\”> </iframe> “;
TO
 document.getElementById(“ScriptContents”).innerHTML = “<iframe src=\”” + VtigeRurl + “/index.php?module=Users&action=Login&return_module=Users&return_action=Login&username=” + user + “&password=” + orig_pass + “&login_theme=softed&login_language=en_us\” style=\”background-color:transparent;z-index:17;\” scrolling=\”auto\” frameborder=\”0\” allowtransparency=\”true\” id=\”popupFrame\” name=\”popupFrame\” width=\”” + script_width + “px\” height=\”” + script_height + “px\”> </iframe> “;
(b) On line 17807 change:
var VtigeRall = VtigeRurl + “/index.php?module=Users&action=Authenticate&return_module=Users&return_action=Login&user_name=” + user + “&user_password=” + orig_pass + “&login_theme=softed&login_language=en_us”;
TO
var VtigeRall = VtigeRurl + “/index.php?module=Users&action=Login&return_module=Users&return_action=Login&username=” + user + “&password=” + orig_pass + “&login_theme=softed&login_language=en_us”;


I know this is a little complicated so if you have any problems, just join our live support channel on skype: https://join.skype.com/ujkQ7i5lV78O

How to – Create a call menu/IVR in ViciDial that you can dial an agents extension on

Call Menu

How to – Create a call menu/IVR in ViciDial that you can dial an agents extension on

In this article, I will go over the steps you need to take to create an IVR(call menu) where people can call in and dial the agents extension number and reach them or get forwarded to their voicemail. This is going to assume you know how to create and upload the audio files needed for the recording for the Call menu / IVR and that you have a DID pointed to the Call Menu once its created.

Step 1 – Create the call menu

Click on Inbound and then add a new call menu

Add a  New Call Menu
Create new Call Menu (IVR)

Step 2 – Fill out the call menu with the options you need

At the bare minimum you need the “Menu Prompt” where you select the audio file you want to be played to callers, the “Menu Timeout”, and the various options in the drop down menus.

Call Menu / IVR
Call Menu / IVR

Step 3 – Add the custom Dialplan

Here is the code you need to add to the custom dialplan box: (assuming the agent extensions are 4 digits, alter it accordingly)

exten => _XXXX,1,AGI(agi-AGENT_route.agi,default---AGENTDIRECT---ACTIVE)
Custom Dialplan Entry

Step 4 – Change AGENTDIRECT ingroup to work with sending to voicemail if there’s no agents logged in

This step will send calls to the agents voicemail if there is no one logged into the system. Change the No Agents No Queue options to match your needs or as I have it below but the most important thing to change is the Voicemail box settings to “AGENTVMAIL” for this Call Menu / IVR to go to the agents voicemail box that they press during the call menu.

AGENTDIRECT Changes

That’s it for this article, if you have any questions feel free to reach out to us in our group chat which has grown rather large from members of the ViciDial forum: https://join.skype.com/ujkQ7i5lV78O

I hope this helps

Chris aka carpenox

Security vulnerability in Vicidial codebase – Update now!

Security vulnerability in Vicidial codebase – Update now!

There is a major security hole in the vicidial codebase for any SVN version below 3509. Please see the email below.

Vicidial exploit

Please make sure you update your SVN and your OS, to update your SVN run these commands:

  • cd /usr/src/astguiclient/trunk
  • svn up
  • perl install.pl (follow the prompts thru to the end)
  • On DB server only run this command: mysql -p -f –database=asterisk < /usr/src/astguiclient/trunk/extras/upgrade_2.14.sql

To update your OS for Leap, use “zypper up” and for centos use “yum update”

Please take this seriously.

Chris aka carpenox