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

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

系統 2157 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元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 美女被羞羞视频网站在线 | 久久成 | 一级黄色免费毛片 | 草草免费观看视频在线 | 涩涩在线| 99视频这里有精品 | 国产成人精品视频一区 | 国产在线一区二区 | 精品综合久久久久久88小说 | 特级无码a级毛片特黄 | 国产大片91精品免费观看不卡 | 色老头成人免费视频天天综合 | 日韩一区视频在线 | 91尤物视频 | 国产一区二区三区不卡观 | 成人在线视频一区 | 欧美精品在线免费观看 | 国内自拍网红在线综合 | 欧美日韩免费做爰视频 | 国产成人精品日本亚洲网站 | 99久久99这里只有免费费精品 | 咪咪色在线视频 | 久久不雅视频 | 久久中精品中文 | 九九热精品免费视频 | 亚洲精品第一国产麻豆 | 91精品国产免费久久久久久 | 色精品视频 | 成人手机看片 | 久久国产国内精品对话对白 | 夜色资源站www国产在线资源 | 综合色网站 | 亚洲天堂久久新 | 在线播放69热精品视频 | 亚洲一区 中文字幕 | 久久影视免费体验区午夜啪啪 | 日本性网址 | 精品一区二区在线欧美日韩 | 在线视频欧美日韩 | 精品毛片免费看 | 国内在线观看 |