566207470

video-it.ru

8 (499) 705-15-85

 

Ваша корзина пуста

Инструкция по интеграции и установки SugarCRM с телефонией на базе Asterisk / FreePBX.

SugarCRM можно устанавливать как на сервер самой АТС так и на отдельный выделенный сервер. В этой статье опишу вариант, когда SugarCRM устанавливается на тот же сервер где установлен сам Asterisk. Это накладывает свои ограничения при установке и выборе версии SugarCRM. Я выбрал данный вариант, чтобы показать сборку ПО, которая будет работать.

Начнем…
Дано:
ISO образ - FreePBX-32bit-5.211.65
Дистрибутив SugarCE-6.5.20
Asterisk SugarCRM Connector
Русский язык для SugarCRM
Скрипт для всплывания окон при входящих и исходящих звонках для любых браузеров. При использовании других версий (сборок) SugarCRM, Asterisk и остального ПО работоспособность не гарантируется!

Нужно сделать:
- установить Asterisk / FreePBX
- установить SugarCRM
- сделать интеграцию, чтобы всплывали окна при входящих и исходящих звонках в SugarCRM

Решение:

1. устанавливаем образ FreePBX-32bit-5.211.65 именно Asterisk 1.8

2. открываем на редактирование /etc/asterisk/manager.conf
создаем нового пользователя для sugarcrm
[sugar-ami]
secret = блаблабла
deny=0.0.0.0/0.0.0.0
permit=127.0.0.1/255.255.255.0
read = all
; ^--- on some systems you can get away with just "call,hud"
write = originate,system,call
writetimeout = 5000
permit=192.168.1.233/255.255.255.0

3. устанавливаем SugarCRM

3.1 создаем базу данных mysql и пользователя для sugarcrm
открываем терминал и подключаемся к нашему серверу, далее:
входим в mysql без пароля
mysql -u root
создаем базу данных
CREATE DATABASE sugarcrm;
Создаем пользователя
CREATE USER sugaruser@localhost IDENTIFIED BY 'sugarpassword';
Выдаем привилегии на базу данных для созданного пользователя
GRANT ALL PRIVILEGES ON sugarcrm.* TO sugaruser@localhost;
Обновляем привилегии
FLUSH PRIVILEGES;

3.2 копируем с помощью winscp архив SugarCRM в папку /var/www/html/sugarce

3.3 делаем права на папку и все её содержимое 777 (я это делал через winscp)

3.4 устанавливаем mbstring
yum install php-mbstring

3.5 далее в браузере продолжаем установку по адресу
http://ip-адрес-asterisk/sugarce/install.php

3.6 вбиваем имя базы и пользователя …и устанавливаем demo данные, чтобы было проще понять как настраивать

3.7.1 переходим в Admin – Module Loader

3.7.2 загружаем пакет локализации

3.7.3 загружаем пакет с sugarcrm connector

3.8 переходим опять в Admin – и в разделе Callinize - Asterisk SugarCRM Integration выбираем Module Configuration

3.8.1 указываем хост, пароль, пользователя, порт и контекст. Также определяем размер номера для внутренней нумерации

3.9 идем в Admin – Studio

3.9.1 заходим в раздел Users – Layouts – EditView

3.9.2 и добавляем New Panel
Далее в нее вставляем две New Row
Затем в верхнюю строчку вставляем Personal Extension(s)
В нижнюю Magic dial buttons и Call notification
И Save & Deploy

3.10 начинаем присваивать номер внутреннего телефона пользователю
Переходим в Admin – User Management
Выбираем Administrator
Нажимаем edit
Прописываем номер и ставим строчкой ниже две галочки и жмем сохранить

3.11 Делаем скрипт для того чтобы у нас в браузере всплывали окна при входящих звонках

3.11.1 положите в папку /etc/init.d файл asterisk-sugarcrm-video-it

Сделайте ему 755 права доступа
Также сделайте 755 права для /etc/init.d/functions
Запустите скрипт, чтобы проверить его работу
/etc/init.d/asterisk-sugarcrm-video-it start

3.11.2 теперь сделаем, чтобы скрипт был в автозагрузке
chkconfig --add asterisk-sugarcrm-video-it
chkconfig asterisk-sugarcrm-video-it on

