ВидеоКонф(ВКС)  ::   Чат  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Запись одного говорящего.

Проблемы и их решения Asterisk как такового

Модератор: april22

Запись одного говорящего.

Сообщение spirt » 05 ноя 2021, 19:06

У нас в нерабочее время входящий звонок поступает в следующий контекст и после бипа нужно чтобы астер записал сообщение от звонящего.

exten = _X.,1,Answer()
same = n,Playback(ivr/same = n,Playback(ivr/none-worktime))
same = n,Playback(beep)
same = n,Set(fname=${UNIQUEID}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H_%M)});
same = n,Set(CDR(filename)=${fname}.wav);
same = n,MixMonitor(${DIR_RECORDS}${fname}.wav);
same = n,Hangup()

Однако после бипа астер кладёт трубку. Прошу подсказать, как решить данный вопрос.
spirt
 
Сообщений: 24
Зарегистрирован: 08 фев 2016, 02:15

Re: Запись одного говорящего.

Сообщение ded » 05 ноя 2021, 22:11

Если после бипа астер кладёт трубку, значит не выполняется шаг
same = n,Set(fname=${UNIQUEID}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H_%M)});

Вставляйте проверку до и после
same = n,NoOp(File name is ${fname})

Почему он не выполняется - подскажет консоль. Включайте вербозность побольше
CLI> core set verbose 10
и читайте что вам скажет Астериск в консоли.

Поле CDR(filename) в базе имеет длину 120 символов, может ваш ${fname}.wav) длинее?
ded
 
Сообщений: 15239
Зарегистрирован: 26 авг 2010, 19:00

Re: Запись одного говорящего.

Сообщение Zavr2008 » 05 ноя 2021, 22:43

Dial не вижу, поэтому бип и дальше пролетает до Hangup почти моментально.
Российские шлюзы E1 Alvis-GW. Voip-Модернизация УПАТС, FreePBX, CRM. Продолжаем работать, импортозамещаем!
Аватар пользователя
Zavr2008
 
Сообщений: 1933
Зарегистрирован: 27 янв 2011, 01:35

Re: Запись одного говорящего.

Сообщение spirt » 06 ноя 2021, 04:34

ded писал(а):Если после бипа астер кладёт трубку, значит не выполняется шаг
same = n,Set(fname=${UNIQUEID}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H_%M)});

Выполняется
ded писал(а):Вставляйте проверку до и после
same = n,NoOp(File name is ${fname})

Почему он не выполняется - подскажет консоль. Включайте вербозность побольше
CLI> core set verbose 10
и читайте что вам скажет Астериск в консоли.

Сделал как было сказано. Гляньте пожалуйста вывод консоли:
[Показать] Спойлер:
-- Executing [77172642812@othertime:1] NoOp("SIP/voip-77172642812-00000a08", "7010064646 => 77172642812") in new stack
-- Executing [77172642812@othertime:2] Answer("SIP/voip-77172642812-00000a08", "") in new stack
> 0x7efda0079a60 -- Strict RTP switching to RTP target address 185.48.127.7:18534 as source
-- Executing [77172642812@othertime:3] Playback("SIP/voip-77172642812-00000a08", "/var/lib/asterisk/sounds/ivr/none-worktime") in new stack
-- <SIP/voip-77172642812-00000a08> Playing '/var/lib/asterisk/sounds/ivr/none-worktime.alaw' (language 'ru')
> 0x7efda0079a60 -- Strict RTP learning complete - Locking on source address 185.48.127.7:18534
-- Executing [77172642812@othertime:4] Playback("SIP/voip-77172642812-00000a08", "beep") in new stack
-- <SIP/voip-77172642812-00000a08> Playing 'beep.alaw' (language 'ru')
-- Executing [77172642812@othertime:5] NoOp("SIP/voip-77172642812-00000a08", "File name is ") in new stack
-- Executing [77172642812@othertime:6] Set("SIP/voip-77172642812-00000a08", "fname=1636158320.4653-2021-11-06-06_25") in new stack
-- Executing [77172642812@othertime:7] NoOp("SIP/voip-77172642812-00000a08", "File name is 1636158320.4653-2021-11-06-06_25") in new stack
-- Executing [77172642812@othertime:8] Set("SIP/voip-77172642812-00000a08", "CDR(filename)=1636158320.4653-2021-11-06-06_25.wav") in new stack
-- Executing [77172642812@othertime:9] MixMonitor("SIP/voip-77172642812-00000a08", "/var/calls/1636158320.4653-2021-11-06-06_25.wav") in new stack
-- Executing [77172642812@othertime:10] Hangup("SIP/voip-77172642812-00000a08", "") in new stack
== Begin MixMonitor Recording SIP/voip-77172642812-00000a08
== Spawn extension (othertime, 77172642812, 10) exited non-zero on 'SIP/voip-77172642812-00000a08'
== MixMonitor close filestream (mixed)
== End MixMonitor Recording SIP/voip-77172642812-00000a08

