[pjsip] Registration with pjsip-lib, pjsip_regc_init

Damien Herraud d.herraud at gmail.com
Sun May 25 15:56:51 EDT 2008


Hi,


 I've captured the SIP packets I send/receive with wireshark. The packet I
send seems to be good (when I compare it to the one from pjsua), the server
answers me with 401, what is correct. But then my program doesn't answer
back to give the password and finalize registering. I thought it was done
automatically with pjsip_regc functions I used...

 Anyway my callback is still not called, maybe it is related to what's
above.

 Please find attached my source code and my wireshark capture.

Cheers,


Damien



On Thu, May 22, 2008 at 2:57 PM, Damien Herraud <d.herraud at gmail.com> wrote:

> Oooops, I forgot the output of the terminal :
>
>  14:54:47.152 os_core_unix.c pjlib 0.8.0 for POSIX initialized
>  14:54:47.152 sip_endpoint.c Creating endpoint instance...
>  14:54:47.153          pjlib select() I/O Queue created (0x816068c)
>  14:54:47.153 sip_endpoint.c Module "mod-msg-print" registered
>  14:54:47.153 sip_transport. Transport manager created.
>  14:54:47.154   udp0x8174b3c SIP UDP transport started, published address
> is 137.122.91.64:5060
>  14:54:47.154 sip_endpoint.c Module "mod-tsx-layer" registered
>  14:54:47.154 sip_endpoint.c Module "mod-stateful-util" registered
>  14:54:47.154 sip_endpoint.c Module "mod-ua" registered
>  14:54:47.154 sip_endpoint.c Module "mod-invite" registered
>  14:54:47.154 sip_endpoint.c Module "mod-100rel" registered
>  14:54:47.154 sip_endpoint.c Module "mod-simpleua" registered
>  14:54:47.154       endpoint Request msg REGISTER/cseq=50498
> (tdta0x819ba10) created.
>  14:54:47.154   tsx0x819ca7c Transaction created for Request msg
> REGISTER/cseq=50499 (tdta0x819ba10)
>  14:54:47.154   tsx0x819ca7c Sending Request msg REGISTER/cseq=50499
> (tdta0x819ba10) in state Null
>  14:54:47.154  sip_resolve.c DNS resolver not available, target
> 'pcscf.open-ims.test:4060' type=Unspecified will be resolved with
> gethostbyname()
>  14:54:47.155  sip_resolve.c Target 'pcscf.open-ims.test:4060'
> type=Unspecified resolved to '137.122.89.83:4060' type=UDP
>  14:54:47.155   tsx0x819ca7c State changed from Null to Calling,
> event=TX_MSG
>
> Thanks,
>
> Damien
>
>
>
>
>
> On Thu, May 22, 2008 at 12:14 PM, Damien Herraud <d.herraud at gmail.com>
> wrote:
>
>> You were totally right again. Sorry I panicked !!!
>>
>> Now I get all basic registration functions working, but the callback
>> doesn't seem to be called so I have no way to watch the registration status.
>> I thought the callback was automatically called with pjsip_regc_create().
>>
>> Is there something to do to call it ? You can find my ugly source code
>> attached.
>>
>>
>> Cheers,
>>
>> Damien
>>
>>
>>
>>
>> On Thu, May 22, 2008 at 4:05 AM, Benny Prijono <bennylp at pjsip.org> wrote:
>>
>>> On Wed, May 21, 2008 at 11:40 PM, Damien Herraud <d.herraud at gmail.com>
>>> wrote:
>>> > Hi,
>>> >
>>> >  I have a problem with pjsip_regc_register. I get :
>>> >
>>> >> ../src/pjsip-ua/sip_reg.c:239: pjsip_regc_init: Assertion `regc &&
>>> srv_url
>>> >> && from_url && to_url && contact_cnt && contact && expires' failed.
>>> >
>>> > when I launch my program.
>>> >
>>>
>>> That assertion of course means that one (or more) of the listed
>>> variables/parameters is zero or NULL. I suspect it's
>>> acc->cfg.reg_timeout, since you didn't initialize this value.
>>> According to the API, you should set this argument to
>>> PJSIP_REGC_EXPIRATION_NOT_SPECIFIED if you don't want to specify
>>> expiration.
>>>
>>> >
>>> > It is driving me crazy since I am sure it has worked before
>>> (pjsip_regc_send
>>> > also worked, I mean I got no error. I was getting into regc_cb() code
>>> when I
>>> > got this error).
>>> > I tried to use many saves  but I still get this error !!!
>>> >
>>>
>>> Since the acc->cfg.reg_timeout is not initialized it may contain any
>>> value. It could be that last time it contains a garbage non-zero value
>>> hence it passed the assertion.
>>>
>>> Cheers
>>>  Benny
>>>
>>>
>>> > You can find my source code (very simple modification of simpleua.c and
>>> > util.h) attached !
>>> >
>>> >
>>> > Cheers,
>>> >
>>> > Damien
>>> >
>>> >
>>> > On Wed, May 21, 2008 at 7:01 AM, Benny Prijono <bennylp at pjsip.org>
>>> wrote:
>>> >>
>>> >> On Tue, May 20, 2008 at 11:39 PM, Damien Herraud <d.herraud at gmail.com
>>> >
>>> >> wrote:
>>> >> > Ok ! I am indeed using version 0.8.
>>> >> >
>>> >> > Do you advise me to use svn version instead ?
>>> >> >
>>> >> >
>>> >>
>>> >> No, I didn't and won't advise you to use svn version just because 0.8
>>> >> lacks pj_sockaddr_get_addr() function. You could use other ways to
>>> >> retrieve IP address from a socket address, please see <pj/sock.h> for
>>> >> more info.
>>> >>
>>> >> Cheers
>>> >>  Benny
>>> >>
>>> >>
>>> >> > Damien
>>> >> >
>>> >> >
>>> >> >
>>> >> > On Sat, May 17, 2008 at 6:27 AM, Benny Prijono <bennylp at pjsip.org>
>>> >> > wrote:
>>> >> >>
>>> >> >> On Fri, May 16, 2008 at 5:28 PM, Damien Herraud <
>>> d.herraud at gmail.com>
>>> >> >> wrote:
>>> >> >> > Thanks for that, I get my address !
>>> >> >> >
>>> >> >> > By the way when I was trying getting my address with another
>>> method,
>>> >> >> > I
>>> >> >> > tried
>>> >> >> > to use pj_sockaddr_get_addr() function defined here . I got an
>>> error
>>> >> >> > in
>>> >> >> > compilation, saying that this is not declared. I searched PJSIP
>>> >> >> > project
>>> >> >> > for
>>> >> >> > this function with eclipse and I could not find it.
>>> >> >> >
>>> >> >>
>>> >> >> This only exists in SVN version, not in 0.8 release version.
>>> Perhaps
>>> >> >> you're using 0.8?
>>> >> >>
>>> >> >> Cheers
>>> >> >>  Benny
>>> >> >>
>>> >> >> > Cheers,
>>> >> >> >
>>> >> >> > Damien
>>> >> >> >
>>> >> >>
>>> >> >> _______________________________________________
>>> >> >> Visit our blog: http://blog.pjsip.org
>>> >> >>
>>> >> >> pjsip mailing list
>>> >> >> pjsip at lists.pjsip.org
>>> >> >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>>> >> >
>>> >> >
>>> >> > _______________________________________________
>>> >> > Visit our blog: http://blog.pjsip.org
>>> >> >
>>> >> > pjsip mailing list
>>> >> > pjsip at lists.pjsip.org
>>> >> > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>>> >> >
>>> >> >
>>> >>
>>> >> _______________________________________________
>>> >> Visit our blog: http://blog.pjsip.org
>>> >>
>>> >> pjsip mailing list
>>> >> pjsip at lists.pjsip.org
>>> >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>>> >
>>> >
>>> > _______________________________________________
>>> > Visit our blog: http://blog.pjsip.org
>>> >
>>> > pjsip mailing list
>>> > pjsip at lists.pjsip.org
>>> > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>>> >
>>> >
>>>
>>> _______________________________________________
>>> Visit our blog: http://blog.pjsip.org
>>>
>>> pjsip mailing list
>>> pjsip at lists.pjsip.org
>>> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20080525/64ae84a8/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: wireshark_capture
Type: application/octet-stream
Size: 1646 bytes
Desc: not available
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20080525/64ae84a8/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: main.c
Type: text/x-csrc
Size: 21876 bytes
Desc: not available
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20080525/64ae84a8/attachment.c>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: util.h
Type: text/x-chdr
Size: 9923 bytes
Desc: not available
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20080525/64ae84a8/attachment.h>


More information about the pjsip mailing list