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

Нет гудков при звонке

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

Нет гудков при звонке

Сообщение AndreyChe » Вчера, 13:42

Разворачиваю АТС на базе чистого Asterisk 20.9.3, на текущий момент есть тестовый конфиг с минимальным функционалом.
Использую pjsip wizard:

Код: выделить все
[user_contoso](!)
type = wizard
transport = udp-transport
accepts_registrations = yes
sends_registrations = no
accepts_auth = yes
sends_auth = no
has_hint = yes
hint_context = from-contoso
endpoint/context = from-contoso
endpoint/allow_subscribe = yes
endpoint/disallow=all
endpoint/allow = alaw,ulaw
endpoint/direct_media = no
endpoint/device_state_busy_at = 1
endpoint/trust_id_outbound = yes
aor/max_contacts = 1

[200](user_contoso)
hint_exten = 200
inbound_auth/username = 200
inbound_auth/password = XXXX
endpoint/callerid = Иванов <200>

[201](user_contoso)
hint_exten = 201
inbound_auth/username = 201
inbound_auth/password = XXXX
endpoint/callerid = Петров <201>

[202](user_contoso)
hint_exten = 202
inbound_auth/username = 202
inbound_auth/password = XXXX
endpoint/callerid = Сидоров <202>


как видим, тут три абонента и вот такой простейший диалплан с меню:

Код: выделить все
[from-contoso]
exten = _2XX,1,Dial(PJSIP/${EXTEN},,Tt)
exten => 999,1,Goto(contoso-ivr,start,1)

[contoso-ivr]
exten => start,1,Answer()
same => n,Background(vm-whichbox)
same => n,WaitExten(10)

exten = _2XX,1,Dial(PJSIP/${EXTEN})

exten => i,1,Playback(pbx-invalid)
same => n,Goto(contoso-ivr,start,1)

exten => t,1,Playback(please-try-again)
same => n,Goto(contoso-ivr,start,1)


то есть абоненты могут звонить друг-другу и на голосовое меню по номеру 999

Суть проблемы в следующем: при звонке абонентов дург-другу напрямую по номерам 2ХХ во время звонка гудок присутствует, то есть все ок, а вот если позвонить на голосовое меню по номеру 999, а потом набрать внутренний номер абонента 2ХХ, то ему звонок проходит, но гудков мы не слышим, пока он не возьмет трубку - полная тишина, а в консоле астериска вот такая ошибка:

[Oct 31 11:21:50] WARNING[2242][C-00000035]: channel.c:5772 set_format: Unable to find a codec translation path: (slin) -> (alaw)
[Oct 31 11:21:50] WARNING[2242][C-00000035]: indications.c:140 playtones_alloc: Unable to set 'PJSIP/298-0000005e' to signed linear format (write)
[Oct 31 11:21:50] WARNING[2242][C-00000035]: channel.c:4689 indicate_data_internal: Unable to handle indication 3 for 'PJSIP/298-0000005e


судя по тексту, вроде, что-то с кодеками, но я не могу понять что конкретно, гугл по этим сообщениям ничего вразумительного не дает. Вообще странно, то есть при прямых звонках гудок есть, при наборе через меню - нет.
AndreyChe
 
Сообщений: 5
Зарегистрирован: 18 фев 2015, 19:18

Re: Нет гудков при звонке

Сообщение ded » Вчера, 16:14

Вразумительное:
1) Скорее всего вам просто нужно приветствие, из котороого можно делать донабор. Для этого нет смысла использовать интерактивное меню.

2) Обычно там происходит запись разговора, и для синхронизации Тх и Rx готолосвых потоков оба плеча перекодируются в slin - signed linear нативный линейный кодек, который может синхронизировать два и более потоков, в отличии от alaw, ulaw, g722, g729, g726, etc.
Если телефоны просто связываются одним кодеком без записи, то перекодировка и не нужна.