3.12 Отредактируем файл callPopups.js, который находится вот тут
/var/www/html/sugarce/custom/modules/Asterisk/include/javascript/
найдем строчку template = Handlebars.templates['call-template.html'];
и заменим ее на
var source = '<div id="{{callbox_id}}" class="callbox"><div class="callboxhead"><div class="callboxtitle">{{title}}</div><div class="callboxoptions"><a href="#" class="callbox_close">X</a></div></div><div class="control_panel"><button class="transfer_panel"></button><button class="operator_panel"></button><!--<button class="callbox_action" data-dropdown="#dropdown-1_{{callbox_id}}"></button>--><button class="callbox_action"></button></div><div id="dropdown-1_{{callbox_id}}" class="dropdown-menu has-tip dropdown-hidden"> <!-- left: 746px; top: 631px; display: block; --><ul><li class="ul_relate_to_contact"><a href="#" class="relate_to_contact">{{relate_to_contact_label}}</a></li><li class="ul_relate_to_account"><a href="#" class="relate_to_account">{{relate_to_account_label}}</a></li><li class="ul_create_contact"><a href="#" class="create_contact">{{create_new_contact_label}}</a></li></ul></div><div class="callboxcontent"><div class="asterisk_info"><h4 class="call_type">{{call_type}}</h4><div><table class="asterisk_data"><tr class="multiplematchingcontacts"><td colspan="2"><b>{{select_contact_label}}</b>{{#each beans}}<p class="select_contact" id="contact_{{bean_id}}"><input type="radio" name="contactSelect" class={{bean_module}} value={{bean_id}} /><a class="multiplecontacts" title="{{parent_name}}" href={{bean_link}}>{{bean_name}}</a></p>{{/each}}</td></tr><tr class="singlematchingcontact"><td>{{name_label}}</td><td><a class="contact_id" href="/{{bean_link}}"><span class="call_contacts">{{bean_name}}</span></a><!-- <button class="unrelate_contact"></button> --></td></tr><tr class="parent_name_box"><td>{{company_label}}</td><td><a class="company" href="/{{parent_link}}">{{parent_name}}</a></td></tr><tr class="caller_id_box"><td class="caller_id_label">{{caller_id_label}}:</td><td class="caller_id">{{caller_id}}</td></tr><tr class="phone_number_box"><td class="phone_number_label">{{phone_number_label}}:</td><td class="phone_number">{{phone_number}}</td></tr><tr class="call_duration_box"><td class="call_duration_label">{{duration_label}}:</td><td><span class="call_duration">{{duration}}</span></td></tr><!--<tr class="call_time_box">--><!--<td class="call_time_label">{{call_time_label}}:</td>--><!--<td>--><!--<span class="call_duration">{{call_time}}</span>--><!--</td>--><!--</tr>--></table></div></div></div><div class="callboxinput"><textarea rows="4" cols="30" class="callboxtextarea callboxtextareaselected"></textarea><div class="callboxbuttons"><table width="100%"><tbody><tr><td valign="bottom"><button class="save_memo">{{save_label}}</button></td></tr></tbody></table></div></div><form class="call_record_id" name="{{call_record_id}}"><input type="hidden" name="relateContactId"/><input type="hidden" name="relateContactFirstName"/><input type="hidden" name="relateContactLastName"/><input type="hidden" name="relateAccountId"/><input type="hidden" name="relateAccountName"/></form></div>'; var template = Handlebars.compile(source);

3.13 Перегружаем весь сервер
reboot

Вот и все. Теперь можно принимать и совершать звонки прямо из вашей sugarcrm.

Обратите внимание, что если Вы сами будете создавать контакт, то прописывайте префикс на телефон точно такой же, как и при входящем звонке. Только в этом случае при входящем у вас будет подтягиваться карточка клиента.

Если Вы не хотите проходить весь путь, описанный выше, самостоятельно, то Вы всегда можете заказать интеграцию данной crm системы у сотрудников нашей компании, позвонив по телефону 7(499)705-15-85 или 7(903)167-72-27, и они быстро осуществят интеграцию с вашей АТС.

7 (499) 705-15-85 566207470 video-it.ru info@video-it.ru Россия, г.Москва