Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
serg33rus opened this issue Jan 11, 2021 · 12 comments
Open

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

serg33rus opened this issue Jan 11, 2021 · 12 comments
Assignees

Comments

@serg33rus
Copy link

serg33rus commented Jan 11, 2021

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

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

@emayskiy
Copy link

emayskiy commented Jan 11, 2021

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

@serg33rus
Copy link
Author

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

@BlizD
Copy link
Owner

BlizD commented Jan 14, 2021

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

@BlizD
Copy link
Owner

BlizD commented Jan 14, 2021

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

@serg33rus
Copy link
Author

serg33rus commented Jan 14, 2021

Скриншоты
scr1
scr2

@emayskiy
Copy link

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

@serg33rus
Copy link
Author

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

@serg33rus
Copy link
Author

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

@BlizD
Copy link
Owner

BlizD commented Oct 30, 2021

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

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

@serg33rus
Copy link
Author

serg33rus commented Oct 30, 2021

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

@BlizD
Copy link
Owner

BlizD commented Oct 30, 2021

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

@serg33rus
Copy link
Author

serg33rus commented Sep 13, 2022

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants