




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、Pjsua 開發(fā)指南 PJSUA 開發(fā)指南版權(quán)保留 可以無限分發(fā) 禁止修改!關(guān)于 PJSIP:PJSIP 是一個小巧而性能優(yōu)異的協(xié)議棧。請訪問: HYPERLINK / 獲得更多信息。關(guān)于本文檔:這是一份自由文檔。每一個人都有權(quán)限按原樣(verbatim copies)復(fù)制與分發(fā)此文檔,但不允許修改。PJSUA API高級軟電話的 API為構(gòu)建 SIP UA 應(yīng)用而設(shè)計的具有高水平的 API。模塊 HYPERLINK l _bookmark0 PJSUA-API 的基本 API基本應(yīng)用程序的創(chuàng)建、初始化、日志配置等。 HYPERLINK l _bookmark1 PJSUA-API 的信令傳輸
2、管理 SIP 傳輸?shù)?API。 HYPERLINK l _bookmark2 PJSUA-API 的賬戶管理PJSUA 帳戶的管理。 HYPERLINK l _bookmark3 PJSUA-API 呼叫管理呼叫操作。 HYPERLINK l _bookmark4 PJSUA-API 的好友、用戶狀態(tài)和即時消息好友管理,好友的狀態(tài)和即時消息。 HYPERLINK l _bookmark5 PJSUA-API 的媒體操作媒體操作。詳細(xì)說明一個為 C / C + +編程提供的 SIP 用戶代理 APIPJSUA-API 是構(gòu)建 SIP 多媒體用戶代理應(yīng)用而提供的非常高水平的 API。它把信令和媒體
3、功能包裝在一起放入一個易于使用的調(diào)用的 API 中,提供帳戶管理,好友管理,狀態(tài),即時消息以及多媒體功能例如會議、文件流、本地回放、錄音等。C/ C + +綁定應(yīng)用程序必須與 PJSUA-lib 鏈接來使用這些 API。此外,該庫依賴于以下庫:pjsip-ua, pjsip-simple, pjsip-core, pjmedia,pjmedia-codec, pjlib-util,pjlib,應(yīng)用程序還必須鏈接這些庫。有關(guān)詳細(xì)信息,請參閱入門 HYPERLINK /using.htm Getting Started with PJSIP。pjsua_samples提供了一些例程: 例程:Sim
4、ple PJSUA很簡單的 SIP 用戶代理,具有注冊、打電話和媒體建立的功能,使用 PJSUA 的API,在 200 行代碼內(nèi)實現(xiàn)。PJSUA這是 PJSIP 協(xié)議和 PJMEDIA 的參考實現(xiàn)。 PJSUA 是基于控制臺的應(yīng)用程序,設(shè)計簡單、易讀,但功能強(qiáng)大,足以體現(xiàn) PJSIP 和 PJMEDIA 提供的所有功能。使用 PJSUA API關(guān)于如何創(chuàng)建和初始化 API 請參閱 PJSUA-API Basic API。PJSUA-API Basic APIPJSUA API - 高級軟電話的 API基本的應(yīng)用程序的創(chuàng)建、初始化,日志配置等。數(shù)據(jù)結(jié)構(gòu)struct HYPERLINK /pjsi
5、p/docs/html/structpjsua_logging_config.htm pjsua_logging_configstruct HYPERLINK /pjsip/docs/html/structpjsua_mwi_info.htm pjsua_mwi_infostruct HYPERLINK /pjsip/docs/html/structpjsua_reg_info.htm pjsua_reg_infostruct HYPERLINK /pjsip/docs/html/structpjsua_callback.htm pjsua_callbackstruct HYPERLINK /
6、pjsip/docs/html/structpjsua_config.htm pjsua_configstruct HYPERLINK /pjsip/docs/html/structpjsua_msg_data.htm pjsua_msg_datastruct HYPERLINK /pjsip/docs/html/structpj_stun_resolve_result.htm pj_stun_resolve_result定義#define HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gac41e2f15f0fdc3174bbfb
7、e5da3be28fb PJSUA_INVALID_ID (-1)#define HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga4bcd5546337e1b90d3f5c0c01a1a5d45 PJSUA_DEFAULT_USE_SRTP HYPERLINK /pjmedia/docs/html/group_PJMEDIA_TRANSPORT_SRTP.htm l gga52f4c561c77ebd7a992feefc77624aceaf19b573266ffd49695cd8a4ac8384b09 PJMEDIA_SRTP_D
8、ISABLED#define HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga6f0d4739693edee4ab05b6c1f30d99af PJSUA_DEFAULT_SRTP_SECURE_SIGNALING 1#define HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga70119f7a4c72abf354039283ecac7e83 PJSUA_ADD_ICE_TAGS 1#define HYPERLINK /pjsip/docs/html/group_P
9、JSUA_LIB_BASE.htm l gae98e85eb09594bd57357ab758b7599ae PJSUA_ACQUIRE_CALL_TIMEOUT 2000#define HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gad1f797eedcbfafd4117b6f5443a43de2 pjsip_cred_dup pjsip_cred_info_dupTypedefstypedef HYPERLINK /pjlib/docs/html/group_PJ_THREAD.htm l gab600dc33a20a0f36
10、550a4538506d020e int HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gad4eb99a78c98ddbd83aecf7e933fc684 pjsua_call_idtypedef HYPERLINK /pjlib/docs/html/group_PJ_THREAD.htm l gab600dc33a20a0f36550a4538506d020e int HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga01a78e17d7787f7e0ea5efd24
11、0f3e427 pjsua_acc_idtypedef HYPERLINK /pjlib/docs/html/group_PJ_THREAD.htm l gab600dc33a20a0f36550a4538506d020e int HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga852998f2b5a6f0ba5fa9da27dfd3eb84 pjsua_buddy_idtypedef HYPERLINK /pjlib/docs/html/group_PJ_THREAD.htm l gab600dc33a20a0f36550a45
12、38506d020e int HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga266a56483961431df7a5ebae457b9f3f pjsua_player_idtypedef HYPERLINK /pjlib/docs/html/group_PJ_THREAD.htm l gab600dc33a20a0f36550a4538506d020e int HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gad050f73ecac9a0ebbbcfc029ae483
13、118 pjsua_recorder_idtypedef HYPERLINK /pjlib/docs/html/group_PJ_THREAD.htm l gab600dc33a20a0f36550a4538506d020e int HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gaf5d44947e4e62dc31dfde88884534385 pjsua_conf_port_idtypedefvoid(* HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gac1ee03
14、23b0cc53a373158212c0a30eb2 pj_stun_resolve_cb )(const HYPERLINK /pjsip/docs/html/structpj_stun_resolve_result.htm pj_stun_resolve_result *result)枚舉enum HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gac300b9e3b2eb52a993d59217595f7be4 pjsua_create_media_transport_flag HYPERLINK /pjsip/docs/htm
15、l/group_PJSUA_LIB_BASE.htm l ggac300b9e3b2eb52a993d59217595f7be4a33025ff0fb76690e70b7fc3cb3641ceb PJSUA_MED_TP_CLOSE_MEMBER = 1 enum HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gaf352829cc383112c4ce4da58a4d0b37e pjsua_sip_timer_use HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ggaf
16、352829cc383112c4ce4da58a4d0b37ea09c4a257587c997090586f21b74e247f PJSUA_SIP_TIMER_INACTIVE, HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ggaf352829cc383112c4ce4da58a4d0b37ea59ad155a340cbf54e8a18b605160de04 PJSUA_SIP_TIMER_OPTIONAL, HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ggaf35
17、2829cc383112c4ce4da58a4d0b37ea495ce8889f33ebd93e57957b3d1ca6e0 PJSUA_SIP_TIMER_REQUIRED, HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ggaf352829cc383112c4ce4da58a4d0b37ea77a6f622aa35857b56cc9b8099c5b0a3 PJSUA_SIP_TIMER_ALWAYS enum HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga3f9f
18、b347a70f9c51049836fd606883af pjsua_100rel_use HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gga3f9fb347a70f9c51049836fd606883afa16df0d21b150defc3be5dc9fd11e7567 PJSUA_100REL_NOT_USED, HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gga3f9fb347a70f9c51049836fd606883afa3430f88686b97c4722
19、c64e99a0fd7ca0 PJSUA_100REL_MANDATORY, HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gga3f9fb347a70f9c51049836fd606883afa75a2811c09556b635be67f0920a85898 PJSUA_100REL_OPTIONAL enum HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gafbe98339390b11b2e248d9420a2ed499 pjsua_destroy_flag HYP
20、ERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ggafbe98339390b11b2e248d9420a2ed499a6b2eb1481899082e022534530bee9db2 PJSUA_DESTROY_NO_RX_MSG=1, HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ggafbe98339390b11b2e248d9420a2ed499a299b2522628f7e9d6a9f94124eadcc28 PJSUA_DESTROY_NO_TX_MSG = 2, H
21、YPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ggafbe98339390b11b2e248d9420a2ed499af884d2e4c0de1c3711595c89a212a9b3 PJSUA_DESTROY_NO_NETWORK 功能函數(shù)void HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga9c0ad2b8e775b5ea692c8db4b399846b pjsua_logging_config_default ( HYPERLINK /pjsip/docs/ht
22、ml/structpjsua_logging_config.htm pjsua_logging_config *cfg)void HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gaad41d40cd8cb3462bdd9f5a331c476c9 pjsua_logging_config_dup ( HYPERLINK /pjlib/docs/html/structpj_pool_t.htm pj_pool_t *pool, HYPERLINK /pjsip/docs/html/structpjsua_logging_config.h
23、tm pjsua_logging_config*dst, const HYPERLINK /pjsip/docs/html/structpjsua_logging_config.htm pjsua_logging_config *src)void HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga473e1af0ea5c99c4412e5b0f7ff73c09 pjsua_config_default ( HYPERLINK /pjsip/docs/html/structpjsua_config.htm pjsua_config *
24、cfg)void HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga918c1b4f5cdf1ec607d0fdb9538c16a8 pjsua_config_dup ( HYPERLINK /pjlib/docs/html/structpj_pool_t.htm pj_pool_t *pool, HYPERLINK /pjsip/docs/html/structpjsua_config.htm pjsua_config *dst, const HYPERLINK /pjsip/docs/html/structpjsua_confi
25、g.htm pjsua_config *src)void HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gac5d917f5344530d8eb3442450ddccd2d pjsua_msg_data_init ( HYPERLINK /pjsip/docs/html/structpjsua_msg_data.htm pjsua_msg_data *msg_data) HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e
26、 pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga2bb341e9b189b6716d146519f84e0d72 pjsua_create (void) HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga72ccd5cc7dbf6f26b4ffedc0d97
27、28a2d pjsua_init (const HYPERLINK /pjsip/docs/html/structpjsua_config.htm pjsua_config *ua_cfg, const HYPERLINK /pjsip/docs/html/structpjsua_logging_config.htm pjsua_logging_config*log_cfg, const HYPERLINK /pjsip/docs/html/structpjsua_media_config.htm pjsua_media_config *media_cfg) HYPERLINK /pjlib/
28、docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga82f9b09d515c56288a2ad11f4fbdae3f pjsua_start (void) HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t HYPERLINK /pjsip/do
29、cs/html/group_PJSUA_LIB_BASE.htm l ga9eb04bbf136ed8d2f528db0a739482db pjsua_destroy (void) HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga071d2b52e7455f80508afea16cbb7af1 pjsua_destroy2 (unsigned
30、HYPERLINK /pjlib/docs/html/group_PJ_SYS_INFO.htm l gae4737d316c3696dc34a85aa1c09dab99 flags) HYPERLINK /pjlib/docs/html/group_PJ_THREAD.htm l gab600dc33a20a0f36550a4538506d020e int HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga9353166bfa640b62b3f33f752e07dda6 pjsua_handle_events (unsigned
31、msec_timeout) HYPERLINK /pjlib/docs/html/structpj_pool_t.htm pj_pool_t * HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gab6fda3eb1ff0817460db155ad91fcf60 pjsua_pool_create (const char *name, HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l ga9fdb3ceb491cd888cd30ca30d78026e8 pj_size_t init_siz
32、e, HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l ga9fdb3ceb491cd888cd30ca30d78026e8 pj_size_tincrement) HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gab170aa6d3fe1195b7ed21b6afded75e1 pjsua_reco
33、nfigure_logging (const HYPERLINK /pjsip/docs/html/structpjsua_logging_config.htm pjsua_logging_config *c) HYPERLINK /pjsip/docs/html/sip_types_8h.htm l a2b184bd797bb08929129539d9dddd329 pjsip_endpoint* HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gad5963734b4bf5ca337d0f70a9861f3d4 pjsua_get
34、_pjsip_endpt (void) HYPERLINK /pjmedia/docs/html/group_PJMEDIA_TYPES.htm l ga7c3623d8e90e22b7184a6e42dc24f6f5 pjmedia_endpt* HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga76539759eb013ca275c7092df5c3d060 pjsua_get_pjmedia_endpt (void) HYPERLINK /pjlib/docs/html/structpj_pool_factory.htm pj
35、_pool_factory* HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga287942c06e12a470a567bccc090a36e9 pjsua_get_pool_factory (void) HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga486165069204c0d
36、47a565d714638d5bd pjsua_detect_nat_type (void) HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gac7fa60c2699aebe43e8b20aa68a7042f pjsua_get_nat_type ( HYPERLINK /pjnath/docs/html/group_PJNATH_NAT_DET
37、ECT.htm l ga07c3bec1eee4e02ea2fd5f03299d913d pj_stun_nat_type *type) HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga28de9872f90f7ef1dc4f000066f8bd6d pjsua_resolve_stun_servers(unsignedcount, HYPER
38、LINK /pjlib/docs/html/structpj_str_t.htm pj_str_tsrv, HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l ga1dc7a356fb36bd2dee2bc7d6c7e817e4 pj_bool_t wait, void *token, HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gac1ee0323b0cc53a373158212c0a30eb2 pj_stun_resolve_cb cb) HYPERLINK /pjlib/docs/
39、html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga45e753541e4ec870e60d41b49c008ff4 pjsua_cancel_stun_resolution (void *token, HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l ga1dc7a356fb36bd2dee2bc7d6c7e817e4 pj_bool_t no
40、tify_cb) HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gad6f3f10da98b76dc9d4fde50d923615f pjsua_verify_sip_url (const char *url) HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab45
41、80509dbf79200e pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga69049800d83c9f4518af6bf15ddee62a pjsua_verify_url (const char *url) HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l
42、ga4b3f7529ece820df563c4b1a4f4a649b pjsua_schedule_timer ( HYPERLINK /pjlib/docs/html/structpj_timer_entry.htm pj_timer_entry *entry, const HYPERLINK /pjlib/docs/html/structpj_time_val.htm pj_time_val*delay)void HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gab3a4cecd850753caf221673319c2f38c
43、pjsua_cancel_timer ( HYPERLINK /pjlib/docs/html/structpj_timer_entry.htm pj_timer_entry *entry)void HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga3a697ba03ae9cd18df552143b770f957 pjsua_perror (const char *sender, const char *title, HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba316
44、7bd2a2ab4580509dbf79200e pj_status_tstatus)void HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga8e4a54271a326cad73969a6fe6ad7548 pjsua_dump ( HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l ga1dc7a356fb36bd2dee2bc7d6c7e817e4 pj_bool_t detail)詳細(xì)說明基礎(chǔ)的 PJSUA-API 控制PJSUA 的創(chuàng)作、初始化、啟動,同時還提供各種輔助功能。使
45、用 PJSUA 庫創(chuàng)建 PJSUA在任何事情之前,應(yīng)用程序必須調(diào)用 pjsua_create()創(chuàng)建 PJSUA。除其他事項外,這將初始化 PJLIB,PJLIB-util,并創(chuàng)建一個 SIP endpoint,在調(diào)用任何 PJLIB 功能之前這是至關(guān)重要的一步。這個函數(shù)被調(diào)用后,應(yīng)用程序可以創(chuàng)建一個內(nèi)存池(使用 pjsua_pool_create(),并從命令行或文件中讀取配置,初始化 PJSUA 如下。初始化 PJSUA創(chuàng)建 PJSUA 后,應(yīng)用程序可以通過調(diào)用 pjsua_init()初始化 PJSUA。如果應(yīng)用程序要設(shè)置它們,這個函數(shù)有幾個參數(shù)可選。PJSUA-LIB 初始化(C 語言
46、)初始化 PJSUA 的示例(C 代碼): #include #define THIS_FILEFILE static HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t app_init(void) HYPERLINK /pjsip/docs/html/structpjsua_config.htm pjsua_configua_cfg; HYPERLINK /pjsip/docs/html/structpjsua_logging_config.htm pj
47、sua_logging_config log_cfg; HYPERLINK /pjsip/docs/html/structpjsua_media_config.htm pjsua_media_configmedia_cfg; HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t status;/ 再做任何事情之前必須創(chuàng)建 PJSUA! status = HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l
48、ga2bb341e9b189b6716d146519f84e0d72 pjsua_create();if (status != PJ_SUCCESS) HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga3a697ba03ae9cd18df552143b770f957 pjsua_perror(THIS_FILE, Error initializing pjsua, status); return status;/ 使用默認(rèn)配置 HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l
49、 ga473e1af0ea5c99c4412e5b0f7ff73c09 pjsua_config_default(&ua_cfg); HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga9c0ad2b8e775b5ea692c8db4b399846b pjsua_logging_config_default(&log_cfg); HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_MEDIA.htm l ga6e52551f2fd68d2d2c8aa1e233579670 pjsua_media_co
50、nfig_default(&media_cfg);/ 應(yīng)用程序若要被重寫,則回調(diào) pjsua_config: ua_cfg. HYPERLINK /pjsip/docs/html/structpjsua_config.htm l a6d1dc16d2a378d2cea6bd6e9a3aa64c5 cb HYPERLINK /pjsip/docs/html/structpjsua_callback.htm l a402dc4b89c409507fa69b54494efef10 .on_incoming_call = . ua_cfg. HYPERLINK /pjsip/docs/html/str
51、uctpjsua_config.htm l a6d1dc16d2a378d2cea6bd6e9a3aa64c5 cb HYPERLINK /pjsip/docs/html/structpjsua_callback.htm l a06e6135aeaa81b32fdc66fa603a0546c .on_call_state = ./ 自定義其他設(shè)置或用配置文件初始化它們./ 初始化 pjsuastatus = HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga72ccd5cc7dbf6f26b4ffedc0d9728a2d pjsua
52、_init(&ua_cfg, &log_cfg, &media_cfg); if (status != PJ_SUCCESS) HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga3a697ba03ae9cd18df552143b770f957 pjsua_perror(THIS_FILE, Error initializing pjsua, status); return status;.其他初始化PJSUA 初始化后,應(yīng)用程序?qū)⑼ǔP枰?想要執(zhí)行下列任務(wù):使用 pjsua_transport_create()創(chuàng)建 SIP 傳輸。應(yīng)
53、用程序?qū)樗С置總€傳輸類型(例如 UDP、TCP 和TLS)調(diào)用 pjsua_transport_create()。更多信息,請參閱 PJSUA-API 的信令傳輸。使用 pjsua_acc_add()或 pjsua_acc_add_local()創(chuàng)建一個或多個 SIP 帳號。SIP 帳戶用于向 SIP 服務(wù)器注冊。更多信息,請參閱 PJSUA-API 的帳務(wù)管理。使用 pjsua_buddy_add()添加一個或多個好友。更多信息,請參閱 PJSUA-API的好友、用戶狀態(tài)和即時消息。選擇配置聲音設(shè)備,設(shè)置編解碼器,設(shè)置其他媒體。更多信息,請參閱 PJSUA-API的媒體操作。運(yùn)行 PJS
54、UA完成初始化后,應(yīng)用程序必須調(diào)用 pjsua_start()開始 PJSUA。此功能將檢查所有的設(shè)置是否正確配置,如果他們沒有將采用默認(rèn)設(shè)置,或者如果它是無法從丟失的設(shè)置中恢復(fù)則報告錯誤狀態(tài)。大多數(shù)設(shè)置都可以在運(yùn)行時改變。例如,應(yīng)用程序可以在運(yùn)行時添加,修改,或刪除帳戶,好友,或改變媒體設(shè)置。開始 PJSUA 的例子 C 代碼示例代碼:static HYPERLINK /pjlib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t app_run(void) HYPERLINK /pjl
55、ib/docs/html/group_PJ_BASIC.htm l gab43ba3167bd2a2ab4580509dbf79200e pj_status_t status;/ 運(yùn)行 pjsuastatus = HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga82f9b09d515c56288a2ad11f4fbdae3f pjsua_start();if (status != PJ_SUCCESS) HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga9eb04bbf
56、136ed8d2f528db0a739482db pjsua_destroy(); HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga3a697ba03ae9cd18df552143b770f957 pjsua_perror(THIS_FILE, Error starting pjsua, status); return status;/ 循環(huán)執(zhí)行應(yīng)用程序while (1) char choice10;printf(Select menu: ); fgets(choice, sizeof(choice), stdin);.Defin
57、e Documentation#define PJSUA_INVALID_ID (-1)無效 ID#define PJSUA_DEFAULT_USE_SRTP HYPERLINK /pjmedia/docs/html/group_PJMEDIA_TRANSPORT_SRTP.htm l gga52f4c561c77ebd7a992feefc77624aceaf19b573266ffd49695cd8a4ac8384b09 PJMEDIA_SRTP_DISABLED最多代理賬戶的數(shù)目,SRTP 模式下的默認(rèn)值。有效值:PJMEDIA_SRTP_DISABLED,PJMEDIA_SRTP_OPTI
58、ONAL,and PJMEDIA_SRTP_MANDATORY. #define PJSUA_DEFAULT_SRTP_SECURE_SIGNALING 1SRTP 安全信令要求的默認(rèn)值。有效值為:0:SRTP 的不需要安全信號;1:SRTP需要安全傳輸如 TLS;2:SRTP 需要安全的終端到終端傳輸(SIPS)#define PJSUA_ADD_ICE_TAGS 1如果在配置中 ICE 使能,控制 PJSUA-LIB 是否應(yīng)該添加 ICE 媒體功能的標(biāo)簽參數(shù)( ;+sip.ice ) 到聯(lián)系首部,默認(rèn): 1#define PJSUA_ACQUIRE_CALL_TIMEOUT 2000在一次
59、特定呼叫中獲取互斥鎖的超時值默認(rèn): 2000 ms#define pjsip_cred_dup pjsip_cred_info_dup它的實現(xiàn)已經(jīng)被轉(zhuǎn)移至 sip_auth.hTypedef Documentation typedef HYPERLINK /pjlib/docs/html/group_PJ_THREAD.htm l gab600dc33a20a0f36550a4538506d020e int HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l gad4eb99a78c98ddbd83aecf7e933fc684 pjsua
60、_call_id 呼叫標(biāo)識typedef HYPERLINK /pjlib/docs/html/group_PJ_THREAD.htm l gab600dc33a20a0f36550a4538506d020e int HYPERLINK /pjsip/docs/html/group_PJSUA_LIB_BASE.htm l ga01a78e17d7787f7e0ea5efd240f3e427 pjsua_acc_id賬戶標(biāo)識typedef HYPERLINK /pjlib/docs/html/group_PJ_THREAD.htm l gab600dc33a20a0f36550a4538506
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鄉(xiāng)村地基出售合同范本
- 2025年鐵嶺考貨運(yùn)從業(yè)資格證
- 2025年永州貨運(yùn)從業(yè)資格證怎么考試
- 加工合同范本道客
- 買車庫出售合同范本
- it購銷合同范本
- 醫(yī)院業(yè)務(wù)合同范本
- 寫醫(yī)療合同范本
- 加氣塊供應(yīng)合同范本
- 單位更夫合同范本
- 部編高教版2023·職業(yè)模塊 中職語文 2.《寧夏閩寧鎮(zhèn):昔日干沙灘今日金沙灘》 課件
- 心肺復(fù)蘇術(shù)課件2024新版
- 安全環(huán)保職業(yè)健康法律法規(guī)清單2024年
- 秒的認(rèn)識 完整版PPT
- 創(chuàng)新藥產(chǎn)業(yè)鏈研究培訓(xùn)框架
- 燃?xì)鈽I(yè)務(wù)代辦授權(quán)書模板
- (完整PPT)半導(dǎo)體物理與器件物理課件
- 大音希聲話古韻——古琴曲《流水》課件
- 《中國人閱讀書目(三)——中國初中生基礎(chǔ)閱讀書目-導(dǎo)賞手冊》新書簡介2014.8.14 (1)
- 智利國家英文介紹PPT精選文檔
- 金蝶K3 Cloud 產(chǎn)品安裝指南
評論
0/150
提交評論