Интеграция IP-телефонии — различия между версиями
WikiSys (обсуждение | вклад) |
WikiSys (обсуждение | вклад) |
||
(не показано 14 промежуточных версий этого же участника) | |||
Строка 9: | Строка 9: | ||
* Mobilon; | * Mobilon; | ||
* Oktell; | * Oktell; | ||
− | * Zadarma | + | * Zadarma; |
+ | * UIS | ||
Благодаря этому, появляется возможность осуществлять и принимать звонки от клиентов и фиксировать их в системе MAG.Travel 2015, а именно: | Благодаря этому, появляется возможность осуществлять и принимать звонки от клиентов и фиксировать их в системе MAG.Travel 2015, а именно: | ||
* Создавать клиентов из карточки звонка; | * Создавать клиентов из карточки звонка; | ||
Строка 26: | Строка 27: | ||
Ип с которых должен быть доступен Астериск по AMI<br> | Ип с которых должен быть доступен Астериск по AMI<br> | ||
− | + | ||
− | + | 188.187.132.68<br> | |
− | + | 213.108.172.250<br> | |
− | + | 148.251.195.241<br> | |
− | + | 188.40.126.229<br> | |
− | + | 148.251.22.175<br> | |
− | |||
Посмотреть логин, пароль к AMI можно перейдя на сервере Asterisk по пути: /etc/asterisk/manager.conf | Посмотреть логин, пароль к AMI можно перейдя на сервере Asterisk по пути: /etc/asterisk/manager.conf | ||
Строка 41: | Строка 41: | ||
secret = XXXXXXX<br> | secret = XXXXXXX<br> | ||
deny=0.0.0.0/0.0.0.0<br> | deny=0.0.0.0/0.0.0.0<br> | ||
− | permit= | + | permit=188.187.132.68/255.255.255.255<br> |
− | permit= | + | permit=213.108.172.250/255.255.255.255<br> |
− | + | permit=148.251.195.241/255.255.255.255<br> | |
− | + | permit=188.40.126.229/255.255.255.255<br> | |
− | permit= | + | permit=148.251.22.175/255.255.255.255<br> |
− | permit= | ||
− | permit= | ||
read = all,cdr<br> | read = all,cdr<br> | ||
write = all,cdr<br> | write = all,cdr<br> | ||
Строка 56: | Строка 54: | ||
Должно быть также настроено событие AgentCalledEvent - http://fshareit.com/java/asterisk/asterisk-java/1.1.0-beta-javadoc/org/asteriskjava/manager/event/AgentCalledEvent.html<br> | Должно быть также настроено событие AgentCalledEvent - http://fshareit.com/java/asterisk/asterisk-java/1.1.0-beta-javadoc/org/asteriskjava/manager/event/AgentCalledEvent.html<br> | ||
В файле queues.conf должна быть строка: eventwhencalled = yes<br> | В файле queues.conf должна быть строка: eventwhencalled = yes<br> | ||
+ | А также: eventmemberstatus = yes<br> | ||
И Астериск должен быть собран с модулем apps/app_queue.c<br> | И Астериск должен быть собран с модулем apps/app_queue.c<br> | ||
<br> | <br> | ||
Строка 98: | Строка 97: | ||
Затем нужно направить звонок в входящем маршруте в созданное дополнительное назначение magtransfer | Затем нужно направить звонок в входящем маршруте в созданное дополнительное назначение magtransfer | ||
− | |||
− | |||
− | |||
− | |||
==Mango-Office== | ==Mango-Office== | ||
Строка 110: | Строка 105: | ||
Для начала интеграции с IP-телефонией Mango-Office, необходимо пройти регистрацию на сайте <code>http://mango-office.ru</code>, а также пополнить баланс.<br> | Для начала интеграции с IP-телефонией Mango-Office, необходимо пройти регистрацию на сайте <code>http://mango-office.ru</code>, а также пополнить баланс.<br> | ||
− | + | Регистрация в Mango-Office | |
− | + | Шаг 1. Войдите в Личный кабинет Виртуальной АТС (ВАТС). | |
+ | Шаг 2. Перейдите в раздел «Интеграции»: | ||
− | [[Файл: | + | [[Файл:M1.png]]<br> |
− | + | Шаг 3. Откройте вкладку «API коннектор». | |
− | [[Файл: | + | [[Файл:M2.png|border]]<br> |
− | + | Шаг 4. Сохраните данные вашей АТС для дальнейшего копирования в виджет CRM-системы или не закрывайте вкладку до окончания настройки интеграции.':<br> | |
− | [[Файл: | + | [[Файл:M3.png|border]]<br> |
+ | Шаг 5. В поле «адрес внешней системы» впишите адрес СRM-системы или сервера для принятия и обработки уведомлений, которые посылает API. | ||
Также указать следующие данные: | Также указать следующие данные: | ||
− | + | Адрес внешней системы: https://2015.mag.travel/tourclient/api/Telephony/Mango/999 , где - 999 - Ваш ID который вы указываете при входе в MAG.Travel 2015; | |
− | + | SSL-сертификат: Не проверять сертификат; | |
− | + | [[Файл:M4.png|border]]<br> | |
− | [[Файл: | + | Шаг 6. Установите безопасность посредством IP-адресов. Если вы хотите прослушивать записи разговоров прямо из CRM, то установите флаг «записи разговоров» (при этом необходимо подключить услугу «запись разговоров» в личном кабинете → вкладка «инструменты» → выберите пункт «запись разговоров» и нажмите кнопку «подключить»). Для принятия настроек нажмите кнопку «сохранить». |
+ | [[Файл:M5.png|border]]<br> | ||
− | Скопируйте "Уникальный код вашей АТС" и "Ключ для создания подписи" (они потребуются для настройки телефонии в системе MAG.Travel 2015): | + | Скопируйте "Уникальный код вашей АТС" и "Ключ для создания подписи" (они потребуются для настройки телефонии в системе MAG.Travel 2015): |
− | [[Файл: | + | Шаг 7 Необходимо создать в системе сотрудников и создать им SIP-аккаунт. |
+ | [[Файл:M6.png|border]]<br> | ||
+ | [[Файл:M7.png|border]]<br> | ||
− | + | '''Настройка Mango-Office в MAG.Travel 2015''' | |
+ | Данные, скопированные из Личного кабинета Mango-Office, необходимо прописать в системе MAG.Travel 2015, в разделе "Настройки – Настройки ip телефонии". | ||
+ | [[Файл:M8.png|border]]<br> | ||
+ | [[Файл:M9.png|border]]<br> | ||
− | [[Файл: | + | Укажите внутренние номера сотрудников в MAG.Travel 2015 (в разделе "Настройки – Настройки ip телефонии") так, как они указаны у Вас в Виртуальной АТС Mango-Office. |
+ | В Mango-Office: | ||
+ | [[Файл:M10.png|border]]<br> | ||
+ | В MAG.Travel 2015: | ||
+ | [[Файл:M11.png|border]]<br> | ||
+ | После этого необходимо сохранить настройки в системе MAG.Travel 2015. | ||
− | [[Файл: | + | Для исходящего звонка нажмите на кнопку Позвонить в системе MAG.Travel 2015 |
+ | [[Файл:M12.png|border]]<br> | ||
+ | Cервис Mango-Office сначала позвонит Вам, а потом соединит Вас с клиентом (используется SIP-Клиент). | ||
+ | При входящем звонке на ваш внутренний номер, вы увидите всплывающую карточку с номером телефона или сразу с именем туриста (если он есть в клиентской базе): | ||
+ | [[Файл:M13.png|border]]<br> | ||
+ | '''Внимание!''' Все разговоры ведутся по IP-телефонам (не через систему MAG.Travel 2015). | ||
+ | |||
+ | '''Назначение звонков ответственному менеджеру''' | ||
+ | |||
+ | В разделе Администрирование - Вкладка "Настройки" необходимо выбрать менеджера в настройке "Назначать неотвеченные звонки менеджеру". | ||
+ | Таким образом, не отвеченные звонки и клиенты, созданные на их основе будут назначены выбранному менеджеру, а также при повторных звонках - они будут перенаправлены именно на него. | ||
+ | [[Файл:M14.png|border]]<br> | ||
+ | Для корректной работы перенаправления звонков, необходимо также настроить входящую линию в Виртуальной АТС Mango-Office: | ||
+ | [[Файл:M15.png|border]]<br> | ||
+ | [[Файл:M16.png|border]]<br> | ||
+ | Необходимо настроить распределение звонков на группу абонентов за счёт создания схемы с установкой расписания, включающего Приветствие -> Переадресация на группу абонентов. | ||
===Настройка Mango-Office в MAG.Travel 2015=== | ===Настройка Mango-Office в MAG.Travel 2015=== | ||
Строка 216: | Строка 239: | ||
==Oktell== | ==Oktell== | ||
+ | Для Интеграции с ip-телефонией Oktell необходимо: | ||
+ | |||
+ | В поле «Тип телефонии» выбрать Oktell | ||
+ | |||
+ | В поле «Автоматическое создание клиента» выбрать в каком из предложенных вариантов будет автоматически создан клиент: | ||
+ | - Не создавать – при поступлении входящего звонка новый клиент создан не будет | ||
+ | - При входящем с неизвестного номера – новый клиент создастся, если входящий звонок поступит с номера телефона, которого ещё нет в вашей базе | ||
+ | - При пропущенном входящем с неизвестного номера - новый клиент создастся, если на входящий звонок не было ответа и такого номера телефона нет в вашей базе | ||
+ | |||
+ | Выбрать один из предложенных вариантов в поле «Автоматическое создание лида», где: | ||
+ | - Не создавать – Лид в базе создан не будет | ||
+ | - При каждом входящем звонке – Лид создается по каждому входящему звонку, не важно от кого и с какого номера телефона поступил звонок | ||
+ | - При входящем с неизвестного номера – Лид создается только в том случае, если звонок поступил с неизвестного номера | ||
+ | При пропущенном входящем с неизвестного номера - Лид создается, если на звонок не было ответа и он поступил с неизвестного номера | ||
+ | |||
+ | В поле «Изменять статус лида при пропущенном звонке» выбрать на какой статус Лида изменять статус, если звонок был пропущен (статусы подтягиваются из соответствующего справочника) | ||
+ | |||
+ | В поле «Сервер Oktell» прописать ссылку на ваш сервер Oktell с префиксом «ws://» | ||
+ | <br> | ||
+ | [[Файл:Oktell.png]] | ||
+ | <br> | ||
+ | '''Внимание!''' Десктопное приложение Oktell не взаимодействует с Mag.Travel. | ||
==Zadarma== | ==Zadarma== | ||
− | В ЛК ZADARMA перейдите в раздел | + | В ЛК ZADARMA перейдите в раздел "Настройки" - "API и интеграции". |
Здесь вы можете найти API ключ и ключ для создания подписи. | Здесь вы можете найти API ключ и ключ для создания подписи. | ||
− | + | Их нужно прописать в настройках IP телефонии в системе MAG.Travel | |
В разделе "Уведомления о звонках в АТС", в поле "Ссылка вашего ресурса" нужно указать ссылку вида: | В разделе "Уведомления о звонках в АТС", в поле "Ссылка вашего ресурса" нужно указать ссылку вида: | ||
− | + | https://2015.mag.travel/TourClient/api/Telephony/Zadarma/9999/events при этом заменить 9999 на Ваш ID в MAG | |
и справа отметьте все события: | и справа отметьте все события: | ||
[[Файл:2019-10-02_12-03_Zadarma.jpg]] | [[Файл:2019-10-02_12-03_Zadarma.jpg]] | ||
− | Также в MAG | + | Также в системе MAG.Travel, в настройках IP телефонии нужно прописать внутренние номера пользователей для которых будет доступна интеграция. |
В ZADARMA можно найти внутренние номера сотрудников в разделе Моя АТС, внутренние номера. Поле с номером - "Внутренний номер АТС" | В ZADARMA можно найти внутренние номера сотрудников в разделе Моя АТС, внутренние номера. Поле с номером - "Внутренний номер АТС" | ||
Строка 236: | Строка 281: | ||
[[Файл:Zadarmarecording.jpg]] | [[Файл:Zadarmarecording.jpg]] | ||
− | Для приема | + | Для приема входящих звонков в ЛК ZADARMA должны быть подключены номера в разделе Моя АТС, внешние линии. |
+ | |||
+ | ==UIS== | ||
+ | |||
+ | 1. Подключить API | ||
+ | Нужно подключить компонент «Call API Базовый набор» и «Уведомления». Для переадресации на ответственного нужно также подключить «Call API Управление вызовами»\ | ||
+ | Подключается компонент в разделе Администратор - Аккаунт - Тариф и опции:<br> | ||
+ | [[Файл:UIS1.png]] | ||
+ | |||
+ | 2. Доступ к АПИ | ||
+ | Ключи генерируются на уровне пользователя в разделе личного кабинета "Аккаунт" → "Управление пользователями" | ||
+ | Существует два типа ключей: | ||
+ | Постоянный. Постоянный ключ имеет неограниченное время действия. | ||
+ | Временный. Временный ключ имеет конкретную дату окончания действия ключа. | ||
+ | Генерируем постоянный ключ. | ||
+ | При этом, будьте внимательны: ключ виден в интерфейсе и доступен для копирования только в момент генерации, после сохранения настроек вы сможете его увидеть только в коде своего приложения или другом месте, куда вы сохранили этот ключ.<br> | ||
+ | [[Файл:UIS2.png]] | ||
+ | |||
+ | 3. Настройка доступа по IP | ||
+ | |||
+ | По умолчанию доступ к API запрещен всем, чтобы можно было делать запросы необходимо IP-адрес хоста с которого делается запрос добавить в белый список. Это можно сделать через личный кабинет "Администратор -> Аккаунт -> Правила и настройки безопасности" вкладка "API". | ||
+ | Наши IP:<br> | ||
+ | 148.251.195.241<br> | ||
+ | 188.40.126.229<br> | ||
+ | 148.251.22.175<br> | ||
+ | 185.26.169.104<br> | ||
+ | [[Файл:UIS3.png]] | ||
+ | |||
+ | 4. Настройка IP телефонии в МАГЕ | ||
+ | |||
+ | Для настройки ip телефонии перейдите в системе маг в администрирование (шестеренка в правом верхнем угле), далее в “Настройки ip телефонии”<br> | ||
+ | [[Файл:UIS4.png]]<br> | ||
+ | Здесь тип телефонии выбирайте UIS. | ||
+ | Ключ доступа к API UIS вставьте, что вы сгенерировали в личном кабинете UIS. | ||
+ | Ключ для API уведомлений придумайте сами, он понадобится в следующем пункте.<br> | ||
+ | [[Файл:UIS5.png]] | ||
+ | |||
+ | 5. Настройка уведомлений | ||
+ | |||
+ | Чтобы настроить получение уведомлений, перейдите в раздел Сервисы и статистика, в боковом меню откройте Уведомления и нажмите добавить. В открывшемся окне необходимо заполнить параметры: название уведомления; тип события, о котором нужно вас уведомить; условия, при которых будет приходить уведомление; способ получения уведомлений. | ||
+ | Нужно настроить 8 HTTP уведомлений<br> | ||
+ | [[Файл:UIS6.png]] | ||
+ | |||
+ | При настройки уведомлений в каждый URL необходимо прописать свой ID Мага (В примере ID это 200). А также, в каждом шаблоне запроса вместо <ваш ключ в настройках телефонии в MAG.Travel> прописать Ключ для API уведомлений указанное в настройках телефонии в Маг, вы его создаете сами.<br> | ||
+ | |||
+ | '''Входящее плечо''' | ||
+ | |||
+ | POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/IncomingLeg | ||
+ | |||
+ | { | ||
+ | |||
+ | "notification_name":{{notification_name}}, | ||
+ | |||
+ | "notification_time":{{notification_time}}, | ||
+ | |||
+ | "external_id": {{external_id}}, | ||
+ | |||
+ | "contact_info":{ | ||
+ | |||
+ | "contact_phone_number":{{contact_phone_number}}, | ||
+ | |||
+ | "contact_id": {{contact_id}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "employee_info": { | ||
+ | |||
+ | "employee_full_name": {{employee_full_name}}, | ||
+ | |||
+ | "extension_phone_number": {{extension_phone_number}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "call_source": {{call_source}}, | ||
+ | |||
+ | "call_session_id":{{call_session_id}}, | ||
+ | |||
+ | "direction": {{direction}}, | ||
+ | |||
+ | "leg_id": {{leg_id}}, | ||
+ | |||
+ | "mag_secret": "ваш ключ в настройках телефонии в MAG.Travel" | ||
+ | |||
+ | } | ||
+ | |||
+ | '''Исходящее плечо''' | ||
+ | |||
+ | POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/OutgoingLeg | ||
+ | |||
+ | { | ||
+ | |||
+ | "notification_name":{{notification_name}}, | ||
+ | |||
+ | "notification_time":{{notification_time}}, | ||
+ | |||
+ | "external_id": {{external_id}}, | ||
+ | |||
+ | "contact_info":{ | ||
+ | |||
+ | "contact_phone_number":{{contact_phone_number}}, | ||
+ | |||
+ | "contact_id": {{contact_id}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "employee_info": { | ||
+ | |||
+ | "employee_full_name": {{employee_full_name}}, | ||
+ | |||
+ | "extension_phone_number": {{extension_phone_number}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "call_source": {{call_source}}, | ||
+ | |||
+ | "call_session_id":{{call_session_id}}, | ||
+ | |||
+ | "direction": {{direction}}, | ||
+ | |||
+ | "leg_id": {{leg_id}}, | ||
+ | |||
+ | "mag_secret": "ваш ключ в настройках телефонии в MAG.Travel" | ||
+ | |||
+ | } | ||
+ | |||
+ | '''Входящий звонок на виртуальный номер''' | ||
+ | |||
+ | POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/IncomingLine | ||
+ | |||
+ | { | ||
+ | |||
+ | "notification_name":{{notification_name}}, | ||
+ | |||
+ | "virtual_phone_number":{{virtual_phone_number}}, | ||
+ | |||
+ | "notification_time":{{notification_time}}, | ||
+ | |||
+ | "scenario_name": {{scenario_name}}, | ||
+ | |||
+ | "contact_info":{ | ||
+ | |||
+ | "contact_phone_number":{{contact_phone_number}}, | ||
+ | |||
+ | "communication_number":{{communication_number}}, | ||
+ | |||
+ | "contact_id": {{contact_id}}, | ||
+ | |||
+ | "contact_full_name": {{contact_full_name}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "call_session_id":{{call_session_id}}, | ||
+ | |||
+ | "mag_secret": "ваш ключ в настройках телефонии в MAG.Travel" | ||
+ | |||
+ | } | ||
+ | |||
+ | '''Исходящий звонок''' | ||
+ | |||
+ | POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/Outgoing | ||
+ | |||
+ | { | ||
+ | |||
+ | "notification_name": {{notification_name}}, | ||
+ | |||
+ | "virtual_phone_number": {{virtual_phone_number}}, | ||
+ | |||
+ | "notification_time": {{notification_time}}, | ||
+ | |||
+ | "contact_info":{ | ||
+ | |||
+ | "contact_phone_number":{{contact_phone_number}}, | ||
+ | |||
+ | "contact_id":{{contact_id}}, | ||
+ | |||
+ | "contact_full_name":{{contact_full_name}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "call_session_id":{{call_session_id}}, | ||
+ | |||
+ | "employee_info":{ | ||
+ | |||
+ | "employee_full_name":{{employee_full_name}}, | ||
+ | |||
+ | "extension_phone_number": {{extension_phone_number}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "mag_secret": "ваш ключ в настройках телефонии в MAG.Travel" | ||
+ | |||
+ | } | ||
+ | |||
+ | '''Начало разговора''' | ||
+ | |||
+ | POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/CallStarted | ||
+ | |||
+ | { | ||
+ | |||
+ | "notification_name": {{notification_name}}, | ||
+ | |||
+ | "virtual_phone_number": {{virtual_phone_number}}, | ||
+ | |||
+ | "notification_time": {{notification_time}}, | ||
+ | |||
+ | "contact_info":{ | ||
+ | |||
+ | "contact_phone_number":{{contact_phone_number}}, | ||
+ | |||
+ | "contact_id":{{contact_id}}, | ||
+ | |||
+ | "contact_full_name":{{contact_full_name}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "call_session_id":{{call_session_id}}, | ||
+ | |||
+ | "employee_info":{ | ||
+ | |||
+ | "employee_full_name":{{employee_full_name}}, | ||
+ | |||
+ | "extension_phone_number": {{extension_phone_number}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "mag_secret": "ваш ключ в настройках телефонии в MAG.Travel" | ||
+ | |||
+ | } | ||
+ | |||
+ | '''Окончание разговора''' | ||
+ | |||
+ | POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/EndPart | ||
+ | |||
+ | { | ||
+ | |||
+ | "notification_name":{{notification_name}}, | ||
+ | |||
+ | "virtual_phone_number":{{virtual_phone_number}}, | ||
+ | |||
+ | "notification_time":{{notification_time}}, | ||
+ | |||
+ | "external_id": {{external_id}}, | ||
+ | |||
+ | "contact_info":{ | ||
+ | |||
+ | "contact_phone_number":{{contact_phone_number}}, | ||
+ | |||
+ | "communication_number":{{communication_number}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "employee_info": { | ||
+ | |||
+ | "employee_full_name": {{employee_full_name}}, | ||
+ | |||
+ | "extension_phone_number": {{extension_phone_number}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "call_info": { | ||
+ | |||
+ | "call_source": {{call_source}}, | ||
+ | |||
+ | "call_session_id":{{call_session_id}}, | ||
+ | |||
+ | "direction": {{direction}}, | ||
+ | |||
+ | "scenario_name": {{scenario_name}}, | ||
+ | |||
+ | "talk_time_duration": {{talk_time_duration}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "leg_ids": {{leg_ids}}, | ||
+ | |||
+ | "mag_secret": "ваш ключ в настройках телефонии в MAG.Travel" | ||
+ | |||
+ | } | ||
+ | |||
+ | '''Завершение звонка''' | ||
+ | |||
+ | POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/EndCall | ||
+ | |||
+ | { | ||
+ | |||
+ | "notification_name":{{notification_name}}, | ||
+ | |||
+ | "virtual_phone_number":{{virtual_phone_number}}, | ||
+ | |||
+ | "notification_time":{{notification_time}}, | ||
+ | |||
+ | "external_id": {{external_id}}, | ||
+ | |||
+ | "contact_info":{ | ||
+ | |||
+ | "contact_phone_number":{{contact_phone_number}}, | ||
+ | |||
+ | "communication_number":{{communication_number}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "employee_info": { | ||
+ | |||
+ | "employee_full_name": {{employee_full_name}}, | ||
+ | |||
+ | "extension_phone_number": {{extension_phone_number}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "call_info": { | ||
+ | |||
+ | "call_source": {{call_source}}, | ||
+ | |||
+ | "direction": {{direction}}, | ||
+ | |||
+ | "call_session_id":{{call_session_id}}, | ||
+ | |||
+ | "scenario_name": {{scenario_name}}, | ||
+ | |||
+ | "talk_time_duration": {{talk_time_duration}}, | ||
+ | |||
+ | "total_time_duration": {{total_time_duration}}, | ||
+ | |||
+ | "wait_time_duration": {{wait_time_duration}}, | ||
+ | |||
+ | "tag_names": {{tag_names}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "mag_secret": "ваш ключ в настройках телефонии в MAG.Travel" | ||
+ | |||
+ | } | ||
+ | |||
+ | '''Записанный разговор''' | ||
+ | |||
+ | POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/Record | ||
+ | |||
+ | { | ||
+ | |||
+ | "notification_name": {{notification_name}}, | ||
+ | |||
+ | "virtual_phone_number": {{virtual_phone_number}}, | ||
+ | |||
+ | "notification_time": {{notification_time}}, | ||
+ | |||
+ | "scenario_name": {{scenario_name}}, | ||
+ | |||
+ | "contact_info": { | ||
+ | |||
+ | "contact_phone_number": {{contact_phone_number}}, | ||
+ | |||
+ | "communication_number": {{communication_number}}, | ||
+ | |||
+ | "contact_id": {{contact_id}}, | ||
+ | |||
+ | "contact_full_name": {{contact_full_name}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "call_session_id": {{call_session_id}}, | ||
+ | |||
+ | "employee_info": { | ||
+ | |||
+ | "employee_full_name": {{employee_full_name}}, | ||
+ | |||
+ | "extension_phone_number": {{extension_phone_number}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "call_record_file_info": { | ||
+ | |||
+ | "file_link": {{file_link}}, | ||
+ | |||
+ | "call_record_duration": {{file_duration}} | ||
+ | |||
+ | }, | ||
+ | |||
+ | "tag_ids": {{tag_ids}}, | ||
+ | |||
+ | "tag_names": {{tag_names}}, | ||
+ | |||
+ | "mag_secret": "ваш ключ в настройках телефонии в MAG.Travel" | ||
+ | |||
+ | } |
Текущая версия на 11:56, 10 октября 2024
Версия статьи от 10-10-2024.
Содержание
Введение
Система MAG.Travel 2015 позволяет осуществлять интеграцию с рядом компаний, предоставляющих услуги IP-телефонии.
На данный момент их 5:
- Asterisk;
- Mango-Office;
- Mobilon;
- Oktell;
- Zadarma;
- UIS
Благодаря этому, появляется возможность осуществлять и принимать звонки от клиентов и фиксировать их в системе MAG.Travel 2015, а именно:
- Создавать клиентов из карточки звонка;
- Добавлять Лид, а также определять имеющийся лид по клиенту;
- Создавать предварительный заказ;
- Фиксировать звонки по лиду в списке обращений, а также в журнале звонков;
- Хранить записи телефонных разговоров (зависит от поставщика услуги IP-телефонии).
Asterisk
Перейдите в Администрирование (верхний правый угол с изображением шестерёнки). В открывшемся экране строчка – Настройка ip телефонии. В открывшемся экране Выберите «тип телефонии» - Asterisk и заполните такие данные как:
- Адрес сервера Asterisk,
- Порт для подключения к AMI (Asterisk management Interface),
- Логин AMI,
- Пароль AMI.
Ип с которых должен быть доступен Астериск по AMI
188.187.132.68
213.108.172.250
148.251.195.241
188.40.126.229
148.251.22.175
Посмотреть логин, пароль к AMI можно перейдя на сервере Asterisk по пути: /etc/asterisk/manager.conf
Для этого в manager.conf должны быть прописаны логин и пароль ами, а также разрешения на all
Пример конфигурации:
[magtravel]
secret = XXXXXXX
deny=0.0.0.0/0.0.0.0
permit=188.187.132.68/255.255.255.255
permit=213.108.172.250/255.255.255.255
permit=148.251.195.241/255.255.255.255
permit=188.40.126.229/255.255.255.255
permit=148.251.22.175/255.255.255.255
read = all,cdr
write = all,cdr
writetimeout = 500
- Вместо XXXXXXX необходимо указать пароль для подключения, который затем прописать в настройках телефонии в Маге.*
Должно быть также настроено событие AgentCalledEvent - http://fshareit.com/java/asterisk/asterisk-java/1.1.0-beta-javadoc/org/asteriskjava/manager/event/AgentCalledEvent.html
В файле queues.conf должна быть строка: eventwhencalled = yes
А также: eventmemberstatus = yes
И Астериск должен быть собран с модулем apps/app_queue.c
Можно указать контекст Астериск для исходящих звонков.
Этот контекст будет использоваться при звонке из Мага.
Если он не заполнен, то по умолчанию используется default (в большинстве случаев используется именно он)
Для прослушивания записей звонков необходимо настроить либо ftp либо http сервер
в случае интеграции через HTTP сервер на компьютере с Астериск должен быть развернут сервис, который по определенному относительному пути отдает файлы из папки /var/spool/asterisk/monitor/
в случае интеграции через FTP сервер аналогично должны отдаваться файлы из этой папки через FTP
Mag.Travel позволяет настроить умную переадресацию на ответственного сотрудника.
Умная переадресация - это перевод звонка от клиента, который в данный момент звонит, на ответственного менеджера, который указан в карточке этого клиента в CRM системе. Иными словами, клиент всегда дозванивается на менеджера, который ведет его дела в этой компании.
Настраивается Умная переадресация в Freepbx через дополнительное назначения: Добавляем дополнительно назначение:
Указываем цель (target) magtransfer,s,1 (4), и можно указать направление из умной переадресации (5)
Переходим в раздел Admin - Config Edit - extensions_custom.conf (FreePBX 13/14) (Для более ранних версий отредактируем файл /etc/asterisk/extensions_custom.conf вручную на сервере)
[magtransfer]
exten => s,1,Set(DEFEXT=200)
exten => s,n,Set(API_key=API_KEY_TEXT)
exten => s,n,Set(RingTime=15)
exten => s,n,ExecIf($[("${MOHCLASS}"!="default") & ("${MOHCLASS}"!="")]?Set(CHANNEL(musicclass)=${MOHCLASS}))
exten => s,n,Set(D_OPTIONS=m(${CHANNEL(musicclass)})Tt)
exten => s,n,NoOp(FROM_DID=${FROM_DID})
exten => s,n,NoOp(CALLERID(num)=${CALLERID(num)})
exten => s,n,Set(TOEXT=${CURL(https://2015.mag.travel/tourclient/api/Telephony/PhoneRedirectNumber/ID_IN_MAG/API_KEY_TEXT/${CALLERID(num)})})
exten => s,n,GotoIf($["${TOEXT}"!=""]?dst:nodst)
exten => s,n(dst),Dial(SIP/${TOEXT},${RingTime},${D_OPTIONS})
exten => s,n,Return()
exten => s,n(nodst),Dial(SIP/${DEFEXT},${RingTime},${D_OPTIONS})
exten => s,n,Return()
где:
- ID_IN_MAG – ID который указываете при входе в систему;
- API_KEY_TEXT – API ключ который Вы генерируете. - *Этот ключ так же должен быть прописан в настройках телефонии в MAG*
- DEFEXT - добавочный по умолчанию, на который пойдет звонок если TOEXT получит не верное значение
- FROM_DID - транк, на который поступил звонок
- TOEXT - номер телефона ответственного из настроек в ЛК (тут значение для нового клиента, или для известного)
Затем нужно направить звонок в входящем маршруте в созданное дополнительное назначение magtransfer
Mango-Office
Для интеграции с IP-телефонией Mango-Office необходимо быть действующим клиентом Mango-Office.
Регистрация в Mango-Office
Для начала интеграции с IP-телефонией Mango-Office, необходимо пройти регистрацию на сайте http://mango-office.ru
, а также пополнить баланс.
Регистрация в Mango-Office
Шаг 1. Войдите в Личный кабинет Виртуальной АТС (ВАТС).
Шаг 2. Перейдите в раздел «Интеграции»:
Шаг 3. Откройте вкладку «API коннектор».
Шаг 4. Сохраните данные вашей АТС для дальнейшего копирования в виджет CRM-системы или не закрывайте вкладку до окончания настройки интеграции.':
Шаг 5. В поле «адрес внешней системы» впишите адрес СRM-системы или сервера для принятия и обработки уведомлений, которые посылает API.
Также указать следующие данные:
Адрес внешней системы: https://2015.mag.travel/tourclient/api/Telephony/Mango/999 , где - 999 - Ваш ID который вы указываете при входе в MAG.Travel 2015;
SSL-сертификат: Не проверять сертификат;
Шаг 6. Установите безопасность посредством IP-адресов. Если вы хотите прослушивать записи разговоров прямо из CRM, то установите флаг «записи разговоров» (при этом необходимо подключить услугу «запись разговоров» в личном кабинете → вкладка «инструменты» → выберите пункт «запись разговоров» и нажмите кнопку «подключить»). Для принятия настроек нажмите кнопку «сохранить».
Скопируйте "Уникальный код вашей АТС" и "Ключ для создания подписи" (они потребуются для настройки телефонии в системе MAG.Travel 2015):
Шаг 7 Необходимо создать в системе сотрудников и создать им SIP-аккаунт.
Настройка Mango-Office в MAG.Travel 2015
Данные, скопированные из Личного кабинета Mango-Office, необходимо прописать в системе MAG.Travel 2015, в разделе "Настройки – Настройки ip телефонии".
Укажите внутренние номера сотрудников в MAG.Travel 2015 (в разделе "Настройки – Настройки ip телефонии") так, как они указаны у Вас в Виртуальной АТС Mango-Office.
В Mango-Office:
В MAG.Travel 2015:
После этого необходимо сохранить настройки в системе MAG.Travel 2015.
Для исходящего звонка нажмите на кнопку Позвонить в системе MAG.Travel 2015
Cервис Mango-Office сначала позвонит Вам, а потом соединит Вас с клиентом (используется SIP-Клиент).
При входящем звонке на ваш внутренний номер, вы увидите всплывающую карточку с номером телефона или сразу с именем туриста (если он есть в клиентской базе):
Внимание! Все разговоры ведутся по IP-телефонам (не через систему MAG.Travel 2015).
Назначение звонков ответственному менеджеру
В разделе Администрирование - Вкладка "Настройки" необходимо выбрать менеджера в настройке "Назначать неотвеченные звонки менеджеру".
Таким образом, не отвеченные звонки и клиенты, созданные на их основе будут назначены выбранному менеджеру, а также при повторных звонках - они будут перенаправлены именно на него.
Для корректной работы перенаправления звонков, необходимо также настроить входящую линию в Виртуальной АТС Mango-Office:
Необходимо настроить распределение звонков на группу абонентов за счёт создания схемы с установкой расписания, включающего Приветствие -> Переадресация на группу абонентов.
Настройка Mango-Office в MAG.Travel 2015
Данные, скопированные из Личного кабинета Mango-Office, необходимо прописать в системе MAG.Travel 2015, в разделе "Настройки – Настройки ip телефонии".
Укажите внутренние номера сотрудников в MAG.Travel 2015 (в разделе "Настройки – Настройки ip телефонии") так, как они указаны у Вас в Виртуальной АТС Mango-Office.
В Mango-Office:
В MAG.Travel 2015:
После этого необходимо сохранить настройки в системе MAG.Travel 2015.
Для исходящего звонка нажмите на кнопку Позвонить в системе MAG.Travel 2015 , сервис Mango-Office сначала позвонит Вам, а потом соединит Вас с клиентом (используется SIP-Клиент).
При входящем звонке на ваш внутренний номер, вы увидите всплывающую карточку с номером телефона или сразу с именем туриста (если он есть в клиентской базе):
Внимание! Все разговоры ведутся по IP-телефонам (не через систему MAG.Travel 2015).
Назначение звонков ответственному менеджеру
В разделе Администрирование - Вкладка "Настройки" необходимо выбрать менеджера в настройке "Назначать неотвеченные звонки менеджеру".
Таким образом, неотвеченные звонки и клиенты, созданные на их основе будут назначены выбранному менеджеру, а также при повторных звонках - они будут перенаправлены именно на него.
Для корректной работы перенаправления звонков, необходимо также настроить входящую линию в Виртуальной АТС Mango-Office:
Необходимо настроить распределение звонков на группу абонентов за счёт создания схемы с установкой расписания, включающего Приветствие -> Переадресация на группу абонентов.
Mobilon
Для интеграции с IP-телефонией Mobilon необходимо быть действующим клиентом Mobilon.
Настройка в Mobilon
В личном кабинете Mobilon, в разделе Интеграция, на вкладке Настройки необходимо прописать данные для интеграции с Mag.Travel 2015:
- Тип: Webhook;
- В поле URL для событий размещаем ссылку
https://2015.mag.travel/tourclient/api/telephony/Mobilon/999/events
, где - 999 - Ваш ID который вы указываете при входе в MAG.Travel 2015.
Также, необходимо создать Абонентов в разделе Конфигуратор подпункт Абонент:
Настройка Mobilon в MAG.Travel 2015
Для настройки в Mag.Travel 2015 необходимо перейти в раздел Администрирования, справочник Настройки IP-телефонии и в поле Тип телефонии выбрать Mobilion:
Также, далее нужно заполнить данные для пользователей системы, а именно внести у пользователя такие данные как:
- Внутренний номер;
- Userkey.
Данные для поля Userkey необходимо взять из данных абонентов в кабинете Mobilon:
После этого необходимо сохранить настройки в системе MAG.Travel 2015.
При входящем звонке на ваш внутренний номер, вы увидите всплывающую карточку с номером телефона или сразу с именем туриста (если он есть в клиентской базе):
Внимание! Все разговоры ведутся по IP-телефонам (не через систему MAG.Travel 2015).
Oktell
Для Интеграции с ip-телефонией Oktell необходимо:
В поле «Тип телефонии» выбрать Oktell
В поле «Автоматическое создание клиента» выбрать в каком из предложенных вариантов будет автоматически создан клиент: - Не создавать – при поступлении входящего звонка новый клиент создан не будет - При входящем с неизвестного номера – новый клиент создастся, если входящий звонок поступит с номера телефона, которого ещё нет в вашей базе - При пропущенном входящем с неизвестного номера - новый клиент создастся, если на входящий звонок не было ответа и такого номера телефона нет в вашей базе
Выбрать один из предложенных вариантов в поле «Автоматическое создание лида», где: - Не создавать – Лид в базе создан не будет - При каждом входящем звонке – Лид создается по каждому входящему звонку, не важно от кого и с какого номера телефона поступил звонок - При входящем с неизвестного номера – Лид создается только в том случае, если звонок поступил с неизвестного номера При пропущенном входящем с неизвестного номера - Лид создается, если на звонок не было ответа и он поступил с неизвестного номера
В поле «Изменять статус лида при пропущенном звонке» выбрать на какой статус Лида изменять статус, если звонок был пропущен (статусы подтягиваются из соответствующего справочника)
В поле «Сервер Oktell» прописать ссылку на ваш сервер Oktell с префиксом «ws://»
Внимание! Десктопное приложение Oktell не взаимодействует с Mag.Travel.
Zadarma
В ЛК ZADARMA перейдите в раздел "Настройки" - "API и интеграции". Здесь вы можете найти API ключ и ключ для создания подписи. Их нужно прописать в настройках IP телефонии в системе MAG.Travel
В разделе "Уведомления о звонках в АТС", в поле "Ссылка вашего ресурса" нужно указать ссылку вида: https://2015.mag.travel/TourClient/api/Telephony/Zadarma/9999/events при этом заменить 9999 на Ваш ID в MAG и справа отметьте все события:
Также в системе MAG.Travel, в настройках IP телефонии нужно прописать внутренние номера пользователей для которых будет доступна интеграция. В ZADARMA можно найти внутренние номера сотрудников в разделе Моя АТС, внутренние номера. Поле с номером - "Внутренний номер АТС"
Также, для записи разговоров должен быть установлен флаг: Запись разговоров - в облако
Для приема входящих звонков в ЛК ZADARMA должны быть подключены номера в разделе Моя АТС, внешние линии.
UIS
1. Подключить API
Нужно подключить компонент «Call API Базовый набор» и «Уведомления». Для переадресации на ответственного нужно также подключить «Call API Управление вызовами»\
Подключается компонент в разделе Администратор - Аккаунт - Тариф и опции:
2. Доступ к АПИ
Ключи генерируются на уровне пользователя в разделе личного кабинета "Аккаунт" → "Управление пользователями"
Существует два типа ключей:
Постоянный. Постоянный ключ имеет неограниченное время действия.
Временный. Временный ключ имеет конкретную дату окончания действия ключа.
Генерируем постоянный ключ.
При этом, будьте внимательны: ключ виден в интерфейсе и доступен для копирования только в момент генерации, после сохранения настроек вы сможете его увидеть только в коде своего приложения или другом месте, куда вы сохранили этот ключ.
3. Настройка доступа по IP
По умолчанию доступ к API запрещен всем, чтобы можно было делать запросы необходимо IP-адрес хоста с которого делается запрос добавить в белый список. Это можно сделать через личный кабинет "Администратор -> Аккаунт -> Правила и настройки безопасности" вкладка "API".
Наши IP:
148.251.195.241
188.40.126.229
148.251.22.175
185.26.169.104
4. Настройка IP телефонии в МАГЕ
Для настройки ip телефонии перейдите в системе маг в администрирование (шестеренка в правом верхнем угле), далее в “Настройки ip телефонии”
Здесь тип телефонии выбирайте UIS.
Ключ доступа к API UIS вставьте, что вы сгенерировали в личном кабинете UIS.
Ключ для API уведомлений придумайте сами, он понадобится в следующем пункте.
5. Настройка уведомлений
Чтобы настроить получение уведомлений, перейдите в раздел Сервисы и статистика, в боковом меню откройте Уведомления и нажмите добавить. В открывшемся окне необходимо заполнить параметры: название уведомления; тип события, о котором нужно вас уведомить; условия, при которых будет приходить уведомление; способ получения уведомлений.
Нужно настроить 8 HTTP уведомлений
При настройки уведомлений в каждый URL необходимо прописать свой ID Мага (В примере ID это 200). А также, в каждом шаблоне запроса вместо <ваш ключ в настройках телефонии в MAG.Travel> прописать Ключ для API уведомлений указанное в настройках телефонии в Маг, вы его создаете сами.
Входящее плечо
POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/IncomingLeg
{
"notification_name":Шаблон:Notification name,
"notification_time":Шаблон:Notification time,
"external_id": Шаблон:External id,
"contact_info":{
"contact_phone_number":Шаблон:Contact phone number,
"contact_id": Шаблон:Contact id
},
"employee_info": {
"employee_full_name": Шаблон:Employee full name,
"extension_phone_number": Шаблон:Extension phone number
},
"call_source": Шаблон:Call source,
"call_session_id":Шаблон:Call session id,
"direction": Шаблон:Direction,
"leg_id": Шаблон:Leg id,
"mag_secret": "ваш ключ в настройках телефонии в MAG.Travel"
}
Исходящее плечо
POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/OutgoingLeg
{
"notification_name":Шаблон:Notification name,
"notification_time":Шаблон:Notification time,
"external_id": Шаблон:External id,
"contact_info":{
"contact_phone_number":Шаблон:Contact phone number,
"contact_id": Шаблон:Contact id
},
"employee_info": {
"employee_full_name": Шаблон:Employee full name,
"extension_phone_number": Шаблон:Extension phone number
},
"call_source": Шаблон:Call source,
"call_session_id":Шаблон:Call session id,
"direction": Шаблон:Direction,
"leg_id": Шаблон:Leg id,
"mag_secret": "ваш ключ в настройках телефонии в MAG.Travel"
}
Входящий звонок на виртуальный номер
POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/IncomingLine
{
"notification_name":Шаблон:Notification name,
"virtual_phone_number":Шаблон:Virtual phone number,
"notification_time":Шаблон:Notification time,
"scenario_name": Шаблон:Scenario name,
"contact_info":{
"contact_phone_number":Шаблон:Contact phone number,
"communication_number":Шаблон:Communication number,
"contact_id": Шаблон:Contact id,
"contact_full_name": Шаблон:Contact full name
},
"call_session_id":Шаблон:Call session id,
"mag_secret": "ваш ключ в настройках телефонии в MAG.Travel"
}
Исходящий звонок
POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/Outgoing
{
"notification_name": Шаблон:Notification name,
"virtual_phone_number": Шаблон:Virtual phone number,
"notification_time": Шаблон:Notification time,
"contact_info":{
"contact_phone_number":Шаблон:Contact phone number,
"contact_id":Шаблон:Contact id,
"contact_full_name":Шаблон:Contact full name
},
"call_session_id":Шаблон:Call session id,
"employee_info":{
"employee_full_name":Шаблон:Employee full name,
"extension_phone_number": Шаблон:Extension phone number
},
"mag_secret": "ваш ключ в настройках телефонии в MAG.Travel"
}
Начало разговора
POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/CallStarted
{
"notification_name": Шаблон:Notification name,
"virtual_phone_number": Шаблон:Virtual phone number,
"notification_time": Шаблон:Notification time,
"contact_info":{
"contact_phone_number":Шаблон:Contact phone number,
"contact_id":Шаблон:Contact id,
"contact_full_name":Шаблон:Contact full name
},
"call_session_id":Шаблон:Call session id,
"employee_info":{
"employee_full_name":Шаблон:Employee full name,
"extension_phone_number": Шаблон:Extension phone number
},
"mag_secret": "ваш ключ в настройках телефонии в MAG.Travel"
}
Окончание разговора
POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/EndPart
{
"notification_name":Шаблон:Notification name,
"virtual_phone_number":Шаблон:Virtual phone number,
"notification_time":Шаблон:Notification time,
"external_id": Шаблон:External id,
"contact_info":{
"contact_phone_number":Шаблон:Contact phone number,
"communication_number":Шаблон:Communication number
},
"employee_info": {
"employee_full_name": Шаблон:Employee full name,
"extension_phone_number": Шаблон:Extension phone number
},
"call_info": {
"call_source": Шаблон:Call source,
"call_session_id":Шаблон:Call session id,
"direction": Шаблон:Direction,
"scenario_name": Шаблон:Scenario name,
"talk_time_duration": Шаблон:Talk time duration
},
"leg_ids": Шаблон:Leg ids,
"mag_secret": "ваш ключ в настройках телефонии в MAG.Travel"
}
Завершение звонка
POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/EndCall
{
"notification_name":Шаблон:Notification name,
"virtual_phone_number":Шаблон:Virtual phone number,
"notification_time":Шаблон:Notification time,
"external_id": Шаблон:External id,
"contact_info":{
"contact_phone_number":Шаблон:Contact phone number,
"communication_number":Шаблон:Communication number
},
"employee_info": {
"employee_full_name": Шаблон:Employee full name,
"extension_phone_number": Шаблон:Extension phone number
},
"call_info": {
"call_source": Шаблон:Call source,
"direction": Шаблон:Direction,
"call_session_id":Шаблон:Call session id,
"scenario_name": Шаблон:Scenario name,
"talk_time_duration": Шаблон:Talk time duration,
"total_time_duration": Шаблон:Total time duration,
"wait_time_duration": Шаблон:Wait time duration,
"tag_names": Шаблон:Tag names
},
"mag_secret": "ваш ключ в настройках телефонии в MAG.Travel"
}
Записанный разговор
POST https://2015.mag.travel/tourclient/api/Telephony/Uis/200/Record
{
"notification_name": Шаблон:Notification name,
"virtual_phone_number": Шаблон:Virtual phone number,
"notification_time": Шаблон:Notification time,
"scenario_name": Шаблон:Scenario name,
"contact_info": {
"contact_phone_number": Шаблон:Contact phone number,
"communication_number": Шаблон:Communication number,
"contact_id": Шаблон:Contact id,
"contact_full_name": Шаблон:Contact full name
},
"call_session_id": Шаблон:Call session id,
"employee_info": {
"employee_full_name": Шаблон:Employee full name,
"extension_phone_number": Шаблон:Extension phone number
},
"call_record_file_info": {
"file_link": Шаблон:File link,
"call_record_duration": Шаблон:File duration
},
"tag_ids": Шаблон:Tag ids,
"tag_names": Шаблон:Tag names,
"mag_secret": "ваш ключ в настройках телефонии в MAG.Travel"
}