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

Объединение каналов в группу

0

Привет, Есть несколько номеров от разных сип. провайдеров, например:

[sip.conf]
register => number@domain:secret:auth_name@ip_host
register => number@domain:secret:auth_name@ip_host

[prov]
secret = secret
username = username
host = ip_host
context = default
insecure = port,invite
fromuser = fromuser
fromdomain = domain
type = peer
disallow = all
allow = alaw
nat = yes
canreinvite = no
dtmfmode = inband
qualify     = yes

[prov2]
secret = secret
username = username
host = ip_host
context = default
insecure = port,invite
fromuser = fromuser
fromdomain = domain
type = peer
disallow = all
allow = alaw
nat = yes
canreinvite = no
dtmfmode = inband
qualify     = yes

Таких номеров больше 30. Можно ли объединить в группу (groupall) все номера, что б в диалплане использовать Dial(SIP/groupall/${EXTEN})? Пните куда смотреть.

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

спросил 2012-10-22 14:53:07 +0400

gramadzjanin Gravatar gramadzjanin
1 6 2

обновил 2012-10-22 15:02:08 +0400

switch Gravatar switch
8334 11 7 91
http://lynks.ru/

2 Ответа

1

Договоритесь с провайдером, чтобы он дал вам один транк, в транке необходимое количество каналов, а номера все DIDами. В той схеме что у вас вы не сможете определить с какого именно транка пришел вызов, для астериска они все одинаковы будут, так как IP/port будет один для всего провайдера.

После объединения сможете делать так: DIAL(SIP/prov1&SIP/prov2...)

Только смысл этого мне не понятен...

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

ответил 2012-10-22 15:05:12 +0400

switch Gravatar switch
8334 11 7 91
http://lynks.ru/

обновил 2012-10-22 15:27:48 +0400

Comments

Не получится, для надежности пулы номеров куплены у разных сип-провайдеров.

gramadzjanin ( 2012-10-22 15:08:00 +0400 )редактировать

Ну тогда один транк до провайдера, а его номера - DID

switch ( 2012-10-22 15:26:56 +0400 )редактировать

если больше трех провайдеров надежность вообщето будет падать. или надо нормальную систему автомониторинга делать.а это очень много $$$

meral ( 2012-10-22 17:07:44 +0400 )редактировать
1
[custom_group]
exten => _X.,1,Set(trunks=trunk1-trunk2-); сюда транк
exten => _X.,2,Set(trunk_count=2); сюда количество
exten => _X.,n(loop),Set(n=${RAND(1,${trunk_count})})
exten => _X.,n,Set(trunk=${CUT(trunks,-,${n})})
exten => _X.,n,Set(trunks=${CUT(trunks,-,1-$[ ${n} - 1 ]&$[ ${n} + 1 ]-)})
exten => _X.,n,Set(trunk_count=$[ ${trunk_count} - 1 ])
; следущие две строчки нужны только  если колчисвто звонков на тарнк =1, иначе удалить
exten => _X.,n,Set(GROUP(trunks_active)=${trunk})
exten => _X.,n,GotoIF($[ ${GROUP_COUNT(${trunk}@trunks_active)} > 1 ]?skip); if already calls on that trunk,skip

exten => _X.,n,Dial(SIP/${trunk}/+${EXTEN},,g)
exten => _X.,n,Noop(status ${DIALSTATUS}  time ${ANSWEREDTIME} );show time
exten => _X.,n,GotoIf($[ "${DIALSTATUS}" == "ANSWER" ]?end)
exten => _X.,n,GotoIf($[ "${DIALSTATUS}" == "BUSY" ]?end)
exten => _X.,n,GotoIf($[ ${LEN(${trunks})} <= 1 ]?end)
exten => _X.,n(skip),Goto(loop)
exten => _X.,n(end),Hangup

звониь вот так

Exten => _X.,1,Dial(Local/${EXTEN}@custom_group/n,,)
ссылка удалить спам редактировать

ответил 2012-10-22 17:06:07 +0400

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

Ваш ответ

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 ленту новостей

Статистика

Задан: 2012-10-22 14:53:07 +0400

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

Обновлен: Oct 22 '12

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

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