Ignore:
Timestamp:
Dec 26, 2011 9:03:13 AM (12 years ago)
Author:
bennylp
Message:

Misc (re #1393): vidgui: added account and NAT support and fixed assertion on incoming call

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip-apps/src/vidgui/vidgui.cpp

    r3733 r3923  
    3131#define THIS_FILE               "vidgui.cpp" 
    3232 
     33/////////////////////////////////////////////////////////////////////////// 
     34// 
     35// SETTINGS 
     36// 
     37 
     38// 
    3339// These configure SIP registration 
    34 #define SIP_DOMAIN              NULL 
    35 //#define SIP_DOMAIN            "pjsip.org" 
     40// 
     41#define USE_REGISTRATION        0 
     42#define SIP_DOMAIN              "pjsip.org" 
    3643#define SIP_USERNAME            "vidgui" 
    3744#define SIP_PASSWORD            "secret" 
    38 #define SIP_PORT                5060 
    39  
     45#define SIP_PORT                5084 
     46#define SIP_TCP                 1 
     47 
     48// 
     49// NAT helper settings 
     50// 
     51#define USE_ICE                 1 
     52#define USE_STUN                0 
     53#define STUN_SRV                "stun.pjsip.org" 
     54 
     55// 
     56// Devices settings 
     57// 
    4058#define DEFAULT_CAP_DEV         PJMEDIA_VID_DEFAULT_CAPTURE_DEV 
    4159//#define DEFAULT_CAP_DEV               1 
    4260#define DEFAULT_REND_DEV        PJMEDIA_VID_DEFAULT_RENDER_DEV 
     61 
     62 
     63// 
     64// End of Settings 
     65/////////////////////////////////////////////////////////////////////////// 
     66 
    4367 
    4468MainWin *MainWin::theInstance_; 
     
    327351    pjsua_call_get_info(call_id, &ci); 
    328352 
    329     if (currentCall_ == -1 && ci.state < PJSIP_INV_STATE_DISCONNECTED) { 
     353    if (currentCall_ == -1 && ci.state < PJSIP_INV_STATE_DISCONNECTED && 
     354        ci.role == PJSIP_ROLE_UAC) 
     355    { 
    330356        emit signalNewCall(call_id, false); 
    331357    } 
     
    436462    ua_cfg.cb.on_incoming_call = &::on_incoming_call; 
    437463    ua_cfg.cb.on_call_media_state = &::on_call_media_state; 
     464#if USE_STUN 
     465    ua_cfg.stun_srv_cnt = 1; 
     466    ua_cfg.stun_srv[0] = pj_str((char*)STUN_SRV); 
     467#endif 
    438468 
    439469    pjsua_logging_config log_cfg; 
     
    443473    pjsua_media_config med_cfg; 
    444474    pjsua_media_config_default(&med_cfg); 
     475    med_cfg.enable_ice = USE_ICE; 
    445476 
    446477    status = pjsua_init(&ua_cfg, &log_cfg, &med_cfg); 
     
    472503    } 
    473504 
     505#if SIP_TCP 
    474506    pjsua_transport_config tcp_cfg; 
    475507    pjsua_transport_config_default(&tcp_cfg); 
     
    482514        goto on_error; 
    483515    } 
     516#endif 
    484517 
    485518    // 
     
    488521    pjsua_acc_config acc_cfg; 
    489522    pjsua_acc_config_default(&acc_cfg); 
    490 #if SIP_DOMAIN 
    491     acc_cfg.id = pj_str( "sip:" SIP_USERNAME "@" SIP_DOMAIN); 
     523#if USE_REGISTRATION 
     524    acc_cfg.id = pj_str( (char*)"<sip:" SIP_USERNAME "@" SIP_DOMAIN ">"); 
    492525    acc_cfg.reg_uri = pj_str((char*) ("sip:" SIP_DOMAIN)); 
    493526    acc_cfg.cred_count = 1; 
     
    496529    acc_cfg.cred_info[0].username = pj_str((char*)SIP_USERNAME); 
    497530    acc_cfg.cred_info[0].data = pj_str((char*)SIP_PASSWORD); 
     531 
     532# if SIP_TCP 
     533    acc_cfg.proxy[acc_cfg.proxy_cnt++] = pj_str((char*) "<sip:" SIP_DOMAIN ";transport=tcp>"); 
     534# endif 
     535 
    498536#else 
    499537    char sip_id[80]; 
     
    506544#endif 
    507545 
    508     acc_cfg.max_video_cnt = 1; 
    509546    acc_cfg.vid_cap_dev = DEFAULT_CAP_DEV; 
    510547    acc_cfg.vid_rend_dev = DEFAULT_REND_DEV; 
Note: See TracChangeset for help on using the changeset viewer.