Asterisk-CDR-Viewer-Mod icon indicating copy to clipboard operation
Asterisk-CDR-Viewer-Mod copied to clipboard

Replacing "Macro" to "GoSub"

Open mammuthus opened this issue 6 years ago • 5 comments

App_macro is deprecated[1] and not exists[2] in default build of Asterisk. GoSub is suitable function. "macro-" prefix in context name is no longer needed.

[1] Details: https://wiki.asterisk.org/wiki/display/AST/app_macro+Deprecation [2] Can cause this error: pbx.c:2907 pbx_extension_helper: No application 'Macro' for extension (context,,)

mammuthus avatar Jun 03 '19 09:06 mammuthus

Что-то у меня не работает так. status is 'UNKNOWN'

sardigital avatar Jun 03 '19 11:06 sardigital

Статус пира тут вообще не используется. Вот из моего прода, работает:

[context] exten => _X.,1,GoSub(recording,s,1(${CALLERID(num)},${EXTEN})) exten => _X.,n,Dial(PJSIP/${EXTEN},60)

[recording] exten => s,1,Set(WAV=/rec/${UNIQUEID}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H_%M)}-${ARG1}-${ARG2}) exten => s,n,Set(CDR(filename)=${WAV}.wav) exten => s,n,MixMonitor(${WAV}.wav,b) exten => s,n,return

mammuthus avatar Jun 03 '19 11:06 mammuthus

ок, потом разберусь, спасибо за труд

sardigital avatar Jun 03 '19 12:06 sardigital

ок, потом разберусь, спасибо за труд

exten => s,n,Return; Добавил в [recording] и всё заработало

sardigital avatar Jun 05 '19 04:06 sardigital

Только переход на субрутину надо делать по-другому, чтобы не создавались пустые файлы, если на звонок не ответили. Вариант ниже запускает субрутину только при ответе: same=n(callrec),Dial(PJSIP/${EXTEN},,TtRrU(record^${CALLERID(num)}^${EXTEN})) Здесь record — имя субрутины. Это для стандартных абонентов. Для очередей запускать субрутину лучше автоматически, есть специальный параметр очереди: membergosub=recque Здесь reсque — субрутина для записи в очереди.

anutator avatar Oct 07 '19 07:10 anutator