ded писал(а):Поле CDR(filename) в базе имеет длину 120 символов, может ваш ${fname}.wav) длинее?

Длина имени меньше 120 символов.
spirt
 
Сообщений: 24
Зарегистрирован: 08 фев 2016, 02:15

Re: Запись одного говорящего.

Сообщение spirt » 06 ноя 2021, 04:37

Zavr2008 писал(а):Dial не вижу, поэтому бип и дальше пролетает до Hangup почти моментально.

Это входящий звонок. На него мы делаем same = n,Answer(). Dial вроде как не нужен. Или я не прав?
spirt
 
Сообщений: 24
Зарегистрирован: 08 фев 2016, 02:15

Re: Запись одного говорящего.

Сообщение Zavr2008 » 06 ноя 2021, 05:49

Answer лишь переводит входящее плечо звонка в состояние ответа.
А дальше уже диалплан должен заботиться что с ним делать - позвонить куда либо (тогда Dial нужен), Playback какой зарядить или IVR.
В Вашем же случае не читали Будущего Телефонии явно.
Поставьте хотя бы MusicOnHold как указано тут.
Российские шлюзы E1 Alvis-GW. Voip-Модернизация УПАТС, FreePBX, CRM. Продолжаем работать, импортозамещаем!
Аватар пользователя
Zavr2008
 
Сообщений: 1933
Зарегистрирован: 27 янв 2011, 01:35

Re: Запись одного говорящего.

Сообщение spirt » 06 ноя 2021, 12:49

Zavr2008 писал(а):А дальше уже диалплан должен заботиться что с ним делать - позвонить куда либо (тогда Dial нужен), Playback какой зарядить или IVR.

Всё верно, Dial нужен только если нужно позвонить куда-либо. А в нашей ситуации звонок не требуется. Человек позвонил ночью - астер снял трубку и Playback сказал ему что он невовремя и предложил высказаться по этому поводу после бипа. И нужно как-то это высказывание записать. IVR тоже не нужен.
Zavr2008 писал(а):В Вашем же случае не читали Будущего Телефонии явно.

Читал 3-е и 4-е издание, много. Но там же море информации, всего не упомнишь...
Не понимаю каким образом музыка на удержании может повлиять на ситуацию? По вашей же ссылке сказано, что она используется если заданный екстеншен переводиться в режим ожидания. В нашем же случае звонящий не испытывает никакого ожидания. К тому же музыка на удержании уже настроена по умолчанию.
На всякий случай попробую настроить сегодня по наступлению нерабочего времени, вдруг и вправду поможет...
spirt
 
Сообщений: 24
Зарегистрирован: 08 фев 2016, 02:15

Re: Запись одного говорящего.

Сообщение Zavr2008 » 06 ноя 2021, 13:27

Playback сказал ему что он невовремя и предложил высказаться по этому поводу после бипа

Это называется автоответчик. Для этого приложение есть в диалплане тут.
То, что Вы лишь запустили MixMonitor ничего не решает)
Он лишь записывает в стерео обе стороны.
Второго плеча (второй стороны) у звонка нет - делаете playback(beep) и дальше просто трубку кладете.
Российские шлюзы E1 Alvis-GW. Voip-Модернизация УПАТС, FreePBX, CRM. Продолжаем работать, импортозамещаем!
Аватар пользователя
Zavr2008
 
Сообщений: 1933
Зарегистрирован: 27 янв 2011, 01:35

Re: Запись одного говорящего.

Сообщение ded » 06 ноя 2021, 14:26

Да, spirt изобретает Voicemail. Который уже изобретён.
spirt писал(а):А в нашей ситуации звонок не требуется. Человек позвонил ночью - астер снял трубку и Playback сказал ему что он невовремя и предложил высказаться по этому поводу после бипа

Используйте приложение Voicemail.
ded
 
Сообщений: 15239
Зарегистрирован: 26 авг 2010, 19:00

Re: Запись одного говорящего.

Сообщение Wapo » 06 ноя 2021, 15:58

Лучше уж Record-приложение
Аватар пользователя
Wapo
 
Сообщений: 767
Зарегистрирован: 02 мар 2011, 18:53

След.

Вернуться в Конфигурация и настройка Asterisk

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10

© 2008 — 2022 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH