Ignore:
Timestamp:
Nov 11, 2006 4:16:04 PM (18 years ago)
Author:
bennylp
Message:

Attended call transfer implementation. The changes involves:

  • Added support for SIP Replaces extension (RFC 3891)
  • Added pjsua_call_xfer_replaces() to perform attended call transfer.
  • PJSUA checks and process Replaces header in incoming calls
  • Added pjsip_ua_find_dialog() API.
  • Added pjsip_endpt_has_capability() API.
  • Added pjsip_endpt_send_response2() API.
  • etc.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/src/pjsip-ua/sip_inv.c

    r738 r797  
    387387    /* Register the module. */ 
    388388    status = pjsip_endpt_register_module(endpt, &mod_inv.mod); 
    389  
    390     return status; 
     389    if (status != PJ_SUCCESS) 
     390        return status; 
     391 
     392    return PJ_SUCCESS; 
    391393} 
    392394 
     
    681683    if (req_hdr) { 
    682684        unsigned i; 
    683         pj_str_t STR_100REL = { "100rel", 6}; 
    684         pj_str_t STR_TIMER = { "timer", 5 }; 
     685        const pj_str_t STR_100REL = { "100rel", 6}; 
     686        const pj_str_t STR_TIMER = { "timer", 5 }; 
     687        const pj_str_t STR_REPLACES = { "replaces", 8 }; 
    685688        unsigned unsupp_cnt = 0; 
    686689        pj_str_t unsupp_tags[PJSIP_GENERIC_ARRAY_MAX_COUNT]; 
     
    696699            { 
    697700                rem_option |= PJSIP_INV_REQUIRE_TIMER; 
     701 
     702            } else if (pj_stricmp(&req_hdr->values[i], &STR_REPLACES)==0) { 
     703                pj_bool_t supp; 
     704                 
     705                supp = pjsip_endpt_has_capability(endpt, PJSIP_H_SUPPORTED,  
     706                                                  NULL, &STR_REPLACES); 
     707                if (!supp) 
     708                    unsupp_tags[unsupp_cnt++] = req_hdr->values[i]; 
    698709 
    699710            } else { 
Note: See TracChangeset for help on using the changeset viewer.