udp_cfg.bound_addr does not work correctly

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

based on the 200 line example from PJSUA, I wrote an own small phone application, using pjsua-lib and so on. 

My problem: when I get a call from my sip-provider, the call is established, I can transmit data, but I don?t get receive data ...
(in the Status: 200 OK with session description, I find my local adress, obviously the data-packet from the sip-provider will not reach me)


With pjsua every thing works fine, when I use 

    --ip-addr    62.245.210.13
    --bound-addr 192.168.123.45


In my application, (I think) I do the same when creating the transport
via pjsua_transport_create() with 

    udp_cfg.public_addr = pj_str(62.245.210.13);
    udp_cfg.bound_addr  = pj_str(192.168.123.45);

but it seems, something must be done additionally, because I get different results. (My computer is behind a Router with NAT-Translation ...)


Pjsua tells in his log-file:

  xxx SIP UDP transport started, published address is 62.245.210.13:5080
  pjsua_acc.c  Account <sip:62.245.210.13:5080> added with id 0
  pjsua_acc.c  Account sip:499132958xyz at sip.1und1.de added with id 1
  ...
  pjsua_media.c  RTP  socket reachable at 62.245.210.13:4000
  pjsua_media.c  RTCP socket reachable at 62.245.210.13:4001
  pjsua_media.c  RTP  socket reachable at 62.245.210.13:4002
  pjsua_media.c  RTCP socket reachable at 62.245.210.13:4003

My application tells in its log-file:

  pjsua_core.c   SIP UDP socket reachable at 62.245.210.13:5080
  xxx SIP UDP transport started, published address is 62.245.210.13:5080
  pjsua_acc.c  Account sip:499132958xyz at sip.1und1.de added with id 0
  ...
  pjsua_media.c  RTP  socket reachable at 192.168.132.50:4000  <= ERROR
  pjsua_media.c  RTCP socket reachable at 192.168.132.50:4001  <= ERROR
  pjsua_media.c  RTP  socket reachable at 192.168.132.50:4002  <= ERROR
  pjsua_media.c  RTCP socket reachable at 192.168.132.50:4002  <= ERROR

What could be the problem, that my application send?s this internal adress as destination adress for Packets to my Sip-Provider ???


My code works in the way 

  pjsua_init();
  pjsua_transport_create();           with ip-addr and bound-addr set
    no pjsua_acc_add_local();         as done in pjsua
    no pjsua_acc_set_online_status(); as done in pjsua
  pjsua_acc_add;                      without telling transport-id, 
                                      like in the example

but without any stuff NAT-Transversal etc. what might be activated by pjsua by default, even when there is no parameter in config-file. In this case,
such stuff whould miss in my application ...

integrating a local account and telling transport-id when creating the account did not change the behaviour, so I assume there?s something different missing ...

With regards,
Michael
-- 
GMX DSL Doppel-Flat ab 19,99 &euro;/mtl.! Jetzt auch mit 
gratis Notebook-Flat! http://portal.gmx.net/de/go/dsl



[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux