Re: [asterisk-users] does res_pjsip support ZRTP?

2015-10-06 Thread Ryan, Travis


-Original Message-
From: asterisk-users-boun...@lists.digium.com 
[mailto:asterisk-users-boun...@lists.digium.com] On Behalf Of Dmitriy Serov
Sent: Tuesday, October 06, 2015 10:06 AM
To: asterisk-users@lists.digium.com
Subject: Re: [asterisk-users] does res_pjsip support ZRTP?

06.10.2015 16:08, Matthew Jordan пишет:
> I know this is shocking to hear, but this is an open source project.
>
> That means anyone can fix something. Anyone can add something. Even 
> you! You have all the power to affect your system.
>
> It also means that no one is under any obligation to do it for you.
>
> Surprising, right? I know, it's amazing to think that *YOU* have all 
> the responsibility and power.
>
> We use PJSIP. We use it in a variety of settings. It works well for 
> us. Does that mean it works well for you? I don't know. I'm not you. I 
> don't have your use cases. Would I like it to work well for you? Of 
> course! But if you don't participate by reporting issues, testing 
> changes, and contributing code, there's not much I can do for you 
> other than to note that the line is long, and feel free to stand in it 
> until someone in the community gets around to what you'd like to have 
> done.
>
> Matt
>

I these words were repeatedly read and remember them well. That's why I haven't 
written any complaints to the developers.
Where you saw them, what made again to write these words?
I am a developer with more than two dozen years of experience. I have a hobby 
with a free service in which I don't owe anyone anything. And I understand your 
words.

Wrote a lot of words, but erased everything. It was my subjective opinion that 
will not change anything, and therefore it is unnecessary.

Now Why I wrote what I wrote. I feel the need to tell people my opinion on the 
difference in functionality between chan_sip and res_pjsip. They may be 
important for decision making. I this information was lacking in the past.

Dmitriy.

--


Personally I find PJSIP many times more difficult, but I'm trying to give time 
to my learning curve. I see it can be much better to have all the stuff in the 
database for me as a developer also. Just my two cents. 

Travis
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] does res_pjsip support ZRTP?

2015-10-06 Thread Dmitriy Serov

06.10.2015 1:22, Joshua Colp пишет:

On 15-10-05 05:58 PM, Dmitriy Serov wrote:

05.10.2015 23:24, Joshua Colp пишет:

On 15-10-05 05:22 PM, Dmitriy Serov wrote:

Hello. Do I understand correctly that the current implementation
res_pjsip does not support ZRTP?
http://lists.digium.com/pipermail/asterisk-dev/2013-December/064401.html 



ZRTP is not supported in Asterisk itself.


Nothing has changed since 2013? P.S. I greatly regret that moved from
chan_sip to res_pjsip. Previously used very much lacking, and much of
the promise failed. Dmitriy Serov.


Any particular examples?



- opus support. Ok... I know the reason why it is not supported fully
this codec. But the existing foreign solution works fine with chan_sip
and does not work with res_pjsip works.
- endpoint specific ACL
- No support for SIP message without authorization. For this reason, the
previously working functionality of sending and receiving SMS from
gateway GOIP had to rewrite their internal Protocol.


Can you clarify what you mean here? There's an anonymous endpoint 
identifier which can be used for anonymous inbound messages basically.


Something like auth_message_requests: 
http://lists.digium.com/pipermail/asterisk-users/2015-September/287516.html 
(ugg formating)

In short:
- GOIP gate (successfully registered as endpoint) send SIP MESSAGE
- asterisk send registration request
- nothing.
I now understand that the reason may be exactly the same described below.




- found hardphones and software phones that don't accept "long nonce"
and refuse to register when using res_pjsip


Have you filed an issue with this and details about the 
hardphones+softphones?


Welltech WP589. Beautifully registered using chan_sip and res_pjsip not 
logged in.
Analyzing the exchange of SIP packets I found a single difference: the 
format of the "nonce" field. When using a longer nonce (pjsip) this 
phone simply does not respond to the request packet authorization (as do 
many hardware and software encountering something incomprehensible).

The same behavior was on the built-in nokia 95 SIP client.




- enable icesupport also leads to problems of registration and cannot be
"common solution"


icesupport is only applied to calls, what happens for registration?


