BlizD/Tasks

Расширение АТС.

serg33rus opened this issue · 12 comments

UPDATE 130922:
Расширение полностью переписано. Изменен принцип обращения из АТС в Task
Описание и последняя версия https://infos33.ru/1%d1%81-asterix/

Ранее
Немного предыстории. Давно бродила мысль, что надо фиксировать входящие от клиентов звонки. Внешняя компонента не зашла. И работает только на клиенте, и каждый клиент открывает свое соединение, и AMI Астериска по умолчанию не отвечает по сети. админа продавить можно, но он кричит и сопротивляется.
Тогда пошли другим путем. На сервере с Астериском запускается приблуда, которая сыплет события из АТС на http сервис в 1С. Сразу решается куча вопросов. AMI на localhost как правило открыт, события падают на сервер, т.е. неважно запущена у пользователя 1С или нет, одно соединение на всех. Правда возник вопрос как пользователю передавать инфу. Вопрос решился развертыванием Системы взаимодействия 1С. Без нее работать будет, но пользователь не получит уведомление о входящем звонке.
Как сейчас это работает. На http сервис в 1С падают событие, расширение проверяет, что это внешний входящий звонок, записывает его в систему, по СВ посылает уведомление пользователю о звонке. После окончания разговора по СВ пользователю предлагается заполнить информацию по звонку. Из уведомления есть возможность Создать задачу, если надо. Длительность ожидания и разговора подсчитывается автоматически. Если на звонок не ответили, то пользователю посылается уведомление о пропущенном звонке со командой "Перезвонить".

Если хочется иметь функционал "Перезвонить", то на сервер АТС надо выложить файлик out.php в каталог
1C к нему обращается по пути http://ВашаАТС:Порт/shl/out.php?from=ОтКого &to= Кому
Файлик тоже очень простой и так же у админом какого-то раздражения не вызывает.
Настройки Астериска ковырять не надо.

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

Еще один момент. Есть возможность включить отладку и тогда в отдельный документ будут падать события "как есть". На этапе разработки было очень полезно. Возможно кому-то пригодится, чтобы понять как это вообще работает.

Еще момент. Для звонков реализован свой справочник контактов и используется справочник Контрагентов из основной конфигурации. Это сделано для того, чтобы можно было для входящего телефона указать конкретного человека. Он показывается в уведомлении пользователю.

Вот вроде и все.
Ссылка на расширение (v. 3.1.2.15) - https://infos33.ru/files/%D0%B0%D1%82%D1%81HTTP_3.1.2.15.cfe
Описание чуть подробнее https://infos33.ru/project2.html

Если есть вопросы, предложения, идеи - всегда готов обсудить.

Добрый день. Астериск может писать историю звонков (CDR) в любую базу данных через ODBC. А к этой базе можно из 1С уже обращаться. Я у себя так делал журнал звонков для пользователей. С записью разговоров тоже проблем не было. Я формировал имя файла при поступлении звонка и добавлял его как дополнительное поле в CDR. Потом по этому имени можно найти файл и скачать/послушать.
А для управления можно попробовать использовать Asterisk Rest Interface.

Был у нас журнал звонков АТС через веб. Он и сейчас есть :-).
Но все-таки решили сделать его в задачах. Там прелесть в том, что уведомления падают в реальном времени и все в одном флаконе. Тут же можно заполнить звонок, создать задачу. Хотя это все чисто наши хотелки :-)
К тому же работает с Астерском "из коробки".
У нас Астериск работает с mysql, а он наружу не отвечает. Т.е. из 1С и не подберешься. И к AMI тоже.
Но на на самом деле есть куча вариантов решения вопроса. Расширение - это лишь один из них.

BlizD commented

Спасибо за расширение. Добавлю в список.

BlizD commented

Пожалуйста Добавь еще скриншотов как это выглядит в работе

Скриншоты
scr1
scr2

А база знаний на скрине это тоже отдельное расширение?

Да, вот здесь лежит #275
Это моя база, а у меня все это подключено и используется.

Антон, привет.
Сделал какое-никакое описание расширения АТС. Но на сайте https://infos33.ru/project2.html
Там же и последняя версия расширения. Которая здесь уже устарела и неактуальна.
Сайта хватит или как-то иначе сделать описание?

BlizD commented

Антон, привет. Сделал какое-никакое описание расширения АТС. Но на сайте https://infos33.ru/project2.html Там же и последняя версия расширения. Которая здесь уже устарела и неактуальна. Сайта хватит или как-то иначе сделать описание?

Привет, сайт отличный.
Единственно можешь в первом сообщении здесь обновить все таки ссылку на актуальное расширение.

Ссылку обновил. Ссылка теперь смотрит не на google, а на сайт. Так оно надежнее. И не денется никуда и версию буду поддерживать в актуальном состоянии.

BlizD commented

@serg33rus отлично, спасибо.

Расширение полностью переписано. Изменен принцип обращения из АТС в Task
Описание и последняя версия https://infos33.ru/1%d1%81-asterix/