RE: Маршрутизация SIP звонков без авторизации на CGP

От: <victor.shkrob_at_mx_ru>
Дата: Thu 25 Jul 2013 - 15:03:49 MSK

On Thu, 25 Jul 2013 13:10:59 +0400
 "Dmitry Akindinov" <CGatePro@mx.ru> wrote:

> Здравствуйте,
> 
> On 2013-07-25 11:48, victor.shkrob@sevastopol-hotel.com.ua wrote:

>> Добрый день!
>>
>> В CGP 6.0.5 видимо изменился синтаксис <Языка>
>>
>> Попытался модифицировать gatewaycaller.sppr по изложенному принципу
>>- не получилось J
>>
>>
>>
>> // All calls to gateways must be authenticated
>>
>> // Request AUTH if there is no AUTH, or reject if AUTH is wrong
>>
>> //
>>
>> if(FindSubstring( ObjectToString(RemoteIPAddress()),
>>"192.168.10.115") > 0) {callerEmail = "pbx@sevastopol-hotel.com.ua";}
>>
>> else {
>>
>> var callerEmail =
>>RemoteRedirector(),callIsRedirected;
> 
> А зачем вы деклалрируете callerEmail здесь? Эта переменная 
>получается локальной для этого блока и вне этой if-then-else 
>конструкции её значение не будет видно, будет использоваться 
>callerEmail из внешней области видимости.
> 

Сначала хотел не согласиться, т.к. в предыдущей версии эта переменная декларировалась именно так и всё работало :) Хотя действительно её нужно объявлять вне условия. Видимо при новом синтаксисе объявление переменных стало принципиальным. Просто вынес var callerEmail = RemoteRedirector(),callIsRedirected; перед блоком и всё заработало. Спасибо за наводку!

>> if(callerEmail == null) {callerEmail =
>>RemoteAuthentication();}
>>
>> else {callIsRedirected = true;}
>>
>>
>>
>> if(callerEmail == null) {rejectCall(401); stop;}
>>
>> }
>>
>>
>>
>> Что я делаю не так?
>>
>>
>>
>> Best Regards,
>>
>> Victor Shkrob,
>>
>>
>>
>> From: Nickolay Rogoschenkov [mailto:CGatePro@mx.ru]
>> Sent: Wednesday, November 14, 2012 6:39 PM
>> To: CommuniGate Pro Russian Discussions
>> Subject: Re: [CGP] Маршрутизация SIP звонков без авторизации на CGP
>>
>>
>>
>> У страха глаза велики (с)
>>
>> У коллеги всего одна АТС, и вероятно один интерфейс смотрит на CGP,
>>если нет неоходимотсти дифференцировать абонентов на ней, значит и
>>нет никакой необходимости прописывать "большое количестство настроек
>>звонков".
>>
>>
>>
>> if (FindSubstring( ObjectToString(RemoteIPAddress()),
>>"192.168.10.115") > 0) then
>>
>> callerEmail = "postmaster@domen"; //аккаунт от имени котрого
>>быдут идти вызовы с CGP
>>
>> else
>>
>> callerEmail = RemoteRedirector();
>>
>> if callerEmail == null then callerEmail =
>>RemoteAuthentication(); end if;
>>
>> if callerEmail == null then rejectCall(401); stop; end if;
>>
>> end if;
>>
>>
>>
>>
>> --
>> Николай
>>
>>
>>
>> 2012/11/14 Kirichkov Alexander <CGatePro@mx.ru>
>>
>>
>> On 14.11.2012 19:09, Шкроб Виктор Николаевич wrote:
>>
>> Извиняюсь, за глупый вопрос,
>>
>>
>> На самом деле вопрос нетривиальный, так как после авторизации скрипт
>>обращается к довольно большому количеству настроек аккаунта.
>>
>> То есть, если хочется предоставить возможность звонить
>>неавторизованным пользователям, нужно в скипт добавлять большое
>>количестство настроек звонков, которые будут использоваться для
>>анонимных пользователей.
>>
>> А зачем все это надо, если можно просто прописать на ATC
>>логин\пароль pbx или postmaster?
>>
>>
>> А в каком виде вставить строчку с отправкой без авторизации с IPАТС?
>>
>> Best Regards,
>>
>> Victor Shkrob,
>>
>> IT Engineer
>>
>> tel. +380 (692) 53 50 52 <tel:%2B380%20%28692%29%2053%2050%2052>
>>
>> LLC Hotel "Sevastopol" and SPA
>>
>> 8, Nakhimov Avenue, Sevastopol.
>>
>> www.sevastopol-hotel.com.ua <http://www.sevastopol-hotel.com.ua/>
>>
>> mailto:Victor.Shkrob@sevastopol-hotel.com.ua
>>
>> *From:*CommuniGate Pro Russian Discussions [mailto:CGatePro@mx.ru]
>> *Sent:* Wednesday, November 14, 2012 4:34 PM
>> *To:* CommuniGate Pro Russian Discussions
>> *Subject:* Re: [CGP] Маршрутизация SIP звонков без авторизации на
>>CGP
>>
>>
>>
>> В роутере Вы этот звонок заворачиваете в стоковый B2BUA
>> (gatewaycaller.sppr)?
>>
>> Если да, там есть строки
>>
>> /// All calls to gateways must be authenticated/
>>
>> /// Request AUTH if there is no AUTH, or reject if AUTH is wrong/
>>
>>
>>
>> там и пропишите отправку c вашего IP без авторизации.
>>
>>
>> --
>> Николай
>>
>> 2012/11/14 Шкроб Виктор Николаевич <CGatePro@mx.ru
>><mailto:CGatePro@mx.ru>>
>>
>>
>>
>> Добрый день!
>> Никак не могу разобраться.
>> У меня есть АТС, она через SIP пытается работать с CGP.
>> Так вот вопрос в следующем, как позволить ей совершать звонки через
>>CGP,
>> без авторизации на нём.
>> Т.е. схема должна быть следующая:
>> АТС --> CGP --> шлюз провайдера.
>>
>> Связка (CGP --> шлюз провайдера) работает.
>>
>> АТС находится в Лан, соответственно - LAN:[192.168.10.115] is
>>Trusted
>>
>> Лог звонка:
>> 11:34:26.789 2 SIPDATA-279780 inp: req [0.0.0.0]:5060 <-
>> udp[192.168.10.115]:5060 INVITE(984 bytes)
>>sip:0444660466@192.168.10.3 <mailto:sip%3A0444660466@192.168.10.3>
>>
>> <mailto:sip%3A0444660466@192.168.10.3
>><mailto:sip%253A0444660466@192.168.10.3> >;user=phone
>>
>>
>> 11:34:26.789 5 SIPDATA-279780 inp: INVITE
>>sip:0444660466@192.168.10.3 <mailto:sip%3A0444660466@192.168.10.3>
>>
>> <mailto:sip%3A0444660466@192.168.10.3
>><mailto:sip%253A0444660466@192.168.10.3> >;user=phone SIP/2.0
>>
>>
>> 11:34:26.789 5 SIPDATA-279780 inp: Allow: INVITE, ACK, CANCEL, BYE,
>> OPTIONS, PRACK, NOTIFY, UPDATE
>> 11:34:26.789 5 SIPDATA-279780 inp: Supported:
>> 100rel,from-change,timer,histinfo
>> 11:34:26.789 5 SIPDATA-279780 inp: User-Agent: OXO_GW_820/047.001
>> 11:34:26.789 5 SIPDATA-279780 inp: Session-Expires: 43200
>> 11:34:26.789 5 SIPDATA-279780 inp: P-Asserted-Identity:
>>
>> <sip:1106@192.168.10.115 <mailto:sip%3A1106@192.168.10.115>
>> <mailto:sip%3A1106@192.168.10.115
>><mailto:sip%253A1106@192.168.10.115> >;user=phone>
>>
>>
>> 11:34:26.789 5 SIPDATA-279780 inp: History-Info:
>> <sip:0444660466@192.168.10.3 <mailto:sip%3A0444660466@192.168.10.3>
>>
>> <mailto:sip%3A0444660466@192.168.10.3
>><mailto:sip%253A0444660466@192.168.10.3> >;user=phone>;index=1
>>
>>
>> 11:34:26.789 5 SIPDATA-279780 inp: To: <sip:0444660466@192.168.10.3
>><mailto:sip%3A0444660466@192.168.10.3>
>>
>> <mailto:sip%3A0444660466@192.168.10.3
>><mailto:sip%253A0444660466@192.168.10.3> >;user=phone>
>>
>>
>> 11:34:26.789 5 SIPDATA-279780 inp: From: <sip:1106@192.168.10.115
>><mailto:sip%3A1106@192.168.10.115>
>>
>> <mailto:sip%3A1106@192.168.10.115
>><mailto:sip%253A1106@192.168.10.115>
>>>;user=phone>;tag=b6ef4f8185837966b8f6b806dd793081
>>
>>
>> 11:34:26.789 5 SIPDATA-279780 inp: Contact: <sip:1106@192.168.10.115
>><mailto:sip%3A1106@192.168.10.115>
>>
>> <mailto:sip%3A1106@192.168.10.115
>><mailto:sip%253A1106@192.168.10.115> >;transport=UDP;user=phone>
>>
>>
>> 11:34:26.789 5 SIPDATA-279780 inp: Content-Type: application/sdp
>> 11:34:26.789 5 SIPDATA-279780 inp: Call-ID:
>> 81e5fcfb7417d0cf973019e13d6de607@192.168.10.115
>>
>> <mailto:81e5fcfb7417d0cf973019e13d6de607@192.168.10.115>
>>
>>
>> 11:34:26.789 5 SIPDATA-279780 inp: CSeq: 76507224 INVITE
>> 11:34:26.789 5 SIPDATA-279780 inp: Via: SIP/2.0/UDP
>> 192.168.10.115;rport;branch=z9hG4bKf207f49be82900ebad4850696db86104
>> 11:34:26.789 5 SIPDATA-279780 inp: Max-Forwards: 70
>> 11:34:26.789 5 SIPDATA-279780 inp: Content-Length: 212
>> 11:34:26.789 5 SIPDATA-279780 inp:
>> 11:34:26.789 5 SIPDATA-279780 inp: v=0
>> 11:34:26.789 5 SIPDATA-279780 inp: o=default 1352885632 1352885632
>>IN
>> IP4 192.168.10.115
>> 11:34:26.789 5 SIPDATA-279780 inp: s=-
>> 11:34:26.789 5 SIPDATA-279780 inp: c=IN IP4 192.168.10.115
>> 11:34:26.789 5 SIPDATA-279780 inp: t=0 0
>> 11:34:26.789 5 SIPDATA-279780 inp: m=audio 32000 RTP/AVP 18 106 4 8
>>0
>> 11:34:26.789 5 SIPDATA-279780 inp: a=sendrecv
>> 11:34:26.789 5 SIPDATA-279780 inp: a=rtpmap:106 telephone-event/8000
>> 11:34:26.789 5 SIPDATA-279780 inp: a=fmtp:106 0-15
>> 11:34:26.789 5 SIPDATA-279780 inp: a=maxptime:90
>> 11:34:26.789 4 SIPDATA-279780 Hash=1198564077
>> 11:34:26.789 2 SIPDATA-279780 created SIPS-009980
>> 11:34:26.789 2 SIPDATA-279781 out: rsp [0.0.0.0]:5060 ->
>> udp[192.168.10.115]:5060 100-INVITE(370 bytes)
>> 11:34:26.789 5 SIPDATA-279781 out: SIP/2.0 100 Trying
>> 11:34:26.789 5 SIPDATA-279781 out: Via: SIP/2.0/UDP
>> 192.168.10.115;rport=5060;branch=z9hG4bKf207f49be82900ebad4850696db86104
>> 11:34:26.789 5 SIPDATA-279781 out: From: <sip:1106@192.168.10.115
>><mailto:sip%3A1106@192.168.10.115>
>>
>> <mailto:sip%3A1106@192.168.10.115
>><mailto:sip%253A1106@192.168.10.115>
>>>;user=phone>;tag=b6ef4f8185837966b8f6b806dd793081
>>
>>
>> 11:34:26.789 5 SIPDATA-279781 out: To: <sip:0444660466@192.168.10.3
>><mailto:sip%3A0444660466@192.168.10.3>
>>
>> <mailto:sip%3A0444660466@192.168.10.3
>><mailto:sip%253A0444660466@192.168.10.3> >;user=phone>
>>
>>
>> 11:34:26.789 5 SIPDATA-279781 out: Call-ID:
>> 81e5fcfb7417d0cf973019e13d6de607@192.168.10.115
>>
>> <mailto:81e5fcfb7417d0cf973019e13d6de607@192.168.10.115>
>>
>>
>> 11:34:26.789 5 SIPDATA-279781 out: CSeq: 76507224 INVITE
>> 11:34:26.789 5 SIPDATA-279781 out: Server: CommuniGatePro/5.4.8
>> 11:34:26.789 5 SIPDATA-279781 out: Content-Length: 0
>> 11:34:26.789 5 SIPDATA-279781 out:
>> 11:34:26.791 2 SIPDATA-279782 out: rsp [0.0.0.0]:5060 ->
>> udp[192.168.10.115]:5060 401-INVITE(531 bytes)
>> 11:34:26.791 5 SIPDATA-279782 out: SIP/2.0 401 Authentication
>>required
>> 11:34:26.791 5 SIPDATA-279782 out: Via: SIP/2.0/UDP
>> 192.168.10.115;rport=5060;branch=z9hG4bKf207f49be82900ebad4850696db86104
>> 11:34:26.791 5 SIPDATA-279782 out: From: <sip:1106@192.168.10.115
>><mailto:sip%3A1106@192.168.10.115>
>>
>> <mailto:sip%3A1106@192.168.10.115
>><mailto:sip%253A1106@192.168.10.115>
>>>;user=phone>;tag=b6ef4f8185837966b8f6b806dd793081
>>
>>
>> 11:34:26.791 5 SIPDATA-279782 out: To: <sip:0444660466@192.168.10.3
>><mailto:sip%3A0444660466@192.168.10.3>
>>
>> <mailto:sip%3A0444660466@192.168.10.3
>><mailto:sip%253A0444660466@192.168.10.3> >;user=phone>;tag=9E38085E
>>
>>
>> 11:34:26.791 5 SIPDATA-279782 out: Call-ID:
>> 81e5fcfb7417d0cf973019e13d6de607@192.168.10.115
>>
>> <mailto:81e5fcfb7417d0cf973019e13d6de607@192.168.10.115>
>>
>>
>> 11:34:26.791 5 SIPDATA-279782 out: CSeq: 76507224 INVITE
>> 11:34:26.791 5 SIPDATA-279782 out: WWW-Authenticate: Digest
>> realm="mail.sevastopol-hotel.com.ua
>>
>> <http://mail.sevastopol-hotel.com.ua>",nonce="7C673F7B2CF0E2F6793B",opaque="opaq",qop="auth",algorithm=MD5
>>
>>
>> 11:34:26.791 5 SIPDATA-279782 out: Server: CommuniGatePro/5.4.8
>> 11:34:26.791 5 SIPDATA-279782 out: Content-Length: 0
>> 11:34:26.791 5 SIPDATA-279782 out:
>> 11:34:26.801 2 SIPDATA-279783 inp: req [0.0.0.0]:5060 <-
>> udp[192.168.10.115]:5060 ACK(377 bytes) sip:0444660466@192.168.10.3
>><mailto:sip%3A0444660466@192.168.10.3>
>>
>> <mailto:sip%3A0444660466@192.168.10.3
>><mailto:sip%253A0444660466@192.168.10.3> >;user=phone
>>
>>
>> 11:34:26.801 5 SIPDATA-279783 inp: ACK sip:0444660466@192.168.10.3
>><mailto:sip%3A0444660466@192.168.10.3>
>>
>> <mailto:sip%3A0444660466@192.168.10.3
>><mailto:sip%253A0444660466@192.168.10.3> >;user=phone SIP/2.0
>>
>>
>> 11:34:26.801 5 SIPDATA-279783 inp: Call-ID:
>> 81e5fcfb7417d0cf973019e13d6de607@192.168.10.115
>>
>> <mailto:81e5fcfb7417d0cf973019e13d6de607@192.168.10.115>
>>
>>
>> 11:34:26.801 5 SIPDATA-279783 inp: From: <sip:1106@192.168.10.115
>><mailto:sip%3A1106@192.168.10.115>
>>
>> <mailto:sip%3A1106@192.168.10.115
>><mailto:sip%253A1106@192.168.10.115>
>>>;user=phone>;tag=b6ef4f8185837966b8f6b806dd793081
>>
>>
>> 11:34:26.801 5 SIPDATA-279783 inp: To: <sip:0444660466@192.168.10.3
>><mailto:sip%3A0444660466@192.168.10.3>
>>
>> <mailto:sip%3A0444660466@192.168.10.3
>><mailto:sip%253A0444660466@192.168.10.3> >;user=phone>;tag=9E38085E
>>
>>
>> 11:34:26.801 5 SIPDATA-279783 inp: Via: SIP/2.0/UDP
>> 192.168.10.115;rport;branch=z9hG4bKf207f49be82900ebad4850696db86104
>> 11:34:26.801 5 SIPDATA-279783 inp: CSeq: 76507224 ACK
>> 11:34:26.801 5 SIPDATA-279783 inp: Content-Length: 0
>> 11:34:26.801 5 SIPDATA-279783 inp:
>> 11:34:26.802 4 SIPDATA-279783 Hash=1198564077
>> 11:34:26.802 2 SIPDATA-279783 sent to SIPS-009980
>>
>> Best Regards,
>> Victor Shkrob,
>>
>>
>>
>>
>> ##################################################################
>> Вы получили это сообщение потому, что подписаны на список рассылки
>>
>> <CGatePro@mx.ru <mailto:CGatePro@mx.ru>>.
>>
>>
>>
>> Чтобы отписаться, отправьте сообщение на адрес <CGatePro-off@mx.ru
>>
>> <mailto:CGatePro-off@mx.ru>>
>>
>>
>> Чтобы переключиться в режим дайджеста -
>>mailto:<CGatePro-digest@mx.ru
>> <mailto:CGatePro-digest@mx.ru>>
>> Чтобы переключиться в индексный режим - mailto:<CGatePro-index@mx.ru
>> <mailto:CGatePro-index@mx.ru>>
>> Для административных запросов адрес <CGatePro-request@mx.ru
>>
>> <mailto:CGatePro-request@mx.ru>>
>> Архив списка: http://mx.demos.su/lists/cgp-russian/
>>
>>
>>
>>

> 
> -- 
> Best regards,
> Dmitry Akindinov
> 
> 
> 
> ##################################################################
> Вы получили это сообщение потому, что подписаны на список рассылки
>  <CGatePro@mx.ru>.
> 
> Чтобы отписаться, отправьте сообщение на адрес <CGatePro-off@mx.ru>
> Чтобы переключиться в режим дайджеста - 
>mailto:<CGatePro-digest@mx.ru>
> Чтобы переключиться в индексный режим - 
>mailto:<CGatePro-index@mx.ru>
> Для административных запросов адрес <CGatePro-request@mx.ru>
> Архив списка: http://mx.demos.su/lists/cgp-russian/
> 
> 
>
Получено Thu Jul 25 11:04:03 2013

Этот архив был сгенерирован hypermail 2.1.8 : Thu 25 Jul 2013 - 16:17:17 MSK