Возможно кодеков действительно не хватает. Проверить - командой
CLI> core show translation
показывает таблицу со значениями перекодировки из одного в другой в микросекундах.
ded
 
Сообщений: 15902
Зарегистрирован: 26 авг 2010, 19:00

Re: Нет гудков при звонке

Сообщение AndreyChe » Вчера, 16:37

1) Скорее всего вам просто нужно приветствие, из котороого можно делать донабор. Для этого нет смысла использовать интерактивное меню.

Так у меня так и есть по сути или я что-то не понимаю и есть какой-то другой вариант?
Вообще будет так: при звонке на определенный номер будет сообщение: хотите отдел1 - нажмите 1, хотите отдел2 - нажмите 2 или наберите внутренний номер сотрудника или дождитесь ответа секретаря, то есть все достаточно стандартно, я как-то не так составил IVR?

Возможно кодеков действительно не хватает. Проверить - командой
CLI> core show translation
показывает таблицу со значениями перекодировки из одного в другой в микросекундах.

вот результат:

Код: выделить все
asterisk*CLI> core show translation
         Translation times between formats (in microseconds) for one second of data
          Source Format (Rows) Destination Format (Columns)

           ulaw   gsm slin8 slin12 slin16 slin24 slin32 slin44 slin48 slin96 slin192  g722
     ulaw     - 15000  9000  17000  17000  17000  17000  17000  17000  17000   17000 17250
      gsm 15000     -  9000  17000  17000  17000  17000  17000  17000  17000   17000 17250
    slin8  6000  6000     -   8000   8000   8000   8000   8000   8000   8000    8000  8250
   slin12 14500 14500  8500      -   8000   8000   8000   8000   8000   8000    8000 14000
   slin16 14500 14500  8500   8500      -   8000   8000   8000   8000   8000    8000  6000
   slin24 14500 14500  8500   8500   8500      -   8000   8000   8000   8000    8000 14500
   slin32 14500 14500  8500   8500   8500   8500      -   8000   8000   8000    8000 14500
   slin44 14500 14500  8500   8500   8500   8500   8500      -   8000   8000    8000 14500
   slin48 14500 14500  8500   8500   8500   8500   8500   8500      -   8000    8000 14500
   slin96 14500 14500  8500   8500   8500   8500   8500   8500   8500      -    8000 14500
  slin192 14500 14500  8500   8500   8500   8500   8500   8500   8500   8500       - 14500
     g722 15600 15600  9600  17500   9000  17000  17000  17000  17000  17000   17000     -


не вижу тут в списке кодека alaw, на него как раз ругань в логах, он получается не подключен у меня?
AndreyChe
 
Сообщений: 5
Зарегистрирован: 18 фев 2015, 19:18

Re: Нет гудков при звонке

Сообщение AndreyChe » Вчера, 16:50

Спасибо большое, проблема решилась добавлением в modules.conf
Код: выделить все
load = codec_alaw.so

Вот эта команда навела на путь истинный:
Код: выделить все
asterisk*CLI> core show translation


А по поводу:
Скорее всего вам просто нужно приветствие, из котороого можно делать донабор

можно короткий пример, может действительно будет более оптимально в моем случае, но я не понял что вы имеете ввиду
AndreyChe
 
Сообщений: 5
Зарегистрирован: 18 фев 2015, 19:18

Re: Нет гудков при звонке

Сообщение ded » Вчера, 17:57

Если простой вариант - то приветствие с донабором:
"Вы позвонили в компанию АБВ, наберите внутренний номер или дождитесь ответа оператора (по таймауту)"

Если Интерактивное меню, то вот как у вас описано - сообщение:
"хотите отдел1 - нажмите 1, хотите отдел2 - нажмите 2 или наберите внутренний номер сотрудника или дождитесь ответа секретаря,"
ded
 
Сообщений: 15902
Зарегистрирован: 26 авг 2010, 19:00


Вернуться в Вопросы новичков

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

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

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