Re: rin cgpl scripts in router

От: Dmitry Akindinov <CGatePro_at_mx_ru>
Дата: Fri 24 Mar 2006 - 21:14:30 MSK

Здравствуйте,

Michael Kulakov wrote:
> Здравствуйте!
>
> 1 Синтаксисом запуска cg/pl скрипта из router'а, по письмам из данной
> рассылки является:
>
> <0(3d)@*> = gatewayincoming--*#postmaster@main.domain
>
> при этом, если не пользоваться дополнительным префиксом, вида '0' в
> приведенном примере, то происходит зацикливание работы скрипта.
>
> ( например, написать так:
> *@domain = gatewayincoming--*#postmaster@main.domain )
>
> правильно ли я понимаю, что зацикливание в оригинальном gatewayincoming
> ( при отсутсвии префикса ) происходит при "прогоне" через router того же
> самого номера, что и в входящем сообщении, в startCall ?

Да.

Только вот gatewayincoming не предназначен для работы в том виде, как вы его запускаете. Идея в том, что URI со внешнего шлюза передаются в виде номер@ХХХ, где ХХХ - это либо IP адрес шлюза (и, соответственно, не принадлежит ни одному из доменов сервера) либо его hostname (опять же - не совпадающий с доменами на сервере.) Вот такие URI попадают в скрипт, а он их разворачивает в тот же номер но в домене, от имени которого скрипт запустили. И зацикливания в этом случае не произойдет.

> использование префиксов - довольно не удобно, есть ли способы от них
> отказаться ?

Можно префиксы использовать в алиасах/именах аккаунтов, а скрипт подправить - чтобы вставлял такие префиксы.

> 2 При попытке проверить, что будет, если указать в #postmaster@main.domain
> не основной домен, а какой-то еще домен ( в моем случае - sip.domain.tld ),
> вызова cg/pl скрипта не производится, при попытке сделать в router тест -
> говорит - unknown account.

А там есть аккаунт postmaster?

> Можно ли вызывать скрипт не от postmaster@main.domain ? У меня была слабая
> надежда, что этот домен появится в MyDomain(), но до этого дело даже не
> доходит.
>
> 3 как в указанном правиле router можно rewrite address domain part ?
>
> <*@first.domain> = gatewayincoming--*@second.Domain#postmaster@main.domain
>
> приводят к тому, что cgp пытается резолвить записи видан
>
> _sip._udp.second.domain#postmaster и понятно, что никаких srv - не находит.
>
> подскажите правильное заклинание :)

Единственный способ - заменить @,% и # на что-то, что скрипт сумеет разобрать. Например - на $. Только скрипт надо подправить так, чтобы он этот символ искал и извлекал из параметра имя домена (которое потом можно использовать вместо MyDomain()).

> С уважением,
> Михаил Кулаков

-- 
Best regards,
Dmitry Akindinov
Получено Fri Mar 24 18:14:33 2006

Этот архив был сгенерирован hypermail 2.1.8 : Fri 24 Apr 2015 - 16:14:49 MSK