Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Помогите разобраться с диалпланом

0
[Jan 27 07:58:41] WARNING[6545] pbx.c: Unable to register extension 's' priority 2 in 'incoming', already in use
[Jan 27 07:58:41] WARNING[6545] pbx.c: Unable to register extension 's' priority 3 in 'incoming', already in use
[Jan 27 07:58:41] WARNING[6545] pbx.c: Unable to register extension 's' priority 4 in 'incoming', already in use
[Jan 27 07:58:41] WARNING[6545] pbx.c: Unable to register extension 's' priority 5 in 'incoming', already in use
[Jan 27 07:58:41] WARNING[6545] pbx.c: Unable to register extension 's' priority 6 in 'incoming', already in use
[Jan 27 07:58:41] WARNING[6545] pbx.c: Unable to register extension 's' priority 7 in 'incoming', already in use
[Jan 27 07:58:41] WARNING[6545] pbx.c: Unable to register extension 's' priority 8 in 'incoming', already in use
[Jan 27 07:58:41] WARNING[6545] pbx.c: Unable to register extension 's' priority 9 in 'incoming', already in use

В логе есть такие варнинги, но не могу понять откуда они берутся, везде же n. Диалплан:

[incoming]
exten => s,1,Answer()
exten => s,n,Set(__unique=${UNIQUEID})
exten => s,n,System(/etc/asterisk/agi/incoming.py ${unique} ${CALLERID(num)})
exten => s,n,AGI(ami.py,getStatus)
exten => s,n,Set(voicemail=100)
exten => s,n,GotoIf($["${STATUS}"="online"]?online:)
;exten => s,n,GotoIf($["${STATUS}"="offline"]?offline:)

exten => s,n(online),Background(IVR/press_1)
exten => s,n,Background(IVR/press_2)
exten => s,n,WaitExten(20)
exten => s,n,Goto(online)
exten => 1,1,Goto(en,s,1)
exten => 2,1,Goto(fr,s,1)

exten => s,n(offline),AGI(ami.py,getGreating,${voicemail})
exten => s,n,Set(voicemail=${IF(["${VMGREATING}" == ""]?100:${voicemail})})
exten => s,n,AGI(ami.py,getGreating,${voicemail})
exten => s,n,Playback(/var/lib/asterisk/sounds/prerecorded/pr_${VMGREATING})
exten => s,n,System(/etc/asterisk/agi/voicemail.py ${voicemail} ${unique} ${CALLERID(num)})
exten => s,n,Record(/var/lib/asterisk/sounds/voicemail/${unique}.wav,,,ky)
exten => s,n,System(/etc/asterisk/agi/timeend.py ${unique})
exten => s,n,Hangup()

exten => i,1,Goto(s,online)

exten => h,1,System(/etc/asterisk/agi/hangup.py ${unique})
exten => h,n,System(/etc/asterisk/agi/timeend.py ${unique})
exten => h,n,System(/etc/asterisk/agi/convert.py ${unique})
exten => h,n,Hangup()
удалить закрыть спам изменить тег редактировать

спросил 2015-01-27 17:40:52 +0400

godlike Gravatar godlike flag of Ukraine
814 91 20 54

2 Ответа

1
exten => 2,1,Goto(fr,s,1)

exten => s,n(offline),AGI(ami.py,getGreating,${voicemail})

вот это еквивалентно

exten => 2,1,Goto(fr,s,1)

exten => s,2(offline),AGI(ami.py,getGreating,${voicemail})

ну и дальше по списку.

ссылка удалить спам редактировать

ответил 2015-01-28 03:09:30 +0400

meral Gravatar meral flag of Ukraine
21228 23 18 169
http://pro-sip.net/

Comments

Спасибо, перенес в конец контекста, помогло.

godlike ( 2015-01-28 11:43:45 +0400 )редактировать
1

При принятии изменений (dialpla reload) внутренний компиллятор выставляет приоритеты автоматически. Предупреждения сыпятся из-за того , что такой диаплан для контекста уже прописан. Что конкретно прописано можно посмотреть командой

dialplan show s@incoming
ссылка удалить спам редактировать

ответил 2015-01-27 18:05:33 +0400

zzuz Gravatar zzuz flag of Russian Federation
6744 2 6 69
http://line24.ru/

Comments

Спасибо за ответ, но что то не догоню что означает "такой диаплан для контекста уже прописан". Означает ли это что у меня ошибка в диалплане или это особенность работы компилятора астериска?

godlike ( 2015-01-27 18:08:51 +0400 )редактировать

Предупреждение появится , если Вы пропишите

[incoming]
exten = s,1,Noop
exten = s,1,Noop

Ищите где еще описан контекст

zzuz ( 2015-01-27 18:12:54 +0400 )редактировать

Впринципе нет ничего криминального , если Вы перезаписываете какой-либо контекст. Можете игнорировать это.

zzuz ( 2015-01-27 18:13:55 +0400 )редактировать

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

godlike ( 2015-01-27 18:18:25 +0400 )редактировать

Отрабатывают первые строки. Далее такие варнинги в случае дублирования.

zzuz ( 2015-01-27 18:25:22 +0400 )редактировать

но дублирования ведь нет :)

godlike ( 2015-01-27 18:26:17 +0400 )редактировать

Это Вы так думаете , а приведенные логи говорят об обратном.

zzuz ( 2015-01-27 18:30:30 +0400 )редактировать

grep incoming /etc/asterisk/*

zzuz ( 2015-01-27 18:31:01 +0400 )редактировать

/etc/asterisk/extensions.conf:exten => _XXXXXXXX1,n,Goto(incoming,s,1) /etc/asterisk/extensions.conf:exten => _XXXXXXXX2,n,Goto(incoming,s,1) /etc/asterisk/extensions.conf:exten => _XXXXXXXX3,n,Goto(incoming,s,1) /etc/asterisk/extensions.conf:exten => _XXXXXXXX4,n,Goto(incoming,s,1) /etc/asterisk/extensions.conf:exten => _XXXXXXXX5,n,Goto(incoming,s,1) /etc/asterisk/extensions.conf:exten => _XXXXXXXX6,n,Goto(incoming,s,1) /etc/asterisk/extensions.conf:exten => _XXXXXXXX7,n,Goto(incoming,s,1)

больше не вижу.

godlike ( 2015-01-27 18:38:33 +0400 )редактировать

Вы хитрите . Где строка /etc/asterisk/extensions.conf:[incoming] ?

zzuz ( 2015-01-27 18:51:47 +0400 )редактировать

ну я ее сознательно убрал) вообще там еще есть бекапы файла extensions.conf типа extensions.conf.backup extensions.conf.save.1 и тд но из них же не может инклудится, тем более что в этом случае было бы значительно больше сообщений.

godlike ( 2015-01-27 18:59:04 +0400 )редактировать

Уберите в контексте строки `exten => 1,1,Goto(en,s,1)

exten => 2,1,Goto(fr,s,1)`

ниже строк s,n,

zzuz ( 2015-01-27 19:00:31 +0400 )редактировать

если я их уберу то не будет работать переход в контекст en и fr

godlike ( 2015-01-27 19:02:38 +0400 )редактировать

Уберите ниже , а не уберите совсем.

zzuz ( 2015-01-27 19:08:51 +0400 )редактировать

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

godlike ( 2015-01-27 19:11:12 +0400 )редактировать

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2015-01-27 17:40:52 +0400

Просмотрен: 355 раз

Обновлен: Jan 28 '15

Похожие вопросы:

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.