Блоги разработчиков

Как работает 1С:Телефония "Входящий звонок"



При входящем звонке сервер Asterisk при помощи компоненты связи вызывает в 1С внешнее событие, в котором среди прочей служебной информации передается и номер звонящего абонента.
[spoiler]
Пакет передаваемый в 1С в общем случае выглядит так:

Event: Dial
Privilege: call,all
Subevent: Begin
Channel: SIP/mangotrunk-0000016c
Destination: SIP/261-0000016d
Calleridnum: 74997623634
Calleridname: 74997623634
Uniqueid: 1324068645.605
Destuniqueid: 1324068650.606
Dialstring: 261


В то время как Asterisk занимается маршрутизацией звонка, в 1С мы по номеру телефона переданного в параметреCalleridnum: 74997623634 находим в базе контрагента ООО "Василек". На поиски уходят доли секунды, и во время первого звонка на телефонном аппарате, в 1С уже известно кто сейчас набрал наш номер. Мы можем просмотреть отчет о задолженности, подробную контактную информацию, какие-то другие важные сведения еще до поднятия трубки.

Пользователь 1С снимает трубку и начинает разговор с контрагентом ООО "Василек", и в тот же момент открывается документ "Событие" с заполненным полем контрагент. А если в скрытом реквизите запомнить уникальный идентификатор звонка Uniqueid: 1324068645.605, то в будущем мы всегда сможем прослушать запись разговора сохраненную на сервере Asterisk.