亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

FS SIP呼叫的消息線程和狀態機線程

系統 2407 0

THREAD

當收到一次呼叫的時候, FS 會在 TU 層創建兩個線程,一個線程為狀態機線程,另外一個為消息線程。狀態機線程通過 switch_core_session_thread_launch創建,顧名思義其作用是不斷的檢查channel 的狀態,并進行處理。以下為詳細處理過程。

狀態機的執行機制:

2 個回調函數

分別為:

const?switch_state_handler_table_t?*driver_state_handler?=?NULL;

const?switch_state_handler_table_t?*application_state_handler?=?NULL;

?

下面為具體的代碼分析:

FS 里面有大量的結構體,其變量的類型為函數指針。然后定義此結構,直接使用全局函數名稱進行初始化。達到回調的效果。

例:

結構體

struct?switch_state_handler_table?{

/*!?executed?when?the?state?changes?to?init?*/

switch_state_handler_t?on_init;

/*!?executed?when?the?state?changes?to?routing?*/

switch_state_handler_t?on_routing;

。。。。/ 這里只顯示部分

};

全局結構變量

switch_state_handler_table_t?sofia_event_handlers?=?{

/*.on_init?*/?sofia_on_init,

/*.on_routing?*/?sofia_on_routing,

。。。

};

通過sofia_event_handlers 即可對所有的函數進行調用。

?

通過宏定義進行回調

#define?STATE_MACRO(__STATE,?__STATE_STR)??do{....}while(...)

?

狀態機的回調過程,下圖:

?

??概括為:

1、根據狀態機的狀態執行 mod_sofia 中對應的回調函數

2、根據狀態機的狀態執行 application core 設置的對應的回調函數

3、如果狀態沒有發生改變根據狀態機的狀態執行對應的 standard 函數

?

l?狀態機狀態一覽

typedef?enum?{

CS_NEW,

CS_INIT,

CS_ROUTING,

CS_SOFT_EXECUTE,

CS_EXECUTE,

CS_EXCHANGE_MEDIA,

CS_PARK,

CS_CONSUME_MEDIA,

CS_HIBERNATE,

CS_RESET,

CS_HANGUP,

CS_REPORTING,

CS_DESTROY,

CS_NONE

}?switch_channel_state_t;

以上為呼叫過程中的所有狀態機。其中標注藍色的狀態會根據當前狀態執行狀態機函數。

修改 channel 狀態

channel 的狀態發生改變,進行修改時,會進行喚醒動作,把之前進入 sleep session 線程喚醒。然后從新執行狀態機。

?

另外一個線程為消息線程,其功能為不斷的從呼叫對應的消息隊列里面取出消息,并進行處理,我在 SESSION 文檔里面有過描述,會創建一個消息隊列。

消息的處理會在消息隊列里面進行描述。這里不再消息講述。

FS SIP呼叫的消息線程和狀態機線程


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 中文字幕在线日韩 | 欧美精品成人一区二区视频一 | 毛片女女女女女女女女女 | 99视频在线免费 | 99这里只精品热在线获取 | 天天干影院| 国产欧洲亚洲 | 久久精品影院一区二区三区 | 久草国产视频 | 伊人久热这里只精品视频 | 妖精视频一区二区三区 | 草草影院国产 | 99免费看| 欧美一级毛片高清毛片 | 精品国产一区二区三区四区色 | 国产精品久久久久久久免费大片 | 久久这里只有精品6 | 婷综合 | 欧美成人xx大片 | 久久精品国产国产 | 亚洲欧美另类日韩 | 欧美亚洲图片 | 这里只有精品视频在线 | 黄黄视频在线观看 | 国产精品公开免费视频 | 四虎在线观看网址 | 亚洲最新视频在线观看 | 久久99精品久久久久久野外 | 精品国产乱码一区二区三区麻豆 | 奇米狠狠 | 久久免费观看国产99精品 | 久久奇米 | 久久精品国产99久久3d动漫 | 四虎影院网址大全 | 白蛇缘起3免费观看 | 视频在线观看入口一二三2021 | 久久大香伊蕉在人线国产昨爱 | 免费人成激情视频在线观看冫 | 国产一区二区三区在线观看免费 | 午夜国产精品久久久久 | 久青草国产手机视频免费观看 |