Пытаюсь понять как быть в ситуации с несколькими OpenSER серверами

Kamailio/OpenSIPS и другие производные от SER.

Модераторы: Admins, Модераторы

Ответить
denizzz
Сообщения: 11
Зарегистрирован: 21 дек 2008, 00:26

Пытаюсь понять как быть в ситуации с несколькими OpenSER серверами

Сообщение denizzz » 23 июл 2010, 12:30

Пытаюсь понять как быть в следующей ситуации
Есть несколько OpenSER Registrar серверов SIP1,SIP2,SIP3...
Есть несколько Asterisk серверов A1,A2,A3...

Один SIP клиент зарегистрирован на SIP1, а другой на SIP2

Далее Asterisk1 должен позвонить на SIP клиента который может быть зарегистрирован на любом из OpenSER

Для этого я полагаю Asterisk должен каким то образом узнать на какои именно сервере зарегстрирован клиент и слать DIAL именно туда
Теперь вопрос, а как именно Asterisk может узнать на каком из OpenSER серверов зарегистрирован клиент?

edo1
Модератор
Сообщения: 394
Зарегистрирован: 23 июл 2005, 12:19

Сообщение edo1 » 23 июл 2010, 12:41

а зачем такой изврат?

denizzz
Сообщения: 11
Зарегистрирован: 21 дек 2008, 00:26

Сообщение denizzz » 23 июл 2010, 12:58

Несколько OpenSer серверов для того чтобы сделать их redundant и разнести географически. например один сервер в USA другой в Москве, третий в Азии

Несколько Asterisk понятно для load balance

edo1
Модератор
Сообщения: 394
Зарегистрирован: 23 июл 2005, 12:19

Сообщение edo1 » 23 июл 2010, 17:05

логичнее всего asterisk'у и не знать, где клиент зарегистрировался.

если серверов openser не слишком много, то можно делать вроде

Код: Выделить всё

dial(sip/ser1/123&sip/ser2/123&sip/ser3/123)

denizzz
Сообщения: 11
Зарегистрирован: 21 дек 2008, 00:26

Сообщение denizzz » 24 июл 2010, 20:27

Спасибо, классная идея!

ALD
Сообщения: 47
Зарегистрирован: 14 дек 2008, 19:41

Сообщение ALD » 25 июл 2010, 20:09

Есть решение через модуль dispatcher в связке с mysql
Все серы хранят кто и где в базе + балансировка на астеры.

Ответить