Mobile Call problem

PE
P.Muge Ersoy
Fri, Mar 12, 2010 2:11 PM

Hi All and Benny;

I have a problem with mobile pjsip setup.. I can able to register the client
but it seems like transportation is stopping :S
udp_on_read_complete  calls register call backs fine.. But when i try to
call a number .. It never pass from udp_on_read_complete .. after a while on
call state call back called with Disconnected msg from timer..  as you can
see from below.. I defined Windows Mobile at config_site.h..  Do you have
any idea why calling is not working in a weird way ..

sip.exe!on_call_state(int call_id = 0, pjsip_event* e = 0x2841e0e4) Line:
1046, Byte Offsets: 0x88    C++
sip.exe!pjsua_call_on_state_changed(pjsip_inv_session* inv =
0x005499c0, pjsip_event* e = 0x2841e0e4) Line: 3080, Byte Offsets: 0x648
C
sip.exe!inv_set_state(pjsip_inv_session* inv = 0x005499c0,
pjsip_inv_state state = 6, pjsip_event* e = 0x2841e0e4) Line: 227, Byte
Offsets: 0x110    C
sip.exe!inv_on_state_calling(pjsip_inv_session* inv = 0x005499c0,
pjsip_event* e = 0x2841e0e4) Line: 3259, Byte Offsets: 0x2a4    C
sip.exe!mod_inv_on_tsx_state(pjsip_transaction* tsx = 0x0054ad54,
pjsip_event* e = 0x2841e0e4) Line: 565, Byte Offsets: 0x88    C
sip.exe!pjsip_dlg_on_tsx_state(pjsip_dialog* dlg = 0x00547944,
pjsip_transaction* tsx = 0x0054ad54, pjsip_event* e = 0x2841e0e4) Line:
1908, Byte Offsets: 0xf0    C++
sip.exe!mod_ua_on_tsx_state(pjsip_transaction* tsx = 0x0054ad54,
pjsip_event* e = 0x2841e0e4) Line: 180, Byte Offsets: 0x54    C
sip.exe!tsx_set_state(pjsip_transaction* tsx = 0x0054ad54,
pjsip_tsx_state_e state = 6, pjsip_event_id_e event_src_type = 1, void*
event_src = 0x0054ae58) Line: 1116, Byte Offsets: 0x1fc    C

sip.exe!tsx_on_state_calling(pjsip_transaction* tsx = 0x0054ad54,

pjsip_event* event = 0x2841e160) Line: 2166, Byte Offsets: 0x128    C
sip.exe!tsx_timer_callback(pj_timer_heap_t* theap = 0x00430230,
pj_timer_entry* entry = 0x0054ae58) Line: 1057, Byte Offsets: 0xb4    C
sip.exe!pj_timer_heap_poll(pj_timer_heap_t* ht = 0x00430230,
pj_time_val* next_delay = 0x2841e1c8) Line: 519, Byte Offsets: 0x17c    C

