原创 OpenSIPS 3.1 開發手冊(三)--鎖及定時器API
https://www.opensips.org/Documentation/Development-Manual 目錄 8. 鎖API 8.1 單鎖API 8.2 套鎖API 8.3 讀寫鎖API 9. 定時器API 8.
原创 OpenSIPS 3.1 開發手冊(四)-- 管理接口
https://www.opensips.org/Documentation/Development-Manual 目錄 10. 管理接口 API 11. 統計API 10. 管理接口 API 管理接口(MI)是一個
原创 OpenSIPS 3.1 開發手冊(六)-- BIN Interface API
https://www.opensips.org/Documentation/Development-Manual 15. BIN Interface API Binary Internal Interface是一種Op
原创 OpenSIPS 3.1 開發手冊(二)--SIP消息及Opensips配置文件
https://www.opensips.org/Documentation/Development-Manual 目錄 5. 改變SIP 消息 5.1 SIP 消息Lump 5.2 SIP 應答Lumps 6. 擴展OpenSI
原创 FreeSwitch呼出流程分析
爲了簡單起見,用下面的fs cli命令發起一路單邊外呼: originate sofia/192.168.1.8/1000 &playback(ivr/8000/ivr-welcome_to_freeswitch.wav
原创 FreeSwitch呼入處理流程
爲了簡單起見,本文分析一個單邊呼叫。讓終端呼入到FS,然後播放一個文件就退出,不執行FS的呼出動作。參考撥號方案: <extension name="fs_one_way_inbound"> <con
原创 FreeSwitch狀態機靜態接口分析
本文從靜態數據結構的視角描述FreeSwitch的狀態機。 FreeSwitch core實現了一個有限狀態機。每一路呼叫的一條腿,都由一個狀態機實例維護。狀態機定義接口在freeswitch-1
原创 FreeSwitch Sofia模塊加載過程
模塊加載入口函數mod_sofia_load(),首先一系列switch_event_reserve_subclass()調用,註冊事件類型。然後調用switch_queue_create()建立三個消息隊列。
原创 FreeSwitch模塊加載過程
本文基於FreeSwitch V1.8.7分析。 首先是模塊接口定義: 類型定義: 接口定義於\freeswitch-1.8.7\src\include\switch_types.h ty
原创 CentOS8 安裝FreeSwitch的RPM源設置
FS官方在1.6版本時,針對CentOS6有一個依賴解決方案的,在CentOS 7 64位也是可以工作的。 到了CentOS8,這個已經不適用了。官方似乎沒有找到CentOS8的更新。感謝大神提供的另一個源
原创 Sofia "nua"模塊--高層UA庫
nua 模塊包含UA庫的實現代碼,它關心SIP UA的基本功能。它的功能包括呼叫話務管理、消息,及事件檢索。 概述 NUA API爲高層應用程序提供了一個透明的,完全控制的SIP協議引擎。NUA在現有的事
原创 Sofia的同步與多線程
本文介紹Sofia的同步與多線程接口。 Sofia工具庫提供了簡單的,不依賴操作系統的同步接口。同步接口包含用於管理 事件、消息、時間和多線程的原語。 克隆對象 通過克隆,可以把進程分爲多
原创 windows 安裝vim-plug
安裝vim-plug 前提是已經安裝好VIM,我本地安裝的是VIM8.2,缺省安裝路徑 首先把插件克隆到本地(可以使用任何自己熟悉的工具): 我用的是git bash CLI git clo
原创 Sofia內存管理
本文簡要介紹Sofia所使用的home-based內存管理方式。 源文件 文件 su_alloc.h 內存管理接口定義 文件 su_alloc_stat.h 內存管理統計信息 函數 char * su
原创 Sofia 棧的su模塊
模塊信息 su 模塊包含一個簡單的,可移植的socket/時間/同步庫,可用於Sofia 通信軟件的開發。 作者聯繫方式: Pekka Pessi <[email protected]