Страница 1 из 1

Нет записи вызова и нет ошибок

Добавлено: 27 янв 2021, 19:41
rea
Всем привет.

Настраиваю запись исходящего вызова для Asterisk 16.2.1~dfsg-2ubuntu1 из состава ubuntu 20.04

Код: Выделить всё

*CLI> dialplan show
[ Context '__func_periodic_hook_context__' created by 'func_periodic_hook' ]
  'beep' (CID match '') =>  1. Answer()                                   [func_periodic_hook]
                    2. Playback(beep)                             [func_periodic_hook]
  'hook' (CID match '') =>  1. Set(EncodedChannel=${CUT(HOOK_CHANNEL,-,1-2)}) [func_periodic_hook]
                    2. Set(GROUP_NAME=${EncodedChannel}${HOOK_ID}) [func_periodic_hook]
                    3. Set(GROUP(periodic-hook)=${GROUP_NAME})    [func_periodic_hook]
                    4. ExecIf($[${GROUP_COUNT(${GROUP_NAME}@periodic-hook)} > 1]?Hangup()) [func_periodic_hook]
                    5. Set(ChannelToSpy=${URIDECODE(${EncodedChannel})}) [func_periodic_hook]
                    6. ChanSpy(${ChannelToSpy},qEB)               [func_periodic_hook]

[ Context 'outgoing_calls' created by 'pbx_config' ]
  '_X.' =>          1. Monitor(wav,/tmp/testcall,mb)              [extensions.conf:16]
                    2. Dial(SIP/${EXTEN}@manga6)                  [extensions.conf:17]

-= 3 extensions (10 priorities) in 2 contexts. =-

*CLI> module show like mon
Module                         Description                              Use Count  Status      Support Level
app_mixmonitor.so              Mixed Audio Monitoring Application       0          Running              core
res_monitor.so                 Call Monitoring Resource                 2          Running        deprecated
res_stun_monitor.so            STUN Network Monitor                     0          Running              core
3 modules loaded

делаю вызов и он проходит успешно

Код: Выделить всё

CLI> channel originate SIP/manga6/79307591234 application Playback /var/tmp/10
  == Using SIP RTP CoS mark 5
    -- Called manga6/79307591234
    -- SIP/manga6-00000001 is ringing
    -- SIP/manga6-00000001 is making progress
    -- SIP/manga6-00000001 answered
    -- <SIP/manga6-00000001> Playing '/var/tmp/10.slin' (language 'en')
но файла в /tmp не появляется, в логе ни ошибок ни предупреждений
пробовал и без "/tmp/" - в /var/spool/asterisk/monitor также пусто
пробовал и MixMonitor, также без резудьтата
что я делаю не так ?

Re: Нет записи вызова и нет ошибок

Добавлено: 28 янв 2021, 11:31
ded
Обзвон делаете? Типа - автоинформатор? Попробуйте послушать через ChanSpy вручную что в канале делается при originate. И можно видеть, что в вашем примере при вызове originate никакого обращения к контекстам func_periodic_hook и __func_periodic_hook_context__ нету.
1. Monitor(wav,/tmp/testcall,mb)
/tmp/testcall и /var/tmp/10 - не одно и то же, wav и slin не одно и то же. Результатом Monitor будет два файла, Тх и Rx два аудио потока.

Мысль ваша не совсем ясна. Чтобы не делать сложные конструкции (выше изложены), попробуйте начать с простых примеров, имея ввиду, что дефолтная директория для записи вызовов - /var/spool/asterisk/monitor

Код: Выделить всё

[outgoing_calls]
 exten => _X.,1,Monitor(wav,${EXTEN},mb) 
 exten => _X.,n,(SIP/manga6/${EXTEN})
Синтаксис вызова такой:
CLI> originate Local/79012345678@outgoing_calls application Playback you_say_yes

Re: Нет записи вызова и нет ошибок

Добавлено: 28 янв 2021, 14:34
rea
Спасибо за ответ.

