Ok I finally get the holy 200 response. I am registered ! Are you interested in a clean version of my source code to put an example of registering with pjsip in the documentation ? I still don't know how to code a non-blocking simple command-line interface (waiting for an input from the user always blocks the main thread). I was told on developping forums to use "select" fonction or threads, but you don't seem to do that in your samples/applications... Cheers, Damien On Mon, May 26, 2008 at 1:10 PM, Damien Herraud <d.herraud at gmail.com> wrote: > Yes you're right ! > > I did something like in simpleua.c example : > > // Main Loop > > for (;;) { > char option[10]; > > pj_time_val timeout = {0, 10}; > pjsip_endpt_handle_events(g_endpt, &timeout); > > puts("\nPress 'q' to quit\n"); > fgets(option, sizeof(option), stdin); > > if (option[0] == 'q') > break; > > } > > Unfortunately, it still blocks the execution of > pjsip_endpt_handle_events(). To continue, I have to press a letter other > than 'q'. I think I need to use threads, but you didn't use that in > simpleua.c. Is there another solution ? > > Sorry for these questions completely related to C programming ! > > > Damien > > > > On Mon, May 26, 2008 at 2:45 AM, Benny Prijono <bennylp at pjsip.org> wrote: > >> On Sun, May 25, 2008 at 8:56 PM, Damien Herraud <d.herraud at gmail.com> >> wrote: >> > 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. >> > >> >> Isn't it getchar() will block the main thread? >> >> -benny >> >> > 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 >> >>> >> >> >> > >> > >> > _______________________________________________ >> > 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/20080527/5d8e7364/attachment-0001.html