📄 nua_tag.h
字号:
#define NUTAG_SIP_PARSER(x) NTATAG_MCLASS(x)#define NUTAG_SIP_PARSER_REF(x) NTATAG_MCLASS_REF(x)#define NUTAG_AUTH(x) nutag_auth, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_auth;#define NUTAG_AUTH_REF(x) nutag_auth_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_auth_ref;#define NUTAG_AUTH_CACHE(x) nutag_auth_cache, tag_int_v(x)SOFIAPUBVAR tag_typedef_t nutag_auth_cache;#define NUTAG_AUTH_CACHE_REF(x) nutag_auth_cache_ref, tag_int_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_auth_cache_ref;/** Authentication caching policy. @NEW_1_12_6. */enum nua_auth_cache { /** Include credentials within dialog (default) */ nua_auth_cache_dialog = 0, /** Include credentials only when challenged */ nua_auth_cache_challenged = 1, _nua_auth_cache_invalid};#define NUTAG_KEEPALIVE(x) nutag_keepalive, tag_uint_v(x)SOFIAPUBVAR tag_typedef_t nutag_keepalive;#define NUTAG_KEEPALIVE_REF(x) nutag_keepalive_ref, tag_uint_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_keepalive_ref;#define NUTAG_KEEPALIVE_STREAM(x) nutag_keepalive_stream, tag_uint_v(x)SOFIAPUBVAR tag_typedef_t nutag_keepalive_stream;#define NUTAG_KEEPALIVE_STREAM_REF(x) \nutag_keepalive_stream_ref, tag_uint_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_keepalive_stream_ref;#define NUTAG_AUTHTIME(x) nutag_authtime, tag_uint_v(x)SOFIAPUBVAR tag_typedef_t nutag_authtime;#define NUTAG_AUTHTIME_REF(x) nutag_authtime_ref, tag_uint_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_authtime_ref;#define NUTAG_M_DISPLAY(x) nutag_m_display, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_m_display;#define NUTAG_M_DISPLAY_REF(x) nutag_m_display_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_m_display_ref;#define NUTAG_M_USERNAME(x) nutag_m_username, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_m_username;#define NUTAG_M_USERNAME_REF(x) nutag_m_username_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_m_username_ref;#define NUTAG_M_PARAMS(x) nutag_m_params, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_m_params;#define NUTAG_M_PARAMS_REF(x) nutag_m_params_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_m_params_ref;#define NUTAG_M_FEATURES(x) nutag_m_features, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_m_features;#define NUTAG_M_FEATURES_REF(x) nutag_m_features_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_m_features_ref;#define NUTAG_EVENT(x) nutag_event, tag_int_v(x)SOFIAPUBVAR tag_typedef_t nutag_event;#define NUTAG_EVENT_REF(x) nutag_event_ref, tag_int_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_event_ref;#define NUTAG_STATUS(x) nutag_status, tag_uint_v(x)SOFIAPUBVAR tag_typedef_t nutag_status;#define NUTAG_STATUS_REF(x) nutag_status_ref, tag_uint_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_status_ref;#define NUTAG_PHRASE(x) nutag_phrase, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_phrase;#define NUTAG_PHRASE_REF(x) nutag_phrase_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_phrase_ref;#define NUTAG_HANDLE(x) nutag_handle, nutag_handle_v(x)SOFIAPUBVAR tag_typedef_t nutag_handle;#define NUTAG_HANDLE_REF(x) nutag_handle_ref, nutag_handle_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_handle_ref;#define NUTAG_IDENTITY(x) nutag_identity, nutag_handle_v(x)SOFIAPUBVAR tag_typedef_t nutag_identity;#define NUTAG_IDENTITY_REF(x) nutag_identity_ref, nutag_handle_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_identity_ref;#define NUTAG_INSTANCE(x) nutag_instance, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_instance;#define NUTAG_INSTANCE_REF(x) nutag_instance_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_instance_ref;#define NUTAG_NOTIFY_REFER(x) nutag_notify_refer, nutag_handle_v(x)SOFIAPUBVAR tag_typedef_t nutag_notify_refer;#define NUTAG_NOTIFY_REFER_REF(x) nutag_notify_refer_ref, nutag_handle_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_notify_refer_ref;#define NUTAG_REFER_EVENT(x) nutag_refer_event, siptag_event_v(x)SOFIAPUBVAR tag_typedef_t nutag_refer_event;#define NUTAG_REFER_EVENT_REF(x) nutag_refer_event_ref, siptag_event_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_refer_event_ref;#define NUTAG_REFER_PAUSE(x) nutag_refer_pause, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_refer_pause;#define NUTAG_REFER_PAUSE_REF(x) nutag_refer_pause_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_refer_pause_ref;#define NUTAG_USER_AGENT(x) nutag_user_agent, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_user_agent;#define NUTAG_USER_AGENT_REF(x) nutag_user_agent_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_user_agent_ref;#define NUTAG_ALLOW(x) nutag_allow, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_allow;#define NUTAG_ALLOW_REF(x) nutag_allow_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_allow_ref;#define NUTAG_APPL_METHOD(x) nutag_appl_method, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_appl_method;#define NUTAG_APPL_METHOD_REF(x) nutag_appl_method_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_appl_method_ref;#define NUTAG_SUPPORTED(x) nutag_supported, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_supported;#define NUTAG_SUPPORTED_REF(x) nutag_supported_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_supported_ref;#define NUTAG_ALLOW_EVENTS(x) nutag_allow_events, tag_str_v(x)SOFIAPUBVAR tag_typedef_t nutag_allow_events;#define NUTAG_ALLOW_EVENTS_REF(x) nutag_allow_events_ref, tag_str_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_allow_events_ref;#define NUTAG_CALLSTATE(x) nutag_callstate, tag_int_v(x)SOFIAPUBVAR tag_typedef_t nutag_callstate;#define NUTAG_CALLSTATE_REF(x) nutag_callstate_ref, tag_int_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_callstate_ref;enum nua_callstate { nua_callstate_init, /**< Initial state */ nua_callstate_authenticating, /**< 401/407 received */ nua_callstate_calling, /**< INVITE sent */ nua_callstate_proceeding, /**< 18X received */ nua_callstate_completing, /**< 2XX received */ nua_callstate_received, /**< INVITE received */ nua_callstate_early, /**< 18X sent (w/SDP) */ nua_callstate_completed, /**< 2XX sent */ nua_callstate_ready, /**< 2XX received, ACK sent, or vice versa */ nua_callstate_terminating, /**< BYE sent */ nua_callstate_terminated /**< BYE complete */};/** Get name for NUA call state */SOFIAPUBFUN char const *nua_callstate_name(enum nua_callstate state);#define NUTAG_SUBSTATE(x) nutag_substate, tag_int_v(x)SOFIAPUBVAR tag_typedef_t nutag_substate;#define NUTAG_SUBSTATE_REF(x) nutag_substate_ref, tag_int_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_substate_ref;/** Parameter type of NUTAG_SUBSTATE() */enum nua_substate { /** Extended state, considered as active. */ nua_substate_extended = nea_extended, /** Embryonic subscription: SUBSCRIBE sent */ nua_substate_embryonic = nea_embryonic, nua_substate_pending = nea_pending, /**< Pending subscription */ nua_substate_active = nea_active, /**< Active subscription */ nua_substate_terminated = nea_terminated /**< Terminated subscription */};/** Return name of subscription state. @NEW_1_12_5. */SOFIAPUBFUN char const *nua_substate_name(enum nua_substate substate);/** Convert string to enum nua_substate. @NEW_1_12_5. */SOFIAPUBFUN enum nua_substate nua_substate_make(char const *sip_substate);#define NUTAG_SUB_EXPIRES(x) nutag_sub_expires, tag_uint_v(x)SOFIAPUBVAR tag_typedef_t nutag_sub_expires;#define NUTAG_SUB_EXPIRES_REF(x) nutag_sub_expires_ref, tag_uint_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_sub_expires_ref;#define NUTAG_NEWSUB(x) nutag_newsub, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_newsub;#define NUTAG_NEWSUB_REF(x) nutag_newsub_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_newsub_ref;#define NUTAG_REFER_EXPIRES(x) nutag_refer_expires, tag_uint_v((x))SOFIAPUBVAR tag_typedef_t nutag_refer_expires;#define NUTAG_REFER_EXPIRES_REF(x) nutag_refer_expires_ref, tag_uint_vr((&(x)))SOFIAPUBVAR tag_typedef_t nutag_refer_expires_ref;#define NUTAG_REFER_WITH_ID(x) nutag_refer_with_id, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_refer_with_id;#define NUTAG_REFER_WITH_ID_REF(x) nutag_refer_with_id_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_refer_with_id_ref;#define NUTAG_MEDIA_FEATURES(x) nutag_media_features, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_media_features;#define NUTAG_MEDIA_FEATURES_REF(x) \ nutag_media_features_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_media_features_ref;#define NUTAG_CALLEE_CAPS(x) nutag_callee_caps, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_callee_caps;#define NUTAG_CALLEE_CAPS_REF(x) \ nutag_callee_caps_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_callee_caps_ref;#define NUTAG_PATH_ENABLE(x) nutag_path_enable, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_path_enable;#define NUTAG_PATH_ENABLE_REF(x) nutag_path_enable_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_path_enable_ref;#define NUTAG_SERVICE_ROUTE_ENABLE(x) nutag_service_route_enable, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_service_route_enable;#define NUTAG_SERVICE_ROUTE_ENABLE_REF(x) \ nutag_service_route_enable_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_service_route_enable_ref;#define NUTAG_MEDIA_ENABLE(x) nutag_media_enable, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_media_enable;#define NUTAG_MEDIA_ENABLE_REF(x) \ nutag_media_enable_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_media_enable_ref;#define NUTAG_OFFER_RECV(x) nutag_offer_recv, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_offer_recv;#define NUTAG_OFFER_RECV_REF(x) nutag_offer_recv_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_offer_recv_ref;#define NUTAG_ANSWER_RECV(x) nutag_answer_recv, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_answer_recv;#define NUTAG_ANSWER_RECV_REF(x) nutag_answer_recv_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_answer_recv_ref;#define NUTAG_OFFER_SENT(x) nutag_offer_sent, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_offer_sent;#define NUTAG_OFFER_SENT_REF(x) nutag_offer_sent_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_offer_sent_ref;#define NUTAG_ANSWER_SENT(x) nutag_answer_sent, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_answer_sent;#define NUTAG_ANSWER_SENT_REF(x) nutag_answer_sent_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_answer_sent_ref;#define NUTAG_DETECT_NETWORK_UPDATES(x) \ nutag_detect_network_updates, tag_int_v(x)SOFIAPUBVAR tag_typedef_t nutag_detect_network_updates;#define NUTAG_DETECT_NETWORK_UPDATES_REF(x) \ nutag_detect_network_updates_ref, tag_int_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_detect_network_updates_ref;#define NUTAG_SHUTDOWN_EVENTS(x) \ nutag_shutdown_events, tag_bool_v(x)SOFIAPUBVAR tag_typedef_t nutag_shutdown_events;#define NUTAG_SHUTDOWN_EVENTS_REF(x) \ nutag_shutdown_events_ref, tag_bool_vr(&(x))SOFIAPUBVAR tag_typedef_t nutag_shutdown_events_ref;/* Pass nua handle as tagged argument */#if SU_INLINE_TAG_CASTsu_inline tag_value_t nutag_handle_v(nua_handle_t *v) { return (tag_value_t)v; }su_inline tag_value_t nutag_handle_vr(nua_handle_t **vp) {return(tag_value_t)vp;}#else#define nutag_handle_v(v) (tag_value_t)(v)#define nutag_handle_vr(v) (tag_value_t)(v)#endif/* Tags for compatibility */#define NUTAG_USE_LEG(x) NUTAG_USE_DIALOG(x)#define NUTAG_USE_LEG_REF(x) NUTAG_USE_DIALOG_REF(x)#define NUTAG_AF(x) SOATAG_AF((x))#define NUTAG_AF_REF(x) SOATAG_AF_REF((x))enum nua_af { nutag_af_any = SOA_AF_ANY, nutag_af_ip4_only = SOA_AF_IP4_ONLY, nutag_af_ip6_only = SOA_AF_IP6_ONLY, nutag_af_ip4_ip6 = SOA_AF_IP4_IP6, nutag_af_ip6_ip4 = SOA_AF_IP6_IP4};#define NUTAG_AF_ANY nutag_af_any#define NUTAG_AF_IP4_ONLY nutag_af_ip4_only#define NUTAG_AF_IP6_ONLY nutag_af_ip6_only#define NUTAG_AF_IP4_IP6 nutag_af_ip4_ip6#define NUTAG_AF_IP6_IP4 nutag_af_ip6_ip4#define NUTAG_MEDIA_ADDRESS(x) SOATAG_ADDRESS((x))#define NUTAG_MEDIA_ADDRESS_REF(x) SOATAG_ADDRESS_REF((x))#define NUTAG_HOLD(x) SOATAG_HOLD((x) ? "*" : NULL)#define NUTAG_ACTIVE_AUDIO(x) SOATAG_ACTIVE_AUDIO((x))#define NUTAG_ACTIVE_AUDIO_REF(x) SOATAG_ACTIVE_AUDIO_REF((x))#define NUTAG_ACTIVE_VIDEO(x) SOATAG_ACTIVE_VIDEO((x))#define NUTAG_ACTIVE_VIDEO_REF(x) SOATAG_ACTIVE_VIDEO_REF((x))#define NUTAG_ACTIVE_IMAGE(x) SOATAG_ACTIVE_IMAGE((x))#define NUTAG_ACTIVE_IMAGE_REF(x) SOATAG_ACTIVE_IMAGE_REF((x))#define NUTAG_ACTIVE_CHAT(x) SOATAG_ACTIVE_CHAT((x))#define NUTAG_ACTIVE_CHAT_REF(x) SOATAG_ACTIVE_CHAT_REF((x))enum { nua_active_rejected = SOA_ACTIVE_REJECTED, nua_active_disabled = SOA_ACTIVE_DISABLED, nua_active_inactive = SOA_ACTIVE_INACTIVE, nua_active_sendonly = SOA_ACTIVE_SENDONLY, nua_active_recvonly = SOA_ACTIVE_RECVONLY, nua_active_sendrecv = SOA_ACTIVE_SENDRECV};#define NUTAG_SRTP_ENABLE(x) SOATAG_SRTP_ENABLE((x))#define NUTAG_SRTP_ENABLE_REF(x) SOATAG_SRTP_ENABLE_REF((x))#define NUTAG_SRTP_CONFIDENTIALITY(x) SOATAG_SRTP_CONFIDENTIALITY((x))#define NUTAG_SRTP_CONFIDENTIALITY_REF(x) SOATAG_SRTP_CONFIDENTIALITY_REF((x))#define NUTAG_SRTP_INTEGRITY_PROTECTION(x) SOATAG_SRTP_INTEGRITY((x))#define NUTAG_SRTP_INTEGRITY_PROTECTION_REF(x) SOATAG_SRTP_INTEGRITY_REF((x))SOFIA_END_DECLS#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -