Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Конфигурация и настройка / Соединение нескольких * по IAX

Соединение нескольких * по IAX

1 2>
Avatara of switch
Откуда: Уфа
Сообщений: 5856

Соединение нескольких * по IAX

как всегда, см. след пост
http://www.lynks.ru - Решения телефонии, мини-АТС, VoIP на основе Trixbox и Asterisk
2006-12-08 20:20

Avatara of switch
Откуда: Уфа
Сообщений: 5856

Re: Соединение нескольких * по IAX

Уважаемые мудрецы, подсобите плиз.
перечитал много чего, но не понял.
Есть три сервера с астериском, у каждого свой диалплан и пользователи.
номера пользователей первого начинаются на _50ХХ, второго на _60ХХ третьего на _70ХХ
IAX.conf каждого описываю Friend`ов с контекстом srvХХ и регистрации на других серверах.
друг на друге сервера авторизуются.
в extensions.conf:
[interconnect] ;включен в from-internal
exten => _60XX,1,Dial(IAX2/interconnect60/${EXTEN},30,r)
exten => _50XX,1,Dial(IAX2/interconnect51/${EXTEN},30,r)

include=>srv50
include=>srv60

[srv60]
exten => s,1,Dial(SIP/${EXTEN},30,r)

[srv50]
exten => s,1,Dial(SIP/${EXTEN},30,r)

но похоже что-то намудил... наверно в контекстах.
вызов не проходит, хотя в CLI пр наборе на севере 50ХХ номера из 60ХХ
== Spawn extension (macro-hangupcall, s, 3) exited non-zero on 'SIP/5022-7a7b'
-- Executing Dial("SIP/5021-b335", "IAX2/interconnect60/6002|30|r") in new stack
== Everyone is busy/congested at this time (1:0/0/1)
куда копнуть? может кто-нить сможет помочь?
http://www.lynks.ru - Решения телефонии, мини-АТС, VoIP на основе Trixbox и Asterisk
2006-12-08 20:20

Avatara of dnz63
Сообщений: 177

Re: Соединение нескольких * по IAX

Можно выполнить iax2 debug на двух (для начала) станциях и посмотреть что происходит. Может на приемной стороне контекст не тот (если friend). А может что и ещё
2006-12-08 23:32

Avatara of switch
Откуда: Уфа
Сообщений: 5856

Re: Соединение нескольких * по IAX

Товарищи, объясните тогда как работет контекст на входящие звонки.
Мое видение таково:
в IAX.conf на сервере 60ХХ есть учетная запись вида:
[interconnect60]
type=friend
auth=plaintext
user=interconnect60
secret=secret
context=srv60
host=dynamic
callerid="slave"
trunk=yes
notransfer=no
по этой записи регистрируются другие сервера записью вида:
register => interconnect60:secret@192.168.1.238
так как type=friend, то по этому каналу звонки могут ходить в обе стороны.
Чтобы зарегестрированный сервер 50ХХ позвонил на 60ХХ нужно в экстенах прописать что-то типа:
[default]
exten => _60XX,1,Dial(IAX2/interconnect60/${EXTEN},30,r)
и вызовы на 60ХХ пойдут на сервер 60ХХ
В свою очередь пришедший на 60ХХ вызов куда попадет? Для него нужно определить контекст [Srv60]
А что в нем писать???? много чего перечитал, но так и не понял, помогите, чем смогете!
http://www.lynks.ru - Решения телефонии, мини-АТС, VoIP на основе Trixbox и Asterisk
2006-12-11 07:35

Сообщений: 25

Re: Соединение нескольких * по IAX

В srv60 будет искаться тот самый ${EXTEN}, то есть номер вида 60ХХ, значит в контексте srv60 должно быть что-то типа

[srv60]
exten => _60ХХ,1,Dial(SIP/${EXTEN},30,r)
2006-12-11 15:57

Avatara of switch
Откуда: Уфа
Сообщений: 5856

Re: Соединение нескольких * по IAX

попробовал. затык где-то на звонящем сервере:
-- Registered IAX2 'interconnect50' (AUTHENTICATED) at 192.168.1.238:4569
asterisk1*CLI> -- Executing Dial("SIP/5021-5dfa", "
IAX2 Everyone is busy/congested at this time

в IAX.conf
[general]
...
register => connect50:secret@192.168.1.162

[connect60]
type=peer
auth=plaintext
user=connect60
secret=secret
context=from-internal
host=dynamic
callerid="SRV60"
trunk=yes

второй сервак настроен аналогично, т.е. они друг на друге регистрируются.
но не звонят. что за хрень?
Попутно: если кто знает как пользоваться switch => объясните плиз, или ссылу дайте, если не трудно...
спасибо заранее!
http://www.lynks.ru - Решения телефонии, мини-АТС, VoIP на основе Trixbox и Asterisk
2006-12-12 12:11

Сообщений: 72

Re: Соединение нескольких * по IAX

если я правильно понял задачу, должно быть что-то вроде:

на сервере "50":

в extensions.conf
[2local] ; контекст для звонков на локальные b-номера
exten => _50XX,1,Dial(SIP/${EXTEN} ; для локального b-номера
[2remote]
exten => _60XX,1,Dial(IAX2/connect60/${EXTEN}... ; для удаленных b-номеров
exten => _70XX,1,Dial(IAX2/connect70/${EXTEN}... ; для удаленных b-номеров
[4local] ; контекст для своих SIP-ных абон-тов
include => 2local
include => 2remote

в iax.conf
[connect60]
...
context=2local
...

[connect70]
...
context=2local
...

на прочих серверах аналогично.
2006-12-12 17:32

Avatara of switch
Откуда: Уфа
Сообщений: 5856

Re: Соединение нескольких * по IAX

Сделал.
На сервере с номерами 50ХХ:
-- Registered IAX2 'connect50' (AUTHENTICATED) at 192.168.1.238:4569
-- Executing Dial("SIP/5022-5ce9", "IAX2/connect50/6002@ext-local|30|r") in new stack
-- Called connect50/6002@ext-local
-- Hungup 'IAX2/connect51-16384'
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing Macro("SIP/5022-5ce9", "hangupcall") in new stack
-- Executing ResetCDR("SIP/5022-5ce9", "w") in new stack
-- Executing NoCDR("SIP/5022-5ce9", "") in new stack
-- Executing Wait("SIP/5022-5ce9", "5") in new stack
== Spawn extension (macro-hangupcall, s, 3) exited non-zero on 'SIP/5022-5ce9' in macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 3) exited non-zero on 'SIP/5022-5ce9'

При звонке длинные гудки, причем уже показывает -- Hungup 'IAX2/connect51-16384'
после 30 сек - короткие
что за фигня такая...
http://www.lynks.ru - Решения телефонии, мини-АТС, VoIP на основе Trixbox и Asterisk
2006-12-14 16:00

Сообщений: 25

Re: Соединение нескольких * по IAX

Уже ничего не понятно :). Регистрация обязательна? Если нет, то можно пока попробовать соединить два сервера без регистрации. Если да, то регистрироваться друг на друге зачем? Для регистрации нужен ип, и его можно прописать в настройках френда, тогда уже не надо другому серверу регаться, потому что этому уже известны и порт и ип. И так открываем http://www.voip-info.org/wiki/view/Asterisk+-+dual+servers и там всё написано.
На сервере 50.
iax.conf
register => connect50:secret@192.168.1.162

[connect60]
type=friend
auth=plaintext
user=connect50
secret=secret
context=from-internal
host=192.168.1.162
callerid="SRV50"
trunk=yes
disallow=all
allow=alaw

extensions.conf
[from-internal]
exten => _50XX,1,Dial(SIP/${EXTEN}) - локальные
exten => _60XX,1,Dial(IAX2/connect60/${EXTEN}); удаленные

На сервере 60 (то есть для которого 60ые номера локальные)

iax.conf

[connect50]
type=friend
auth=plaintext
user=connect60
secret=secret
context=from-internal
host=dynamic
callerid="SRV60"
trunk=yes
disallow=all
allow=alaw

extensions.conf
[from-internal]
exten => _60XX,1,Dial(SIP/${EXTEN}) - локальные
exten => _50XX,1,Dial(IAX2/connect50/${EXTEN}); удаленные
2006-12-15 12:20

Сообщений: 72

Re: Соединение нескольких * по IAX

цитата:
На сервере с номерами 50ХХ:
-- Registered IAX2 'connect50' (AUTHENTICATED) at 192.168.1.238:4569
-- Executing Dial("SIP/5022-5ce9", "IAX2/connect50/6002@ext-local|30|r") in new stack
-- Called connect50/6002@ext-local
должно быть:
-- Executing Dial("SIP/5022-5ce9", "IAX2/connect50/6002|30|r") in new stack
-- Called connect50/6002
по крайней мере у меня так.
2006-12-15 17:05

1 2>
Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru