Suitecrm установка и настройка windows

Обновлено: 02.07.2024

Возникла у меня необходимость установки связки: Asterisk + CRM + Интеграция. С установкой Asterisk и FreePBX на Ubuntu проблем не возникло. Отличная статья с пошаговыми инструкциями и картинками, справится даже новичок.

Но вот когда дело дошло до установки CRM и попыток дружбы оной с Астером, у меня начали клочками выпадать волосы на голове. Сначала я думал, что эта задача так же проста, как и установка Ubuntu+Asteris+FreePBX. Но уже через несколько дней понял, что нормальных мануалов, а у же тем более нормальных бесплатных моделей просто нет. Так компания у нас не большая и покупать что-либо желания нет. Пришлось купить по кускам разные мануалы, посты, статьи и методом проб и ошибок устанавливать и интегрировать CRM с Астером.

Выбирал из 3-х (Сахар, вТигр и Сюит) и свой выбор остановил на SuiteCRM (остальные не прошли проверку на прочность и совместимость с модулями интеграции С Астером).

В этой статье я собственно и хочу поделится опытом установки и интеграции SuiteCRM с Астериском. Тот, кто уже установил SuiteCRM, и она успешно работает, можем смело пролистывать часть с установкой и переходить к интеграции.

Установка SuiteCRM

Открываем терминал и коннектимся к нашему Ubuntu Server под root'ом.

1. Для начала перейдите в html каталог (у меня, например /var/www/html, а у вас может быть другой):


2. Скачиваем архив с последней версией CRM (на момент написания статьи это была 7.5):


3. Распаковываем архив:


4. Переименовываем каталог (для удобства, что бы не писать потом длинный адрес в строке браузера):


5. Назначаем права нового каталога:


6. Открываем в браузере страницу наш_сервер/crm и приступаем к настройке.

7. Читаем и соглашаемся с лицензионным соглашением, нажимаем Next:

image

8. Делаем пару глотков чая и съедаем одну печенюшку, пока система проверит «почву» на которой будет расти.

image

9. CRM все проверила и ей все подходит. Жмем Next:

image

Если ругается на IMAP Module, то просто устанавливаем его:

10. Заполняете все необходимые поля:

image

Если хотите, чтобы в CRM сразу были демонстрационные данные, то Choose Demo Data -> Populate Database with Demo Data? -> Yes.

11. Идем допивать чай и доедать печенюшки пока система все установит и настроит:

image

12. Система установлена и готова к работе. Вводим логи и пароль главной администратора и наживаем Log In:

image

13. Ура. Система работает. Дальше курим гайды как ею пользоваться.

Перейдем к этапу, который мне сносил мозг несколько дней.

Интеграция с Asterisk посредством Callinize — community Edition

Скажу сразу, что бесплатного решения этой задачи «из коробки» нет. Я потратил несколько дней на то, чтобы перепробовать все CRM в комбинациях со всеми доступными бесплатными модулями интеграции: все вариации нерабочие. Какие-то я пытался допилить руками, какие-то удалял сразу после установки. В общем, эту статью я, собственно, и собрался писать, чтобы сэкономить кому-то время и нервы.

У меня стояли следующие задачи: Необходимо, чтобы из CRM можно было прямо из окна браузера позвонить одним кликом мыши. Чтобы при звонке (входящем/исходящем) сразу в окне браузера CRM показывала карточку клиента с необходимой информацией. Все это необходимо было сделать для облегчения работы сэйлов моей компании.

Я остановил свой выбор (вернее не остановил выбор, а методом проб и ошибок выяснил, что это самый рабочий вариант) на «Callinize — community Edition». Не знаю, можно ли скачать бесплатную версию с их сайта , я не нашел. Где-то в дебрях паутины я наткнулся на OpenSourсe yaai-Callinize и скачал его. Где скачал уже не помню, да и для того, чтобы пакет встал на SuiteCRM, пришлось немного допилить его внутренности.

Итак: «скальпель, сестра, приступим»:

Установка модуля

2. Заходим в нашу CRM и переходим в раздел Administrator -> Admin -> Module Loader;

3. Выбираем файл модуля, который скачали и нажимаем Upload;

4. Когда файл загрузится и отобразится в нижнем окошке, кликаем Install на нашем модуле:

image

5. Читаем и принимаем соглашение и нажимаем Commit:

image

6. Ждем пока установится модуль и нажимаем Back to Module Loader:

image

Это все присказка была, а вот теперь начинается самый сок — нам нужно подружить всех разом Asterisk, CRM и Yaai. Спасибо Хабру за запрет на использование в статьях ненормативной лексики, а то бы я сейчас написал, что я думаю про всех разработчиков модуля!

Настройка нашего модуля

1. Создадим менеджера Астера, под которым будет работать наш модуль, для этого правим manager.conf:


После чего перезапускаем Asterisk, чтобы он прочитал новые настройки:


2. Далее настроим наш модуль. Идем в окно браузера с нашей CRM и открываем Administratir -> Admin -> листаем в самый низ, находим пункт раздел «Callinize — Asterisk SugarCRM Integration» и кликаем «Module Configuration»:

image

3. Введем логин и пароль менеджера:

Asterisk Manager Login — yaai
Asterisk Manager Secret — пароль, который вы указали в manager.conf

SugarCRM Soap-User — admin
SugarCRM Soap-Pass — пароль, который вы указывали для суперадминистратора при установке SugarCRM

Остальные значения пока не трогаем, жмем Save:

image

4. Идем Administratir -> Admin -> Studio.

Раздел Modules листаем вниз. Находим папку «User», раскрываем ее, раскрываем папку «Layouts», кликаем «EditView». В правом окне у нас откроется шаблон настроек пользователя, в который мы должны будем кое-что добавить:

Для начала перетягиваем «New Panel», на нее кидаем «New Row». Затем на поля (filler) перетягиваем 3 значения: Personal Extension, Magic Dial Buttons, Call Notification. Кликаем Save & Deploy. Должно получится вот так:

image

5. Идем в Administratir -> Admin -> User Manager.

Кликаем на пользователя (я буду настраивать Administrator), в открывшемся окне жмем Edit. Увидим, что панель, которую мы добавляли в п.4, теперь появилась тут и можно заполнять поля. В поле Personal Extension(s) прописываем внутренний номер пользователя (я надеюсь, что во FreePBX вы уже создали Extension, который хотите присвоить пользователю во SuitCRM, например, у меня уже есть внутренний номер 1001, его я и присвою Administrator). Ставим галки Magic Dial Buttons, Call Notification и жмем Save:

image

И вот тут первый косяк. Не знаю почему, но при первом сохранении настроек пропадает меню CRM. Будем это лечить правкой CSS кода.

6. Открываем терминал и запускаем скрипт:


Если у вас скрипт в конце вывел на экран следующее «Waiting for call events. »:


Заначит вы все сделали правильно.

Если лезут ошибки, значит вы где-то не внимательно читали/выполняли пункты инструкции!

7. Давайте проверим. В нашей CRM создадим контакт, например, Markenig -> Contacts -> Create. Заполняем First Name, Last Name, и главное Office Phone — тут пишем номер телефона, на который будем сейчас звонить, чтобы протестировать исходящие звонки из CRM. Жмем Save:

image

8. И вот что мы видим:

image

Нажимаем на зеленую трубочку и — о чудо! — звонит наш внутренний телефон, после того, как мы снимем трубку, Астериск будет звонить на номер, который был возле зеленой трубки и соединит нас. Ура. Исходящие работают.

НО! У нас нет всплывающей карточки клиента при звонке. Она должна появляться в окне CRM при исходящем/входящем звонке и отображать инфо о контрагенте. Будем лечить это. Потому что эта «фишка» нам очень нужна.

Это страница содержит описание для SuiteCRM Версии 8. Описание для SuiteCRM версии 7 находится здесь.

Если вы впервые устанавливаете SuiteCRM, следуйте этому описанию. Если вы обновляете ранее установленную вервию, обратитесь к разделу Обновление системы.

Подготовка к установке

Установите версии PHP, веб-сервера, и базы данных, указанные в Таблице совместимости.

Скопируйте загруженные файлы из архива в соответствующую папку веб-сервера и установите необходимые права (см. ниже).

Обратите внимание, что часть программного обеспечения, указанного в таблице совместимости, необходима только для разработчиков, и при стандартной установке нет необходимости в установке node, angular и yarn/npm. Загруженный пакет уже содержит все необходимые файлы в папке public.

Если вы используете веб-сервер apache, убедитесь, что модуль mod_rewrite включён и корректно настроен. Модуль используется при вызове SuiteCRM-Core API, и если перенаправление отключено, вы получите ошибку 404 .

Установка прав

Выберите папку веб-сервера, в которую будет установлен SuiteCRM (чаще все это корневая папка сервера, либо одна из подпапок)

Распакуйте загруженный архив в выбранную папку.

Установите соответствующие права, как это показано ниже:

При необходимости замените пользователя www-data на пользователя, под которым запущен веб-сервер.

Пользователи, имеющие полный доступ к файлам системы, могут различаться в зависимости от используемой конфигурации системы, например:

Приведённые выше команды могут различаться в зависимости от используемой вами ОС. Если у вас возникли трудности с установкой прав - задайте необходимые вопросы на нашем форуме.

Шаги установки

Установите систему (suite core и legacy)

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

Вариант 1: ./bin/console suitecrm:app:install без параметров, команда сама запросит необходимые данные

Вариант 2: ./bin/console suitecrm:app:install с указанными ниже параметрами:

“admin_username” - логин администратора системы

Убедитесь, что указываемый администратор БД имеет необходимые права на создание и запись в базу данных SuiteCRM.

Для MySQL, MariaDB и SQL Server, установщик по умолчанию выбирает администратора системы в качестве пользователя базы данных. Приложение SuiteCRM использует пользователя базы данных SuiteCRM для связи с базой данных SuiteCRM.

По завершении установки ещё раз установите соответствующие права, как это было показано выше, при необходимости заменив пользователя www-data на пользователя, под которым запущен веб-сервер:

Установите параметр DocumentRoot в значение ///public. Как правило параметр расположен в файле /etc/apache2/sites-available/applications.conf .

Настоятельно рекомендуется настроить корневую папку веб-сервера или виртуальный хост, указав именно папку public в качестве корневой папки, чтобы другие файлы и папки не были доступны из внешней сети.

В рамках данной статьи будет рассмотрена установка SuiteCRM, которая по своей сути является форком другой CRM системы с похожим функционалом — SugarCRM, с некоторыми дополнениями.

CRM-система SuiteCRM на сервер CentOS 7

На подготовительном этапе рекомендуется установить репозиторий epel:

yum install epel-release

Для выбранной версии SuiteCRM рекомендуется устанавливать PHP 7 версии, нужную версию можно установить из репозитория webtatic

Установка репозитория webtatic

В Linux скачать можно прямой ссылкой на архив с помощью утилиты wget

Скачивание архива SuiteCRM с помощью утилиты wget

Далее необходимо распаковать архив с помощью утилиты unzip:

Следующим шагом создается директория для CRM в рутовой директории веб-сервера

Далее необходимо скопировать содержимое распакованного архива в созданную на предыдущем шаге директорию:

cp -r SuiteCRM-7.10.5/* /var/www/html/suitecrm/

Следующим шагом необходимо установить права на отдельные директории CRM:

chmod -R 776 /var/www/html/suiteсrm/cache && chmod -R 776 /var/www/html/suiteсrm/custom && chmod -R 776 /var/www/html/suiteсrm/modules && chmod -R 776 /var/www/html/suiteсrm/themes && chmod -R 776 /var/www/html/suiteсrm/upload && chmod -R 776 /var/www/html/suiteсrm/data

Создание базы данных для SuiteCRM, а также отдельного пользователя БД с правами на созданную базу, для этого необходимо залогиниться в MariaDB под пользователем root:

Дальнейшая установка и настройка SuiteCRM производится через веб форму, которая доступна по адресу:

В открывшемся мастере установки на первой странице необходимо принять лицензионное соглашение и выбрать язык установки.

pic2 (Лицензионное соглашение и выбор языка установки SuiteCRM)

Лицензионное соглашение и выбор языка установки SuiteCRM

SuiteCRM проверка зависимостей

Также необходимо в crontab под пользователем веб-сервера (apache) пролписать строку запуска планировщика SuiteCRM

crontab -e -u apache
* * * * * cd /var/www/html/suitecrm; php -f cron.php > /dev/null 2>&1

В следующем окне необходимо внести данные на подключение к БД, а также задать логин пароль администратора SuiteCRM

В разделе Provide Database Name необходимо заполнить следующие параметры:

Далее в разделе Identify Administration User необходимо заполнить следующие параметры

SuiteCRM конфигурация подключения к БД

Далее следует дождаться окончания установки

Завершение установки SuiteCRM

Далее отобразится окно логина в SuiteCRM

Окно авторизации SuiteCRM

На этом установка SuiteCRM завершена, далее можно перейти к настройке системы, но сначала рекомендуется установить русификатор, ссылка на скачивание которого есть на сайте suiteCRM.

Переход на страницу выбора языкового пакета

Далее необходимо выбрать интересующий языковой пакет

Выбор языкового пакета

Затем скачать архив с языковым пакетом (в текущем примере он будет именован как ru.zip)

Далее необходимо перейти в раздел Admin > Module Loader (находится в секции Developer Tools) и загрузить архив с русификатором

Вкладка "Admin"


Для загрузки архива необходимо выбрать файл и нажать кнопку Upload,

Загруженный файл русификации

Завершение установки языкового пакета

Теперь можно выбрать установленный языковой пакет в разделе Admin > Locale
И далее при каждом входе в CRM-систему будет возможность выбора языка интерфейса.


Установите SuiteCRM на Ubuntu 20.04 LTS Focal Fossa

Шаг 1. Во-первых, убедитесь, что все ваши системные пакеты обновлены, выполнив следующие apt команды в терминале.

Шаг 2. Установка стека LAMP.

Требуется сервер Ubuntu 20.04 LAMP. Если у вас не установлена ​​LAMP, вы можете следовать нашему руководству здесь .

Шаг 3. Установка SuiteCRM на Ubuntu 20.04.

Теперь мы загружаем последнюю стабильную версию SuiteCRM, используя следующую команду на вашем сервере:

Нам нужно будет изменить права доступа к некоторым папкам:

Шаг 4. Настройка MariaDB для SuiteCRM.

По умолчанию MariaDB не усилен. Вы можете защитить MariaDB с помощью mysql_secure_installation скрипта. вы должны внимательно прочитать и под каждым шагом, который установит пароль root, удалит анонимных пользователей, запретит удаленный вход root и удалит тестовую базу данных и доступ к безопасности MariaDB:

Настройте это так:

Далее нам нужно будет войти в консоль MariaDB и создать базу данных для SuiteCRM. Выполните следующую команду:

Вам будет предложено ввести пароль, поэтому введите пароль root для MariaDB и нажмите Enter. После входа на сервер базы данных вам необходимо создать базу данных для установки SuiteCRM:

Шаг 5. Настройка веб-сервера Apache для SuiteCRM.

Добавьте следующие строки:

Теперь мы можем перезапустить веб-сервер Apache, чтобы изменения вступили в силу:

Затем выполните следующую команду, чтобы получить бесплатный сертификат TLS с помощью плагина Apache:

Если проверка прошла успешно, перезагрузите Apache, чтобы изменения вступили в силу:

Шаг 7. Доступ к веб-интерфейсу SuiteCRM.

Поздравляю! Вы успешно установили SuiteCRM. Благодарим за использование этого руководства по установке SuiteCRM (Управление взаимоотношениями с клиентами) в системе Ubuntu 20.04 LTS Focal Fossa. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт SuiteCRM .

Читайте также: