GithubHelp home page GithubHelp logo

mstiv / amocrm_asterisk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from iqtek/amocrm_asterisk

0.0 0.0 0.0 478 KB

Extended version of AmoCRM/Asterisk integration script

License: MIT License

PHP 100.00%

amocrm_asterisk's Introduction

Данная интеграция основана на штатной интеграции amocrm и asterisk.

Изменения относительно базовой интеграции

  • Поддержка интеграции с Grandstream
  • Поддержка интеграции с Yeastar U-series
  • Поддержка интеграции с Yeastar S-series
  • Приложение для получения событий от asterisk и регистрации их в БД (https://github.com/iqtek/amocrm_event_listener)
  • Поддержка проигрывания из amocrm файлов различных форматов
  • Поддержка получения записей по http/https/ftp/sftp
  • Исправление проблемы с отсутствием загрузки длинных разговоров в CRM
  • Поддержка click2call используя FollowMe во FreePBX
  • Поддержка нескольких типов каналов (SIP/PJSIP)
  • Фильтрация и форматирование номера телефона, использованного при нажатии ссылки click2call
  • Поддержка автоматического донабора внутреннего номера

Файлы

Содержимое архива расположить в /opt/iqtek/amocrm/

Приложения и файлы настроек:

./amocrm.php			# Интеграций с Amocrm по HTTP
./config
  config.php.sample		# Настройки интеграции
./contrib
  extensions_amocrm.conf	# Контексты Asterisk для реализации дополнительных функций
  manager_amocrm.conf		# Пример настройки AMI пользователя
./README.md			# Этот файл

Amocrm HTTP

Файл отдает по HTTPS ответы на запросы amocrm, необходимые для работы плагина amocrm:

  • Запрос списка каналов (с IP адреса пользователя)
  • Запрос на создание вызова (с IP amocrm)
  • Запрос детализации вызовов (с IP amocrm)
  • Запрос записи разговора (с IP пользователя)

Требования

  • Роутер с поддержкой Hairpin NAT (перенаправление пакетов LAN->WAN->LAN)
  • Либо: локальный DNS сервис
  • Желательно - статический IP;
  • SSL сертификат (платный, letsencrypt)
  • Домен с настроенной DNS записью вашего статического IP
  • Интернет >1Mbps

Технические требования к платформе Asterisk: 

  • Поддержка AJAM или AMI
  • Работа вебсервера с поддержкой протокола https
  • PHP с поддержкой json_encode (5.2+ или 5.1+PECL_json)
  • PHP с расширением PDO для бэкэнда CDR
  • Сервер с Asterisk в одной сети с интеграцией

Пакеты

apt install apache2 libapache2-mod-php5 php5-mysql lame

Настройка apache

Настройка asterisk

Настроим Asterisk:

ln -s ./contrib/manager_amocrm.conf /etc/asterisk/manager_amocrm.conf
echo \#include manager_amocrm.conf >> /etc/asterisk/manager.conf
asterisk -rx "manager reload"

Для систем на базе freepbx необходимо создать аналогичные настройки используя веб-интерфейс

Настройка интеграции

vi ./config/config.php

Настройка БД

Добавить поле для имени файла записи разговора:

ALTER TABLE `cdr` ADD `recordingfile` VARCHAR(120) NOT NULL;

Добавить поле для хранения времени добавления cdr записи:

ALTER TABLE `cdr` ADD `addtime` TIMESTAMP DEFAULT CURRENT_TIMESTAMP;

Установить значение поля для старой записи:

UPDATE cdr SET addtime=calldate;

Ссылки

amocrm_asterisk's People

Contributors

igorrg avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.