Suitecrm установка и настройка windows
Возникла у меня необходимость установки связки: 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:
8. Делаем пару глотков чая и съедаем одну печенюшку, пока система проверит «почву» на которой будет расти.
9. CRM все проверила и ей все подходит. Жмем Next:
Если ругается на IMAP Module, то просто устанавливаем его:
10. Заполняете все необходимые поля:
Если хотите, чтобы в CRM сразу были демонстрационные данные, то Choose Demo Data -> Populate Database with Demo Data? -> Yes.
11. Идем допивать чай и доедать печенюшки пока система все установит и настроит:
12. Система установлена и готова к работе. Вводим логи и пароль главной администратора и наживаем Log In:
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 на нашем модуле:
5. Читаем и принимаем соглашение и нажимаем Commit:
6. Ждем пока установится модуль и нажимаем Back to Module Loader:
Это все присказка была, а вот теперь начинается самый сок — нам нужно подружить всех разом Asterisk, CRM и Yaai. Спасибо Хабру за запрет на использование в статьях ненормативной лексики, а то бы я сейчас написал, что я думаю про всех разработчиков модуля!
Настройка нашего модуля
1. Создадим менеджера Астера, под которым будет работать наш модуль, для этого правим manager.conf:
После чего перезапускаем Asterisk, чтобы он прочитал новые настройки:
2. Далее настроим наш модуль. Идем в окно браузера с нашей CRM и открываем Administratir -> Admin -> листаем в самый низ, находим пункт раздел «Callinize — Asterisk SugarCRM Integration» и кликаем «Module Configuration»:
3. Введем логин и пароль менеджера:
Asterisk Manager Login — yaai
Asterisk Manager Secret — пароль, который вы указали в manager.conf
SugarCRM Soap-User — admin
SugarCRM Soap-Pass — пароль, который вы указывали для суперадминистратора при установке SugarCRM
Остальные значения пока не трогаем, жмем Save:
4. Идем Administratir -> Admin -> Studio.
Раздел Modules листаем вниз. Находим папку «User», раскрываем ее, раскрываем папку «Layouts», кликаем «EditView». В правом окне у нас откроется шаблон настроек пользователя, в который мы должны будем кое-что добавить:
Для начала перетягиваем «New Panel», на нее кидаем «New Row». Затем на поля (filler) перетягиваем 3 значения: Personal Extension, Magic Dial Buttons, Call Notification. Кликаем Save & Deploy. Должно получится вот так:
5. Идем в Administratir -> Admin -> User Manager.
Кликаем на пользователя (я буду настраивать Administrator), в открывшемся окне жмем Edit. Увидим, что панель, которую мы добавляли в п.4, теперь появилась тут и можно заполнять поля. В поле Personal Extension(s) прописываем внутренний номер пользователя (я надеюсь, что во FreePBX вы уже создали Extension, который хотите присвоить пользователю во SuitCRM, например, у меня уже есть внутренний номер 1001, его я и присвою Administrator). Ставим галки Magic Dial Buttons, Call Notification и жмем Save:
И вот тут первый косяк. Не знаю почему, но при первом сохранении настроек пропадает меню CRM. Будем это лечить правкой CSS кода.
6. Открываем терминал и запускаем скрипт:
Если у вас скрипт в конце вывел на экран следующее «Waiting for call events. »:
Заначит вы все сделали правильно.
Если лезут ошибки, значит вы где-то не внимательно читали/выполняли пункты инструкции!
7. Давайте проверим. В нашей CRM создадим контакт, например, Markenig -> Contacts -> Create. Заполняем First Name, Last Name, и главное Office Phone — тут пишем номер телефона, на который будем сейчас звонить, чтобы протестировать исходящие звонки из CRM. Жмем Save:
8. И вот что мы видим:
Нажимаем на зеленую трубочку и — о чудо! — звонит наш внутренний телефон, после того, как мы снимем трубку, Астериск будет звонить на номер, который был возле зеленой трубки и соединит нас. Ура. Исходящие работают.
НО! У нас нет всплывающей карточки клиента при звонке. Она должна появляться в окне 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, с некоторыми дополнениями.
На подготовительном этапе рекомендуется установить репозиторий epel:
yum install epel-release
Для выбранной версии SuiteCRM рекомендуется устанавливать PHP 7 версии, нужную версию можно установить из репозитория webtatic
Установка репозитория webtatic
В Linux скачать можно прямой ссылкой на архив с помощью утилиты 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)
Также необходимо в 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.
Далее необходимо выбрать интересующий языковой пакет
Затем скачать архив с языковым пакетом (в текущем примере он будет именован как ru.zip)
Далее необходимо перейти в раздел Admin > Module Loader (находится в секции Developer Tools) и загрузить архив с русификатором
Для загрузки архива необходимо выбрать файл и нажать кнопку 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 .
Читайте также: