Ignore:
Timestamp:
Oct 1, 2010 2:03:42 AM (12 years ago)
Author:
bennylp
Message:

Closed #1142 (Account based configuration to specify if "c=0.0.0.0" method should be used when putting call on hold):

  • use PJSUA_CALL_HOLD_TYPE_DEFAULT to specify default global call hold type
  • use pjsua_acc_config.call_hold_type to specify call hold type for the account
  • call hold type can also be set on per call basis by changing the call_hold_type in the call structure (requires inclusion of <pjsua-lib/pjsua_internal.h>
File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/include/pjsua-lib/pjsua.h

    r3326 r3330  
    20422042 
    20432043/** 
     2044 * This enumeration specifies how we should offer call hold request to 
     2045 * remote peer. The default value is set by compile time constant 
     2046 * PJSUA_CALL_HOLD_TYPE_DEFAULT, and application may control the setting 
     2047 * on per-account basis by manipulating \a call_hold_type field in 
     2048 * #pjsua_acc_config. 
     2049 */ 
     2050typedef enum pjsua_call_hold_type 
     2051{ 
     2052    /** 
     2053     * This will follow RFC 3264 recommendation to use a=sendonly, 
     2054     * a=recvonly, and a=inactive attribute as means to signal call 
     2055     * hold status. This is the correct value to use. 
     2056     */ 
     2057    PJSUA_CALL_HOLD_TYPE_RFC3264, 
     2058 
     2059    /** 
     2060     * This will use the old and deprecated method as specified in RFC 2543, 
     2061     * and will offer c=0.0.0.0 in the SDP instead. Using this has many 
     2062     * drawbacks such as inability to keep the media transport alive while 
     2063     * the call is being put on hold, and should only be used if remote 
     2064     * does not understand RFC 3264 style call hold offer. 
     2065     */ 
     2066    PJSUA_CALL_HOLD_TYPE_RFC2543 
     2067 
     2068} pjsua_call_hold_type; 
     2069 
     2070 
     2071/** 
     2072 * Specify the default call hold type to be used in #pjsua_acc_config. 
     2073 * 
     2074 * Default is PJSUA_CALL_HOLD_TYPE_RFC3264, and there's no reason to change 
     2075 * this except if you're communicating with an old/non-standard peer. 
     2076 */ 
     2077#ifndef PJSUA_CALL_HOLD_TYPE_DEFAULT 
     2078#   define PJSUA_CALL_HOLD_TYPE_DEFAULT         PJSUA_CALL_HOLD_TYPE_RFC3264 
     2079#endif 
     2080 
     2081 
     2082/** 
    20442083 * This structure describes account configuration to be specified when 
    20452084 * adding a new account with #pjsua_acc_add(). Application MUST initialize 
     
    23702409    pj_bool_t        use_stream_ka; 
    23712410#endif 
     2411 
     2412    /** 
     2413     * Specify how to offer call hold to remote peer. Please see the 
     2414     * documentation on #pjsua_call_hold_type for more info. 
     2415     * 
     2416     * Default: PJSUA_CALL_HOLD_TYPE_DEFAULT 
     2417     */ 
     2418    pjsua_call_hold_type call_hold_type; 
    23722419 
    23732420} pjsua_acc_config; 
Note: See TracChangeset for help on using the changeset viewer.