1. да, делаю чтото типа автоинформатора, в итоге будет работать через AMI
2. приведенный ранее Context '__func_periodic_hook_context__' остался от func_periodic_hook.so, сейчас отключил вообще всё лишнее, теперь остался только нужный мне outgoing_calls
3. я понимаю что /var/tmp/10 это мой файл /var/tmp/10.wav которым я успешно информирую, а /tmp/testcall - это что я ожидал на запись (тестировал синтаксис)
4. два файла от Monitor мне даже больше подойдут т.к затем буду анализировать ответ от абонента
5. сейчас оставил только указанный вами dialplan, он работает, но файлы в /var/spool/asterisk/monitor не появляются
6. не пойму, почему включив расширенный лог verbose => notice,warning,error,verbose,debug,* (в файле logger.conf) и подав core set debug 10 (в CLI) я не вижу про запись никаких упоминаний - ни плохих, ни хороших
7. как можно еще диагностировать проблему ?

Re: Нет записи вызова и нет ошибок

Добавлено: 28 янв 2021, 15:24
ded
Тогда просто Monitor(wav,${EXTEN})

*CLI> logger show channels
покажет что у вас включено

Подробно увидите если
*CLI> core set verbose 10

Re: Нет записи вызова и нет ошибок

Добавлено: 28 янв 2021, 15:42
rea

Код: Выделить всё

*CLI> dialplan show
[ Context 'outgoing_calls' created by 'pbx_config' ]
  '_X.' =>          1. Monitor(wav,${EXTEN})                      [extensions.conf:7]
                    2. (SIP/manga6/${EXTEN})                      [extensions.conf:8]

-= 1 extension (2 priorities) in 1 context. =-
*CLI> logger show channels
Logger queue limit: 1000

Channel                             Type     Formatter  Status    Configuration
-------                             ----     ---------  ------    -------------
/var/log/asterisk/verbose           File     default    Enabled    - DEBUG ---EVENT--- NOTICE WARNING ERROR VERBOSE DTMF CC SIP_HISTORY FAX PJSIP_HISTORY SECURITY 
/var/log/asterisk/messages          File     default    Enabled    - NOTICE WARNING ERROR 
                                    Console  default    Enabled    - NOTICE WARNING ERROR VERBOSE 

в логе ошибок не вижу, файл записи не появился

Re: Нет записи вызова и нет ошибок

Добавлено: 28 янв 2021, 18:39
rea
проверил через rtp set debug on - логгируются записи типа Sent|Got RTP packet

Re: Нет записи вызова и нет ошибок

Добавлено: 28 янв 2021, 23:13
rea
если после звонка в CLI подать команду типа mixmonitor start SIP/manga6-00000010 ffff.wav , то файл создался и там было оба канала
т.е. вручную запись идет, но почему автоматически нет ?

Re: Нет записи вызова и нет ошибок

Добавлено: 29 янв 2021, 16:12
ded
rtp set debug on тут незачем.
Console default Enabled - NOTICE WARNING ERROR VERBOSE показывает, что у вас тут в консоли не объявлены сообщения debug
Только NOTICE WARNING ERROR VERBOSE
а в журнале /var/log/asterisk/verbose вы их вполне увидите.
Сделайте Answer -

Код: Выделить всё

[outgoing_calls]
exten => _X.,1,Answer
exten => _X.,n,Monitor(wav,${EXTEN},mb)
exten => _X.,n,(SIP/manga6/${EXTEN})

Re: Нет записи вызова и нет ошибок

Добавлено: 29 янв 2021, 17:45
rea
поставил указанный dialplan и включил отладку
делаю звонок (из CLI), но записи нет
сделал еще один звонок, увидел номер канала и сразу подал команду mixmonitor start SIP/manga6-00000003 mmmmm.wav (команду monitor из CLI незнаю как подать)
в логе увидел строки касательно монитора:

Код: Выделить всё

/var/log/asterisk# tail -f verbose | grep -i mon
[Jan 29 17:23:56] VERBOSE[225929] app_mixmonitor.c: Begin MixMonitor Recording SIP/manga6-00000003
[Jan 29 17:24:05] VERBOSE[225929] app_mixmonitor.c: MixMonitor close filestream (mixed)
[Jan 29 17:24:05] VERBOSE[225929] app_mixmonitor.c: End MixMonitor Recording SIP/manga6-00000003
[Jan 29 17:24:05] DEBUG[225929] app_mixmonitor.c: No recipients to forward monitor to, moving on.
файл создался :

Код: Выделить всё

:/var/spool/asterisk/monitor# ls -al mmmmm.wav 
-rw-r--r-- 1 asterisk asterisk 134124 Jan 29 17:24 mmmmm.wav