Hi All and Benny; I have a problem with mobile pjsip setup.. I can able to register the client but it seems like transportation is stopping :S udp_on_read_complete calls register call backs fine.. But when i try to call a number .. It never pass from udp_on_read_complete .. after a while on call state call back called with Disconnected msg from timer.. as you can see from below.. I defined Windows Mobile at config_site.h.. Do you have any idea why calling is not working in a weird way .. sip.exe!on_call_state(int call_id = 0, pjsip_event* e = 0x2841e0e4) Line: 1046, Byte Offsets: 0x88 C++ sip.exe!pjsua_call_on_state_changed(pjsip_inv_session* inv = 0x005499c0, pjsip_event* e = 0x2841e0e4) Line: 3080, Byte Offsets: 0x648 C sip.exe!inv_set_state(pjsip_inv_session* inv = 0x005499c0, pjsip_inv_state state = 6, pjsip_event* e = 0x2841e0e4) Line: 227, Byte Offsets: 0x110 C sip.exe!inv_on_state_calling(pjsip_inv_session* inv = 0x005499c0, pjsip_event* e = 0x2841e0e4) Line: 3259, Byte Offsets: 0x2a4 C sip.exe!mod_inv_on_tsx_state(pjsip_transaction* tsx = 0x0054ad54, pjsip_event* e = 0x2841e0e4) Line: 565, Byte Offsets: 0x88 C sip.exe!pjsip_dlg_on_tsx_state(pjsip_dialog* dlg = 0x00547944, pjsip_transaction* tsx = 0x0054ad54, pjsip_event* e = 0x2841e0e4) Line: 1908, Byte Offsets: 0xf0 C++ sip.exe!mod_ua_on_tsx_state(pjsip_transaction* tsx = 0x0054ad54, pjsip_event* e = 0x2841e0e4) Line: 180, Byte Offsets: 0x54 C sip.exe!tsx_set_state(pjsip_transaction* tsx = 0x0054ad54, pjsip_tsx_state_e state = 6, pjsip_event_id_e event_src_type = 1, void* event_src = 0x0054ae58) Line: 1116, Byte Offsets: 0x1fc C > sip.exe!tsx_on_state_calling(pjsip_transaction* tsx = 0x0054ad54, pjsip_event* event = 0x2841e160) Line: 2166, Byte Offsets: 0x128 C sip.exe!tsx_timer_callback(pj_timer_heap_t* theap = 0x00430230, pj_timer_entry* entry = 0x0054ae58) Line: 1057, Byte Offsets: 0xb4 C sip.exe!pj_timer_heap_poll(pj_timer_heap_t* ht = 0x00430230, pj_time_val* next_delay = 0x2841e1c8) Line: 519, Byte Offsets: 0x17c C
NI
Nanang Izzuddin
Fri, Mar 19, 2010 3:51 PM

Hi,

Could you provide the log file and packet capture?

Shooting in the dark here..
It seems that you expect the response come via UDP transport, however
the message might be sent via TCP (i.e: when the message is larger
than MTU, by default set to 1300 bytes). If the target didn't actually
listen on TCP, normally pjsip would try to re-send it using UDP.
However, if the transaction timeout occurred before transport failure
report received, the transaction might have got destroyed and no
re-send performed.

So perhaps you can try to set PJSIP_DONT_SWITCH_TO_TCP to 1, and see
if the call goes fine.

BR,
nanang

On Fri, Mar 12, 2010 at 9:11 PM, P.Muge Ersoy muge.ersoy@gmail.com wrote:

Hi All and Benny;

I have a problem with mobile pjsip setup.. I can able to register the client
but it seems like transportation is stopping :S
udp_on_read_complete  calls register call backs fine.. But when i try to
call a number .. It never pass from udp_on_read_complete .. after a while on
call state call back called with Disconnected msg from timer..  as you can
see from below.. I defined Windows Mobile at config_site.h..  Do you have
any idea why calling is not working in a weird way ..

sip.exe!on_call_state(int call_id = 0, pjsip_event* e = 0x2841e0e4) Line:
1046, Byte Offsets: 0x88    C++
     sip.exe!pjsua_call_on_state_changed(pjsip_inv_session* inv =
0x005499c0, pjsip_event* e = 0x2841e0e4) Line: 3080, Byte Offsets: 0x648
C
     sip.exe!inv_set_state(pjsip_inv_session* inv = 0x005499c0,
pjsip_inv_state state = 6, pjsip_event* e = 0x2841e0e4) Line: 227, Byte
Offsets: 0x110    C
     sip.exe!inv_on_state_calling(pjsip_inv_session* inv = 0x005499c0,
pjsip_event* e = 0x2841e0e4) Line: 3259, Byte Offsets: 0x2a4    C
     sip.exe!mod_inv_on_tsx_state(pjsip_transaction* tsx = 0x0054ad54,
pjsip_event* e = 0x2841e0e4) Line: 565, Byte Offsets: 0x88    C
     sip.exe!pjsip_dlg_on_tsx_state(pjsip_dialog* dlg = 0x00547944,
pjsip_transaction* tsx = 0x0054ad54, pjsip_event* e = 0x2841e0e4) Line:
1908, Byte Offsets: 0xf0    C++
     sip.exe!mod_ua_on_tsx_state(pjsip_transaction* tsx = 0x0054ad54,
pjsip_event* e = 0x2841e0e4) Line: 180, Byte Offsets: 0x54    C
     sip.exe!tsx_set_state(pjsip_transaction* tsx = 0x0054ad54,
pjsip_tsx_state_e state = 6, pjsip_event_id_e event_src_type = 1, void*
event_src = 0x0054ae58) Line: 1116, Byte Offsets: 0x1fc    C

    sip.exe!tsx_on_state_calling(pjsip_transaction* tsx = 0x0054ad54,
pjsip_event* event = 0x2841e160) Line: 2166, Byte Offsets: 0x128    C

     sip.exe!tsx_timer_callback(pj_timer_heap_t* theap = 0x00430230,
pj_timer_entry* entry = 0x0054ae58) Line: 1057, Byte Offsets: 0xb4    C
     sip.exe!pj_timer_heap_poll(pj_timer_heap_t* ht = 0x00430230,
pj_time_val* next_delay = 0x2841e1c8) Line: 519, Byte Offsets: 0x17c    C


Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip@lists.pjsip.org
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

Hi, Could you provide the log file and packet capture? Shooting in the dark here.. It seems that you expect the response come via UDP transport, however the message might be sent via TCP (i.e: when the message is larger than MTU, by default set to 1300 bytes). If the target didn't actually listen on TCP, normally pjsip would try to re-send it using UDP. However, if the transaction timeout occurred before transport failure report received, the transaction might have got destroyed and no re-send performed. So perhaps you can try to set PJSIP_DONT_SWITCH_TO_TCP to 1, and see if the call goes fine. BR, nanang On Fri, Mar 12, 2010 at 9:11 PM, P.Muge Ersoy <muge.ersoy@gmail.com> wrote: > Hi All and Benny; > > I have a problem with mobile pjsip setup.. I can able to register the client > but it seems like transportation is stopping :S > udp_on_read_complete  calls register call backs fine.. But when i try to > call a number .. It never pass from udp_on_read_complete .. after a while on > call state call back called with Disconnected msg from timer..  as you can > see from below.. I defined Windows Mobile at config_site.h..  Do you have > any idea why calling is not working in a weird way .. > > sip.exe!on_call_state(int call_id = 0, pjsip_event* e = 0x2841e0e4) Line: > 1046, Byte Offsets: 0x88    C++ >      sip.exe!pjsua_call_on_state_changed(pjsip_inv_session* inv = > 0x005499c0, pjsip_event* e = 0x2841e0e4) Line: 3080, Byte Offsets: 0x648 > C >      sip.exe!inv_set_state(pjsip_inv_session* inv = 0x005499c0, > pjsip_inv_state state = 6, pjsip_event* e = 0x2841e0e4) Line: 227, Byte > Offsets: 0x110    C >      sip.exe!inv_on_state_calling(pjsip_inv_session* inv = 0x005499c0, > pjsip_event* e = 0x2841e0e4) Line: 3259, Byte Offsets: 0x2a4    C >      sip.exe!mod_inv_on_tsx_state(pjsip_transaction* tsx = 0x0054ad54, > pjsip_event* e = 0x2841e0e4) Line: 565, Byte Offsets: 0x88    C >      sip.exe!pjsip_dlg_on_tsx_state(pjsip_dialog* dlg = 0x00547944, > pjsip_transaction* tsx = 0x0054ad54, pjsip_event* e = 0x2841e0e4) Line: > 1908, Byte Offsets: 0xf0    C++ >      sip.exe!mod_ua_on_tsx_state(pjsip_transaction* tsx = 0x0054ad54, > pjsip_event* e = 0x2841e0e4) Line: 180, Byte Offsets: 0x54    C >      sip.exe!tsx_set_state(pjsip_transaction* tsx = 0x0054ad54, > pjsip_tsx_state_e state = 6, pjsip_event_id_e event_src_type = 1, void* > event_src = 0x0054ae58) Line: 1116, Byte Offsets: 0x1fc    C >>    sip.exe!tsx_on_state_calling(pjsip_transaction* tsx = 0x0054ad54, >> pjsip_event* event = 0x2841e160) Line: 2166, Byte Offsets: 0x128    C >      sip.exe!tsx_timer_callback(pj_timer_heap_t* theap = 0x00430230, > pj_timer_entry* entry = 0x0054ae58) Line: 1057, Byte Offsets: 0xb4    C >      sip.exe!pj_timer_heap_poll(pj_timer_heap_t* ht = 0x00430230, > pj_time_val* next_delay = 0x2841e1c8) Line: 519, Byte Offsets: 0x17c    C > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >