售前電話
135-3656-7657
售前電話 : 135-3656-7657
對于SIP上述業(yè)務(wù)能力的綜合應(yīng)用形式就是SIP應(yīng)用服務(wù)器,它是目前軟交換系統(tǒng)中提及較多的增值業(yè)務(wù)服務(wù)器形式。
我公司提供各行業(yè)SIP服務(wù)器,歡迎咨詢!
一、SIP應(yīng)用服務(wù)器體系結(jié)構(gòu)下圖給出了一種SIP應(yīng)用服務(wù)器的高層體系結(jié)構(gòu)。圖中所示的應(yīng)用服務(wù)器可支持基于SIPServlet、SIP-CGI、CPL等多種方式開發(fā)的業(yè)務(wù)程序。應(yīng)用服務(wù)器最底層是SIP協(xié)議棧,用來提供SIP協(xié)議能力,之上引入了一個規(guī)則引擎,主要用來處理業(yè)務(wù)沖突和事件分發(fā)。SIPServlet引擎提供基千SIPServlet業(yè)務(wù)的運行環(huán)境,SISIP-CGI則提供對基于SISIP-CGI的支待,而CPLServlet是對CPL業(yè)務(wù)腳本的解釋程序。
SIP應(yīng)用服務(wù)器體系結(jié)構(gòu)示意圖
二、SIP應(yīng)用服務(wù)器業(yè)務(wù)開發(fā)方式基于SIP的業(yè)務(wù)創(chuàng)建手段很靈活,甚至終端用戶也可以進行簡單的業(yè)務(wù)定制和創(chuàng)建。為了加快業(yè)務(wù)創(chuàng)建,IETF為SIP應(yīng)用的開發(fā)人員提供了兩類主要的業(yè)務(wù)開發(fā)技術(shù)。
一類是CPL(CallProcessingLanguage,呼叫處理語言),它是由IETF的IPTEL工作組制定的一種基于XML(ExtensibleMarkupLanguage,擴展標(biāo)記語言)的非常簡單的腳本語言,主要用來描述和控制個人化的Internet電話業(yè)務(wù)(包括呼叫策略路由、呼叫篩選、呼叫日志等業(yè)務(wù))。
CPL的功能較弱,被設(shè)計成一種靜態(tài)的、基于文本的、非遞歸的語言,采用XML結(jié)構(gòu)描述如何對呼叫請求消息選擇路由,不支持用戶定義的變量,能夠保證開發(fā)人員編寫的業(yè)務(wù)邏輯不會對應(yīng)用服務(wù)器造成破壞,因此一般提供給可信度較低的終端用戶或第三方開發(fā)人員使用。開發(fā)人員可以在瀏覽器上編輯CPL腳本,并通過多種方式,如Web文件上載、SIP注冊消息載荷、Java遠程方法調(diào)用(RMI入簡單網(wǎng)絡(luò)管理協(xié)議(SNMP入輕量級目錄訪問協(xié)議(LDAP)等,將腳本傳輸?shù)絊IP應(yīng)用服務(wù)器。SIP應(yīng)用服務(wù)器將對腳本作者進行認(rèn)證,并在腳本提交期間和運行時自動驗證腳本的安全。
另一類是SIP-CGICCommonGatewayInterface,公共網(wǎng)關(guān)接口)和SIPServlets,并制定了SIP-CGI和SIPServletAPI規(guī)范。這兩種技術(shù)功能較強,但使用不當(dāng)會給應(yīng)用服務(wù)器帶來不安全的因素,一般是針對可信度較高的業(yè)務(wù)開發(fā)人員,比如運營商自己或授權(quán)的第三方業(yè)務(wù)開發(fā)商。
SIP-CGI現(xiàn)行的超文本傳輸協(xié)議公共網(wǎng)關(guān)接口(HTTP-CGD上為Web環(huán)境創(chuàng)建的API,它重用了很多HTTP-CGI的機制、設(shè)施和工具。SIP-CGI允許作者使用抽象報告語言(Perl)、工具命令語言(Tel)、VB腳本或其他可選的腳本描述語言來創(chuàng)建CGI腳本。與CPL相比,CGI是一種更&級&API,使開發(fā)人員能夠看到網(wǎng)絡(luò)內(nèi)部協(xié)議。因此,SIP-CG!是針對可信任用戶的。SIP的注冊消息也能夠被用作將CGI腳本動態(tài)上載到應(yīng)用服務(wù)器的傳送機制。
由SUN公司提出的JavaServlet是計算機網(wǎng)絡(luò)中最有影響的腳本技術(shù),廣泛應(yīng)用于Internet網(wǎng)絡(luò)業(yè)務(wù)。SIPServlet在很大程度上采用了JavaServlet的概念和原理。Servlet非常類似于CGI的概念,有所不同的是在Servlet中,SIP消息是作為一個對象被傳遞到Servlet引擎中,并且運行千Java虛擬機OVM)上。實際上,SIPServlet就是一大塊Java代碼,能夠和SIP服務(wù)器交互,能夠以某種方式控制或影響呼叫處理。SIPServlet可以決定如何響應(yīng)消息,這和CGIAPI的處理過程非常類似。SIPServlet可以在SIP消息體中傳送,如"INVITE"消息。
另外,通過在SIP應(yīng)用服務(wù)器中嵌入Parlay網(wǎng)關(guān)功能,還可以對外提供基千ParlayAPI/ParlayXAPI的業(yè)界標(biāo)準(zhǔn)的應(yīng)用編程接口,供第三方業(yè)務(wù)開發(fā)商方便迅速地開發(fā)出新的增值業(yè)務(wù)。
三、SIP應(yīng)用服務(wù)器業(yè)務(wù)執(zhí)行方式如上小節(jié)所述,SIP應(yīng)用服務(wù)器在提供業(yè)務(wù)時,需要結(jié)合服務(wù)器擴展和協(xié)議擴展兩種方式。SIP應(yīng)用服務(wù)器提供網(wǎng)絡(luò)業(yè)務(wù)的基本方法就是以某種方式在應(yīng)用服務(wù)器中置入控制程序,其執(zhí)行由收到的SIP消息觸發(fā),然后對指定的呼叫進行特殊的轉(zhuǎn)發(fā)處理,以實現(xiàn)諸如呼叫轉(zhuǎn)移、呼叫篩選等基本補充業(yè)務(wù)。