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

Для решения этой задачи, есть модуль chanspy в asterisk, его и будем настраивать.

Открываем конфигурационный файл

/etc/asterisk/extensions_override_freepbx.conf

 

У меня этот файл частично заполнен:

[app-chanspy]
; шепот (позволяет суфлировать неопытному менеджеру во время переговоров)
exten => 555,1,Macro(user-callerid)
exten => 555,2,Authenticate(здесь_цифровой_пароль)
exten => 555,3,Read(SPYNUM,agent-newlocation)
exten => 555,4,ChanSpy(PJSIP/${SPYNUM},qdv(-1))
; оба канала
exten => 556,1,Macro(user-callerid)
exten => 556,2,Authenticate(здесь_цифровой_пароль)
exten => 556,3,Read(SPYNUM,agent-newlocation)
exten => 556,4,ChanSpy(PJSIP/${SPYNUM},qBv(-1))
; простое прослушивание (прослушка без суфлирования)
exten => 557,1,Macro(user-callerid)
exten => 557,2,Authenticate(здесь_цифровой_пароль)
exten => 557,3,Read(SPYNUM,agent-newlocation)
exten => 557,4,ChanSpy(PJSIP/${SPYNUM},qv(-1))

;прослушивание определенных номеров
exten => 5582222,1,ChanSpy(PJSIP/2222,qv(-1)
;--== end of [app-chanspy] ==--;

Теперь достаточно перезагрузить конфиги, подключившись через консоль к серверу с asterisk и выполнив

asterisk -rvv

Войти в CLI, а оттуда:

core restart when convient

После чего, дождаться перезагрузки (когда все трубки будут повешены) и можно тестировать:

Набираем 5582222 и слушаем переговоры с номера 2222.

 

Вам ведь не нужно напоминать, что вы все делаете на свой страх и риск, и автор статьи не несет ответственности за возможный причиненный ущерб? ;-) Экспериментируйте, ведь дорогу осилит идущий.