freeswitch的多租戶模式


概述

freeswitch是一款簡單好用的VOIP開源軟交換平臺。

現(xiàn)在的VOIP服務(wù)越來越傾向于云端服務(wù)暂雹,包括呼叫中心云服務(wù),線路云平臺。

而云平臺對多個客戶的服務(wù)就需要做好隔離田炭,包括數(shù)據(jù)隔離、線路隔離漓柑、服務(wù)隔離等教硫。

freeswitch內(nèi)部的多租戶模式根據(jù)不同用戶SIP域的配置,來實現(xiàn)呼叫的服務(wù)隔離辆布。

環(huán)境

centos:CentOS? release 7.0 (Final)或以上版本

freeswitch:v1.10.7

GCC:4.8.5

多租戶模式

云端的服務(wù)不可能只提供給一個客戶使用瞬矩,如何在服務(wù)上區(qū)分客戶,做到數(shù)據(jù)和資源的隔離锋玲。

服務(wù)中的多租戶模式意味著多個客戶可以同時使用一套服務(wù)景用,但又要求不會互相影響。

對于VOIP服務(wù)來說惭蹂,多租戶代表在整個服務(wù)系統(tǒng)中伞插,多家公司通過一定的規(guī)則實現(xiàn)號碼、路由規(guī)則盾碗、資源的互相隔離媚污,同時又互不影響,最大程度的利用好有限的資源廷雅。

對于云端PBX來說耗美,多個客戶甚至可以使用相同的sip賬號注冊和呼叫,又各自獨立航缀。

fs已經(jīng)實現(xiàn)了通過SIP域的方式商架,達到多租戶模式的效果。

配置方案

復(fù)制并修改注冊端口文件conf/sip_profile/internal5062.xml谬盐,不再強制修改用戶注冊SIP域為"$${domain}"甸私。

<!-- <param name="force-register-domain" value="$${domain}"/> -->

<!-- <param name="force-subscription-domain" value="$${domain}"/> -->

<!-- <param name="force-register-db-domain" value="$${domain}"/> -->

修改sip終端10011賬戶注冊信息,使用“test123.com”的SIP域注冊飞傀。

domain修改為”test123.com”皇型。

domain proxy的send outbound via設(shè)置為”10.55.55.138:5062”。

10011終端的注冊信令如下砸烦。

REGISTER sip:test123.com SIP/2.0

Via: SIP/2.0/UDP 10.9.0.16:14542;branch=z9hG4bK-d87543-ef1e50670e66bb09-1--d87543-;rport

Max-Forwards: 70

Contact: <sip:10011@10.9.0.16:14542;rinstance=1937ab4fc61e1076>

To: "10011"<sip:10011@test123.com>

From: "10011"<sip:10011@test123.com>;tag=0479973d

Call-ID: MzU2MjgzMmI2NWM3ZmM2YTE5YTJmYzZmM2E2NTdlZjM.

CSeq: 1 REGISTER

Expires: 3600

Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO

User-Agent: eyeBeam release 1004p stamp 31962

Content-Length: 0

freeswitch注冊告警信息弃鸦,注冊失敗,因為還沒有設(shè)置”test123.com”對應(yīng)的SIP域信息幢痘。

2022-12-12 16:05:17.568684 [WARNING] sofia_reg.c:2973 Can't find user [10011@test123.com] from 10.9.0.16

You must define a domain called 'test123.com' in your directory and add a user with the id="10011" attribute

and you must configure your device to use the proper domain in it's authentication credentials.

復(fù)制并修改conf/directory/default5062.xml唬格,設(shè)置”test123.com”對應(yīng)的SIP域信息,域用戶的user_context使用test123.com。

<domain name="test123.com">

...

<variables>

? <variable name="user_context" value="test123.com"/>

</variables>

...

? <group name="default">

? ? <users>

? ? ? <X-PRE-PROCESS cmd="include" data="default5062/*.xml"/>

? ? </users>

? </group>

復(fù)制并修改conf/directory/default5062/10011.xml购岗,刪除賬戶默認(rèn)的user_context設(shè)置汰聋,統(tǒng)一使用SIP域設(shè)置的user_context。

刪除行<variable name="user_context" value="default"/>

修改conf/dialplan/test.xml撥號計劃喊积,增加context為test123.com的呼叫流程烹困。

<context name="test123.com">

? ? <extension name="test123">

? ? <condition field="destination_number" expression="^(\d+)$">

? ? ? ? ? ? <action application="bridge" data="user/$1@test123.com"/>

? ? ? ? </condition>

? ? </extension>

</context>

測試

使用10011呼叫1002,測試日志如下乾吻。

2022-12-12 17:29:03.375298 [INFO] mod_dialplan_xml.c:637 Processing 10011 <10011>->1002 in context test123.com

Dialplan: sofia/internal5062/10011@test123.com parsing [test123.com->test123] continue=false

Dialplan: sofia/internal5062/10011@test123.com Regex (PASS) [test123] destination_number(1002) =~ /^(\d+)$/ break=on-false

Dialplan: sofia/internal5062/10011@test123.com Action bridge(user/1002@test123.com)

10011賬戶的呼出流程使用“context test123.com”的撥號計劃髓梅。

總結(jié)

freeswitch可以通過不同的SIP域配置實現(xiàn)多租戶模式,針對云端服務(wù)的用戶配置有一定的參考意義绎签。

多租戶模式的呼出流程通過注冊SIP域?qū)崿F(xiàn)隔離枯饿,回呼流程則需要根據(jù)號碼或端口的方式來區(qū)分目標(biāo)SIP域。

空空如常

求真得真

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末诡必,一起剝皮案震驚了整個濱河市奢方,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌擒权,老刑警劉巖袱巨,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件阁谆,死亡現(xiàn)場離奇詭異碳抄,居然都是意外死亡,警方通過查閱死者的電腦和手機场绿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進店門剖效,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人焰盗,你說我怎么就攤上這事璧尸。” “怎么了熬拒?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵爷光,是天一觀的道長。 經(jīng)常有香客問我澎粟,道長蛀序,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任活烙,我火速辦了婚禮徐裸,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘啸盏。我一直安慰自己重贺,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著气笙,像睡著了一般次企。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上潜圃,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天抒巢,我揣著相機與錄音,去河邊找鬼秉犹。 笑死蛉谜,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的崇堵。 我是一名探鬼主播型诚,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼鸳劳!你這毒婦竟也來了狰贯?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤赏廓,失蹤者是張志新(化名)和其女友劉穎涵紊,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體幔摸,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡摸柄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了既忆。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片驱负。...
    茶點故事閱讀 38,605評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖患雇,靈堂內(nèi)的尸體忽然破棺而出跃脊,到底是詐尸還是另有隱情,我是刑警寧澤苛吱,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布酪术,位于F島的核電站,受9級特大地震影響翠储,放射性物質(zhì)發(fā)生泄漏绘雁。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一彰亥、第九天 我趴在偏房一處隱蔽的房頂上張望咧七。 院中可真熱鬧,春花似錦任斋、人聲如沸继阻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽瘟檩。三九已至抹缕,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間墨辛,已是汗流浹背卓研。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留睹簇,地道東北人奏赘。 一個月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像太惠,于是被迫代替她去往敵國和親磨淌。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容