Tried with pjsua_vc8d.exe, the demo provided in "pjsua" project, the same problem found. On Wed, Nov 12, 2008 at 6:03 PM, Peter Cai <newptcai at gmail.com> wrote: > Hi all, > > I'm testing PJSIP with TCP transport, with windows mesenger. > > The environment is like this > > > PJ <-----TCP-----> PROXY <---------TCP-----------> Windows Messenger. (WM) > > I used the example "simple_pjsua.c" from PJ's web site: > > file:///E:/Software/Sites/pjsip_pjsip_docs_html/www.pjsip.org/pjsip/docs/html/page_pjsip_sample_simple_pjsuaua_c.htm > > > Modified 2 lines to use TCP. > > << status = pjsua_transport_create(PJSIP_TRANSPORT_UDP, &cfg, NULL); > >>> status = pjsua_transport_create(PJSIP_TRANSPORT_TCP, &cfg, NULL); > > << cfg.reg_uri = pj_str("sip:" SIP_DOMAIN ";transport=tcp"); > >>> cfg.reg_uri = pj_str("sip:" SIP_DOMAIN ";transport=tcp"); > > > According to the packages I captured, the process is: > > 1. PJ register with port 5060 > 2. PJ changed to register with a random selected port, 39122 e.g., > and un-register port 5060 > 3. PJ answer INVITE with 200 OK, with port 39122 in CONTACT header. > 4. WM tries to connect to port 39122, but failed. So ACK could not be sent! > > PJ is not listening on 39122, but wrongly using it in CONTACT header of 200 OK. > > If further information needed. I can provide captured packages. > -- ???????????DNA?????????????????????????????????????????????????????????????????????????????????????????