Sorry. Not registration, but INVITE.
The client software encounters an unfamiliar SDP headers and simply not 
responding to SIP packets.
The specifics of my service is that I don't know what SIP client is on 
the other side. What it supports and what not.
To give to configure to a user - not the best idea, because often they 
do not understand what they onoff and why stops working.





- issue tracker now contains multiple error messages that arise every
day and reboot my server (which cannot be called a production)
- And watchdog logs SegFaults and Hangs including other stacks that are
not yet documented in the issue tracker.


Have you filed any issues for these with information? We can't make 
PJSIP better if we don't know about the problems people are having 
like this.




Some of not fixed:
https://issues.asterisk.org/jira/browse/ASTERISK-25439
https://issues.asterisk.org/jira/browse/ASTERISK-25435
https://issues.asterisk.org/jira/browse/ASTERISK-25421
https://issues.asterisk.org/jira/browse/ASTERISK-25378
https://issues.asterisk.org/jira/browse/ASTERISK-25279

Dmitriy.

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] does res_pjsip support ZRTP?

2015-10-06 Thread Joshua Colp

Dmitriy Serov wrote:






- found hardphones and software phones that don't accept "long nonce"
and refuse to register when using res_pjsip


Have you filed an issue with this and details about the
hardphones+softphones?


Welltech WP589. Beautifully registered using chan_sip and res_pjsip not
logged in.
Analyzing the exchange of SIP packets I found a single difference: the
format of the "nonce" field. When using a longer nonce (pjsip) this
phone simply does not respond to the request packet authorization (as do
many hardware and software encountering something incomprehensible).
The same behavior was on the built-in nokia 95 SIP client.


I haven't heard of this or seen it in testing, I don't think an issue 
exists for it.







- enable icesupport also leads to problems of registration and cannot be
"common solution"


icesupport is only applied to calls, what happens for registration?


Sorry. Not registration, but INVITE.
The client software encounters an unfamiliar SDP headers and simply not
responding to SIP packets.
The specifics of my service is that I don't know what SIP client is on
the other side. What it supports and what not.
To give to configure to a user - not the best idea, because often they
do not understand what they onoff and why stops working.


I'm not sure there's anything that could be done here...






- issue tracker now contains multiple error messages that arise every
day and reboot my server (which cannot be called a production)
- And watchdog logs SegFaults and Hangs including other stacks that are
not yet documented in the issue tracker.


Have you filed any issues for these with information? We can't make
PJSIP better if we don't know about the problems people are having
like this.



Some of not fixed:
https://issues.asterisk.org/jira/browse/ASTERISK-25439
https://issues.asterisk.org/jira/browse/ASTERISK-25435
https://issues.asterisk.org/jira/browse/ASTERISK-25421
https://issues.asterisk.org/jira/browse/ASTERISK-25378
https://issues.asterisk.org/jira/browse/ASTERISK-25279


They're in the queue then.

--
Joshua Colp
Digium, Inc. | Senior Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - US
Check us out at: www.digium.com & www.asterisk.org

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
  http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users


[asterisk-users] PJSIP: how to retrieve underlying SIP Call-ID

2015-10-06 Thread Michael Ulitskiy
Hello,

I've started to play with PJSIP and got stuck at the following problem.
I need to retrieve SIP Call-ID associated with PJSIP channel. 
For inbound channel I can use ${PJSIP_HEADER(read,Call-ID)}, but that doesn't 
work for
outbound channel even in pre-dial or hangup handler. Whatever I do PJSIP_HEADER
seem to be unable to read headers for outbound channel.

Here's what I do:

[xyz]
exten => 999,1,NoOp(Call-ID: ${PJSIP_HEADER(read,Call-ID)})
   same => 
n,Dial(PJSIP/xyz011101/sip:xyz011101@:5060,30,b(_pre_dial,s,1))
exten => h,1,NoOp()

[_pre_dial]
exten => s,1,NoOp(Call-ID: ${PJSIP_HEADER(read,Call-ID)})
   same => n,Set(CHANNEL(hangup_handler_push)=_hangup,s,1())
   same => n,Return

[_hangup]  
exten => s,1,NoOp(Call-ID: ${PJSIP_HEADER(read,Call-ID)})
   same => n,Return


Here's the result:
-- Executing [999@xyz:1] NoOp("PJSIP/poly_650_2_01-006f", "Call-ID: 
e3e249e5-7e8941dd-da386565@192.168.100.238") in new stack
-- Executing [999@xyz:2] Dial("PJSIP/poly_650_2_01-006f", 
"PJSIP/xyz011101/sip:xyz011101@:5060,30,b(_pre_dial,s,1)") in 
new stack
-- PJSIP/xyz011101-0070 Internal Gosub(_pre_dial,s,1) start
-- Executing [s@_pre_dial:1] NoOp("PJSIP/xyz011101-0070", "Call-ID: ") 
in new stack
-- Executing [s@_pre_dial:2] Set("PJSIP/xyz011101-0070", 
"CHANNEL(hangup_handler_push)=_hangup,s,1()") in new stack
-- Executing [s@_pre_dial:3] Return("PJSIP/xyz011101-0070", "") in new 
stack
  == Spawn extension (xyz, 999, 1) exited non-zero on 'PJSIP/xyz011101-0070'
-- PJSIP/xyz011101-0070 Internal Gosub(_pre_dial,s,1) complete 
GOSUB_RETVAL=
-- Called PJSIP/xyz011101/sip:xyz011101@:5060
  == Using SIP RTP Audio TOS bits 184
-- PJSIP/xyz011101-0070 is ringing
-- PJSIP/xyz011101-0070 Internal Gosub(_hangup,s,1) start
-- Executing [s@_hangup:1] NoOp("PJSIP/xyz011101-0070", "Call-ID: ") in 
new stack
-- Executing [s@_hangup:2] Return("PJSIP/xyz011101-0070", "") in new 
stack
  == Spawn extension (xyz, 999, 1) exited non-zero on 'PJSIP/xyz011101-0070'
-- PJSIP/xyz011101-0070 Internal Gosub(_hangup,s,1) complete 
GOSUB_RETVAL=
  == Spawn extension (xyz, 999, 2) exited non-zero on 
'PJSIP/poly_650_2_01-006f'
-- Executing [h@xyz:1] NoOp("PJSIP/poly_650_2_01-006f", "") in new stack

As you can see I can get Call-ID of inbound channel, but I receive null for the 
outbound channel in both pre-dial and hangup handlers.

So my question is if there's a way to retrieve SIP Call-ID for outbound 
channels?
Also the 2nd question is if PJSIP_HEADER is supposed to be able to read headers 
of the outbound channel?

Thanks,
Michael
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] PJSIP: how to retrieve underlying SIP Call-ID

2015-10-06 Thread Matthew Jordan
On Tue, Oct 6, 2015 at 3:25 PM, Michael Ulitskiy  wrote:
> Hello,
>
>
>
> I've started to play with PJSIP and got stuck at the following problem.
>
> I need to retrieve SIP Call-ID associated with PJSIP channel.
>
> For inbound channel I can use ${PJSIP_HEADER(read,Call-ID)}, but that
> doesn't work for
>
> outbound channel even in pre-dial or hangup handler. Whatever I do
> PJSIP_HEADER
>
> seem to be unable to read headers for outbound channel.
>
>
>
> Here's what I do:
>
>
>
> [xyz]
>
> exten => 999,1,NoOp(Call-ID: ${PJSIP_HEADER(read,Call-ID)})
>
> same =>
> n,Dial(PJSIP/xyz011101/sip:xyz011101@:5060,30,b(_pre_dial,s,1))
>
> exten => h,1,NoOp()
>
>
>
> [_pre_dial]
>
> exten => s,1,NoOp(Call-ID: ${PJSIP_HEADER(read,Call-ID)})
>
> same => n,Set(CHANNEL(hangup_handler_push)=_hangup,s,1())
>
> same => n,Return
>
>
>
> [_hangup]
>
> exten => s,1,NoOp(Call-ID: ${PJSIP_HEADER(read,Call-ID)})
>
> same => n,Return
>
>
>
>
>
> Here's the result:
>
> -- Executing [999@xyz:1] NoOp("PJSIP/poly_650_2_01-006f", "Call-ID:
> e3e249e5-7e8941dd-da386565@192.168.100.238") in new stack
>
> -- Executing [999@xyz:2] Dial("PJSIP/poly_650_2_01-006f",
> "PJSIP/xyz011101/sip:xyz011101@:5060,30,b(_pre_dial,s,1)")
> in new stack
>
> -- PJSIP/xyz011101-0070 Internal Gosub(_pre_dial,s,1) start
>
> -- Executing [s@_pre_dial:1] NoOp("PJSIP/xyz011101-0070", "Call-ID: ")
> in new stack
>
> -- Executing [s@_pre_dial:2] Set("PJSIP/xyz011101-0070",
> "CHANNEL(hangup_handler_push)=_hangup,s,1()") in new stack
>
> -- Executing [s@_pre_dial:3] Return("PJSIP/xyz011101-0070", "") in new
> stack
>
> == Spawn extension (xyz, 999, 1) exited non-zero on
> 'PJSIP/xyz011101-0070'
>
> -- PJSIP/xyz011101-0070 Internal Gosub(_pre_dial,s,1) complete
> GOSUB_RETVAL=
>
> -- Called PJSIP/xyz011101/sip:xyz011101@:5060
>
> == Using SIP RTP Audio TOS bits 184
>
> -- PJSIP/xyz011101-0070 is ringing
>
> -- PJSIP/xyz011101-0070 Internal Gosub(_hangup,s,1) start
>
> -- Executing [s@_hangup:1] NoOp("PJSIP/xyz011101-0070", "Call-ID: ") in
> new stack
>
> -- Executing [s@_hangup:2] Return("PJSIP/xyz011101-0070", "") in new
> stack
>
> == Spawn extension (xyz, 999, 1) exited non-zero on
> 'PJSIP/xyz011101-0070'
>
> -- PJSIP/xyz011101-0070 Internal Gosub(_hangup,s,1) complete
> GOSUB_RETVAL=
>
> == Spawn extension (xyz, 999, 2) exited non-zero on
> 'PJSIP/poly_650_2_01-006f'
>
> -- Executing [h@xyz:1] NoOp("PJSIP/poly_650_2_01-006f", "") in new stack
>
>
>
> As you can see I can get Call-ID of inbound channel, but I receive null for
> the outbound channel in both pre-dial and hangup handlers.
>
>
>
> So my question is if there's a way to retrieve SIP Call-ID for outbound
> channels?
>
> Also the 2nd question is if PJSIP_HEADER is supposed to be able to read
> headers of the outbound channel?
>

Hi Michael -

While you can use PJSIP_HEADER, the ability to retrieve the SIP
Call-ID through the CHANNEL function on a PJSIP channel was actually
just added in 13.6.0, and should be in the latest RC (13.6.0-rc2 [2]).

In either case, you're using a function as opposed to some
application, which means you do need to call the functions on the
specific channel. To get access to the outbound channel, you can use a
pre-dial handler's 'b' option [3]. The Call-ID *should* be set up on
the underlying invite session in the PJSIP dialog, even though it
hasn't been transmitted yet.

Matt

[1] https://gerrit.asterisk.org/#/c/1204/
[2] http://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-13.6.0-rc2
[3] https://wiki.asterisk.org/wiki/display/AST/Pre-Dial+Handlers

-- 
Matthew Jordan
Digium, Inc. | Director of Technology
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: http://digium.com & http://asterisk.org

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users


Re: [asterisk-users] does res_pjsip support ZRTP?

2015-10-06 Thread Matthew Jordan
On Mon, Oct 5, 2015 at 3:58 PM, Dmitriy Serov  wrote:
> 05.10.2015 23:24, Joshua Colp пишет:
>>
>> On 15-10-05 05:22 PM, Dmitriy Serov wrote:
>>>
>>> Hello. Do I understand correctly that the current implementation
>>> res_pjsip does not support ZRTP?
>>> http://lists.digium.com/pipermail/asterisk-dev/2013-December/064401.html
>>
>>
>> ZRTP is not supported in Asterisk itself.
>>
>>> Nothing has changed since 2013? P.S. I greatly regret that moved from
>>> chan_sip to res_pjsip. Previously used very much lacking, and much of
>>> the promise failed. Dmitriy Serov.
>>
>>
>> Any particular examples?
>>
>
> - opus support. Ok... I know the reason why it is not supported fully this
> codec. But the existing foreign solution works fine with chan_sip and does
> not work with res_pjsip works.
> - endpoint specific ACL
> - No support for SIP message without authorization. For this reason, the
> previously working functionality of sending and receiving SMS from gateway
> GOIP had to rewrite their internal Protocol.
> - found hardphones and software phones that don't accept "long nonce" and
> refuse to register when using res_pjsip
> - enable icesupport also leads to problems of registration and cannot be
> "common solution"
> - issue tracker now contains multiple error messages that arise every day
> and reboot my server (which cannot be called a production)
> - And watchdog logs SegFaults and Hangs including other stacks that are not
> yet documented in the issue tracker.
>
> Be sure to have forgotten something, because it is not documented all meet
> and unsolved problems,workarounds.
>
> The transition to PJSIP was chosen as mainstream and full support for
> WebRTC. As a result, instead of developing a service I a few months I'm
> returning opportunities to which users are accustomed and expect to see.
> Having the knowledge and the overall picture a few months ago I would not
> have taken such a decision.
>

I know this is shocking to hear, but this is an open source project.

That means anyone can fix something. Anyone can add something. Even
you! You have all the power to affect your system.

It also means that no one is under any obligation to do it for you.

Surprising, right? I know, it's amazing to think that *YOU* have all
the responsibility and power.

We use PJSIP. We use it in a variety of settings. It works well for
us. Does that mean it works well for you? I don't know. I'm not you. I
don't have your use cases. Would I like it to work well for you? Of
course! But if you don't participate by reporting issues, testing
changes, and contributing code, there's not much I can do for you
other than to note that the line is long, and feel free to stand in it
until someone in the community gets around to what you'd like to have
done.

Matt

-- 
Matthew Jordan
Digium, Inc. | Director of Technology
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: http://digium.com & http://asterisk.org

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] does res_pjsip support ZRTP?

2015-10-06 Thread Dmitriy Serov

06.10.2015 16:08, Matthew Jordan пишет:

I know this is shocking to hear, but this is an open source project.

That means anyone can fix something. Anyone can add something. Even
you! You have all the power to affect your system.

It also means that no one is under any obligation to do it for you.

Surprising, right? I know, it's amazing to think that *YOU* have all
the responsibility and power.

We use PJSIP. We use it in a variety of settings. It works well for
us. Does that mean it works well for you? I don't know. I'm not you. I
don't have your use cases. Would I like it to work well for you? Of
course! But if you don't participate by reporting issues, testing
changes, and contributing code, there's not much I can do for you
other than to note that the line is long, and feel free to stand in it
until someone in the community gets around to what you'd like to have
done.

Matt



I these words were repeatedly read and remember them well. That's why I 
haven't written any complaints to the developers.

Where you saw them, what made again to write these words?
I am a developer with more than two dozen years of experience. I have a 
hobby with a free service in which I don't owe anyone anything. And I 
understand your words.


Wrote a lot of words, but erased everything. It was my subjective 
opinion that will not change anything, and therefore it is unnecessary.


Now Why I wrote what I wrote. I feel the need to tell people my opinion 
on the difference in functionality between chan_sip and res_pjsip. They 
may be important for decision making. I this information was lacking in 
the past.


Dmitriy.

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
  http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] does res_pjsip support ZRTP?

2015-10-06 Thread Richard Mudgett
On Tue, Oct 6, 2015 at 10:27 AM, Joshua Colp  wrote:

> Dmitriy Serov wrote:
>
> 
>
>
>>> - found hardphones and software phones that don't accept "long nonce"
 and refuse to register when using res_pjsip

>>>
>>> Have you filed an issue with this and details about the
>>> hardphones+softphones?
>>>
>>
>> Welltech WP589. Beautifully registered using chan_sip and res_pjsip not
>> logged in.
>> Analyzing the exchange of SIP packets I found a single difference: the
>> format of the "nonce" field. When using a longer nonce (pjsip) this
>> phone simply does not respond to the request packet authorization (as do
>> many hardware and software encountering something incomprehensible).
>> The same behavior was on the built-in nokia 95 SIP client.
>>
>
> I haven't heard of this or seen it in testing, I don't think an issue
> exists for it.
>

On the subject of nonce length there is this issue about chan_sip's nonce
length
being too short:
https://issues.asterisk.org/jira/browse/ASTERISK-25062

Richard
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
   http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users