專利名稱:服務(wù)選擇方法、裝置和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù),尤其涉及一種服務(wù)選擇方法、裝置和系統(tǒng)。
背景技術(shù):
隨著分組技術(shù)的不斷發(fā)展和成熟,通信網(wǎng)絡(luò)從基于電路交換的傳統(tǒng)電信 網(wǎng)絡(luò)向基于分組交換的寬帶電信網(wǎng)絡(luò)的方向發(fā)展。從電路交換到軟交互直至
IP多媒體子系統(tǒng)(IP Multimedia Subsystem,以下簡稱IMS)的發(fā)展吸收 了很多優(yōu)秀的IT技術(shù),如IP技術(shù)、分布式組網(wǎng)技術(shù)、會(huì)話發(fā)起協(xié)議(Session Initiation Protocol,以下簡稱SIP)技術(shù)等等。目前,IMS和因特網(wǎng) (Internet )的融合成為研究和開發(fā)的焦點(diǎn)。其中,網(wǎng)絡(luò)月良務(wù)(Web Services) 是為各個(gè)不同平臺(tái)服務(wù)的一種技術(shù),可以為各個(gè)不同平臺(tái)的不同應(yīng)用系統(tǒng)提 供協(xié)同工作能力,該技術(shù)已成為IMS和Internet的融合中被廣泛研究的對(duì)象 之一。通過IMS網(wǎng)絡(luò)接入Web Services, IMS網(wǎng)絡(luò)可以利用Web Services提 供的各種服務(wù)。然而將其和IMS提供的各種服務(wù)協(xié)同工作,提供組合服務(wù), 以及如何將IMS網(wǎng)絡(luò)或其他通信網(wǎng)絡(luò)的月良務(wù)或能力以Web Services的方式開 放給第三方開發(fā)者,成為目前通信領(lǐng)域被廣泛關(guān)注和研究的目標(biāo)之一。
開放服務(wù)架構(gòu)(Open Service Architecture, OSA) /Parlay是現(xiàn)有技術(shù)中的 一個(gè)研究如何將電信能力通過標(biāo)準(zhǔn)的Web Services接口開放的組織。圖1為 現(xiàn)有技術(shù)中開放服務(wù)系統(tǒng)的架構(gòu)示意圖,如圖1所示,OSA/Parlay分別定義 了客戶應(yīng)用和框架間、客戶應(yīng)用和業(yè)務(wù)能力特征間、框架和業(yè)務(wù)能力特征間 以及框架和企業(yè)經(jīng)營者間的接口 El、 E2、 E3和E4,通過這些開放的標(biāo)準(zhǔn)Web 服務(wù)接口,可以將電信網(wǎng)的服務(wù)或能力提供給外部應(yīng)用。然而,OSA/Parlay 架構(gòu)只建立在單一 網(wǎng)絡(luò)的基礎(chǔ)之上,而實(shí)際應(yīng)用中往往存在多種不同的網(wǎng)絡(luò)
5形態(tài),如IMS網(wǎng)絡(luò)、軟交換網(wǎng)絡(luò)、公共交換電話網(wǎng)絡(luò)(Public Switched Telephone Network,以下筒稱PSTN)等等,而且同一網(wǎng)絡(luò)形態(tài)還會(huì)存在不 同的運(yùn)營商的網(wǎng)絡(luò)。在這種情況下,對(duì)于外部應(yīng)用來說,會(huì)同時(shí)存在多個(gè)相 同的服務(wù)提供,當(dāng)外部應(yīng)用調(diào)用某個(gè)服務(wù)時(shí),采用OSA/Parlay架構(gòu)不能為外 部應(yīng)用調(diào)用的服務(wù)選擇合適的服務(wù)提供,會(huì)為用戶帶來很多不必要的麻煩, 同時(shí)也不能保證服務(wù)的可靠性和有效性。因此,如何為外部應(yīng)用選擇合適的 服務(wù)或能力則成為有待解決的問題。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例在于提供一種服務(wù)選擇方法、裝置和系統(tǒng),能夠依據(jù)策略
為外部應(yīng)用選擇合適的服務(wù),更加方便準(zhǔn)確地調(diào)用通信網(wǎng)服務(wù)。
為了實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供了一種服務(wù)選擇方法,應(yīng)用于開
放服務(wù)架構(gòu),包括
接收外部應(yīng)用發(fā)送的服務(wù)調(diào)用請(qǐng)求消息,在所述月良務(wù)調(diào)用請(qǐng)求消息中攜
帶待調(diào)用服務(wù)的服務(wù)信息;
根據(jù)所述服務(wù)信息獲取所述待調(diào)用服務(wù)對(duì)應(yīng)的策略信息; 根據(jù)所述策略信息選擇一個(gè)服務(wù)提供實(shí)體對(duì)所述服務(wù)進(jìn)行調(diào)用。 本發(fā)明實(shí)施例還提供了一種服務(wù)開放實(shí)體,應(yīng)用于開放服務(wù)架構(gòu),包括 接收模塊,用于接收外部應(yīng)用發(fā)送的服務(wù)調(diào)用請(qǐng)求消息,在所述服務(wù)調(diào)
用請(qǐng)求消息中攜帶待調(diào)用服務(wù)的服務(wù)信息;
獲取模塊,用于根據(jù)所述接收模塊接收的所述服務(wù)信息獲取待調(diào)用服務(wù)
對(duì)應(yīng)的策略信息;
選擇模塊,用于才艮據(jù)所述獲取模塊獲取的所述策略信息選擇一個(gè)服務(wù)提 供實(shí)體對(duì)所述服務(wù)進(jìn)行調(diào)用。
本發(fā)明實(shí)施例還提供了一種策略提供實(shí)體,應(yīng)用于開放服務(wù)架構(gòu),包括 提供模塊,用于向服務(wù)開放實(shí)體提供策略信息。
6本發(fā)明實(shí)施例還提供了一種服務(wù)選擇系統(tǒng),應(yīng)用于開放服務(wù)架構(gòu),包括 服務(wù)開放實(shí)體,用于根據(jù)服務(wù)信息從策略提供實(shí)體獲取待調(diào)用服務(wù)對(duì)應(yīng)
的策略信息,并根據(jù)所述待調(diào)用服務(wù)對(duì)應(yīng)的策略信息選擇一個(gè)服務(wù)提供實(shí)體,
并指示所述服務(wù)提供實(shí)體對(duì)所述服務(wù)進(jìn)行調(diào)用;
所述策略提供實(shí)體,用于向所述服務(wù)開放實(shí)體提供所述策略信息。 本發(fā)明實(shí)施例提供的一種服務(wù)選擇方法、裝置和系統(tǒng),通過接收的服務(wù)
調(diào)用請(qǐng)求消息中攜帶的服務(wù)信息獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息,再根據(jù)策
略信息選擇調(diào)用服務(wù)的服務(wù)提供實(shí)體,實(shí)現(xiàn)了依據(jù)策略為外部應(yīng)用選擇合適
的服務(wù),可以更加方便準(zhǔn)確地調(diào)用通信網(wǎng)的服務(wù)。
圖1為現(xiàn)有技術(shù)中開放服務(wù)系統(tǒng)的架構(gòu)示意圖; 圖2為本發(fā)明服務(wù)選擇方法一實(shí)施例的流程圖; 圖3為本發(fā)明服務(wù)選擇方法另一實(shí)施例的信令圖; 圖4為本發(fā)明服務(wù)開放實(shí)體一實(shí)施例的結(jié)構(gòu)示意圖; 圖5為本發(fā)明服務(wù)開放實(shí)體另一實(shí)施例的結(jié)構(gòu)示意圖; 圖6為本發(fā)明服務(wù)開放實(shí)體另一實(shí)施例的結(jié)構(gòu)示意圖; 圖7為本發(fā)明策略提供實(shí)體一實(shí)施例的結(jié)構(gòu)示意圖; 圖8為本發(fā)明策略提供實(shí)體另一實(shí)施例的結(jié)構(gòu)示意圖; 圖9為本發(fā)明服務(wù)選擇系統(tǒng)實(shí)施例的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
下面通過附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。 圖2為本發(fā)明服務(wù)選擇方法一實(shí)施例的流程圖,如圖2所示,本發(fā)明實(shí) 施例提供的一種服務(wù)選擇方法,具體包括如下步驟
步驟101,接收外部應(yīng)用發(fā)送的服務(wù)調(diào)用請(qǐng)求消息,在服務(wù)調(diào)用請(qǐng)求消
7息中攜帶待調(diào)用服務(wù)的服務(wù)信息。
外部應(yīng)用通過Web Services訪問通信網(wǎng)服務(wù)或能力時(shí),先向服務(wù)開放實(shí) 體發(fā)送一個(gè)服務(wù)調(diào)用請(qǐng)求消息,服務(wù)開放實(shí)體接收外部應(yīng)用發(fā)送的服務(wù)調(diào)用 請(qǐng)求消息,在服務(wù)調(diào)用請(qǐng)求消息中攜帶有待調(diào)用服務(wù)的服務(wù)信息。其中,外 部應(yīng)用可以為任意一個(gè)需要通過Web Services訪問通信網(wǎng)開放月l務(wù)或能力的 應(yīng)用,可以為一個(gè)i殳備、 一個(gè)系統(tǒng),或者設(shè)備或系統(tǒng)中的一個(gè)應(yīng)用程序,如 網(wǎng)頁。服務(wù)開放實(shí)體可以具體為服務(wù)開放功能單元,可以為0SA/Parlay定 義的能力開放網(wǎng)關(guān),也可以為BEA/0racle定義的SDP平臺(tái),或者為其他 以開放的Web Services接口提供通信網(wǎng)能力或服務(wù)的設(shè)備。待調(diào)用的服 務(wù)可以為待調(diào)用的通信網(wǎng)的某個(gè)服務(wù)或能力,即服務(wù)或能力。服務(wù)調(diào)用請(qǐng) 求消息為符合Web Services接口的"SOAP"消息,或者具備具象狀態(tài)傳輸 (Representation State Transfer, REST )風(fēng)才各的消息,例如用戶瀏覽網(wǎng)頁時(shí)向 Web服務(wù)器發(fā)送的"HTTP Get"請(qǐng)求。在服務(wù)調(diào)用請(qǐng)求消息中攜帶的服務(wù)信 息可以為待調(diào)用的服務(wù)的所有相關(guān)信息,例如當(dāng)外部應(yīng)用希望調(diào)用的服 務(wù)為呼叫業(yè)務(wù)時(shí),在外部應(yīng)用向服務(wù)開放實(shí)體發(fā)送的服務(wù)調(diào)用請(qǐng)求消息中 攜帶呼叫服務(wù)信息、呼叫雙方的標(biāo)識(shí)信息等。
步驟102,根據(jù)服務(wù)信息獲取待調(diào)用的服務(wù)對(duì)應(yīng)的策略信息。 服務(wù)開放實(shí)體接收到外部應(yīng)用發(fā)送的服務(wù)調(diào)用請(qǐng)求消息后,根據(jù)該請(qǐng)求 中攜帶的服務(wù)信息獲取待調(diào)用的服務(wù)對(duì)應(yīng)的策略信息。服務(wù)開放實(shí)體可以在 調(diào)用服務(wù)之前獲取策略信息,也在調(diào)用服務(wù)時(shí)再獲取策略信息。其中,服務(wù) 開放實(shí)體獲取策略信息的方式又包括主動(dòng)獲取和被動(dòng)獲取兩種方式。由于策 略信息可以為策略提供實(shí)體預(yù)先配置的,策略提供實(shí)體也可以不對(duì)策略信息 進(jìn)行預(yù)先配置,其中,策略提供實(shí)體可以具體為策略提供功能單元。當(dāng)服務(wù) 開放實(shí)體在調(diào)用服務(wù)之前獲取策略信息時(shí),如果策略提供實(shí)體預(yù)先配置了策 略信息,則服務(wù)開放實(shí)體可以通過被動(dòng)接受策略提供實(shí)體下發(fā)策略信息的方 式獲取策略信息;如果策略提供實(shí)體未對(duì)策略信息進(jìn)行預(yù)先配置,則服務(wù)開放實(shí)體也可以通過自身主動(dòng)向策略提供實(shí)體發(fā)送策略請(qǐng)求來獲取策略信息。 當(dāng)服務(wù)開放實(shí)體在調(diào)用服務(wù)時(shí)獲取策略信息時(shí),如果策略提供實(shí)體預(yù)先配置 了策略信息,則服務(wù)開放實(shí)體可以通過被動(dòng)接受策略提供實(shí)體下發(fā)策略信息
的方式獲取策略信息;如果策略提供實(shí)體未對(duì)策略信息進(jìn)行預(yù)先配置,則服 務(wù)開放實(shí)體可以通過主動(dòng)向策略提供實(shí)體發(fā)送策略請(qǐng)求來獲取策略信息。
策略信息包括所述外部應(yīng)用的發(fā)起方的簽約信息、所述服務(wù)涉及通信網(wǎng) 用戶(subscriber)的網(wǎng)絡(luò)歸屬信息和所述服務(wù)提供實(shí)體的差異化信息,即 策略信息可以是調(diào)用該服務(wù)的外部應(yīng)用發(fā)起方的簽約信息,也可以是服務(wù)中 包含的會(huì)話方在通信網(wǎng)中的服務(wù)歸屬信息,或者是不同服務(wù)提供的差異信息, 如計(jì)費(fèi)、負(fù)載信息等等。其中,當(dāng)策略信息為外部應(yīng)用的發(fā)起方的簽約信息 時(shí),可以為調(diào)用該服務(wù)的外部應(yīng)用簽約指定使用某個(gè)特定網(wǎng)絡(luò)(如特定運(yùn)營 商網(wǎng)絡(luò),特定類型網(wǎng)絡(luò))的特定類型的服務(wù);當(dāng)策略信息為服務(wù)涉及通信網(wǎng) 用戶的網(wǎng)絡(luò)歸屬信息時(shí),可以為根據(jù)服務(wù)中包含的會(huì)話方在通信網(wǎng)中的服務(wù) 歸屬信息使用會(huì)話方歸屬網(wǎng)絡(luò)作為服務(wù)提供;當(dāng)策略信息為服務(wù)提供實(shí)體的 差異化信息時(shí),可以為外部應(yīng)用簽約或動(dòng)態(tài)指定使用差異化信息所選擇的服 務(wù),如簽約指定使用計(jì)費(fèi)最便宜的服務(wù),動(dòng)態(tài)指定負(fù)載最少的服務(wù)。本實(shí)施 例中所指的策略可以具體描述為下述形式
舉例1:外部應(yīng)用發(fā)起方為XXX,且調(diào)用服務(wù)為XXX時(shí),調(diào)用XXX提供的 服務(wù)。
舉例2:調(diào)用服務(wù)為XXX,且調(diào)用輸入?yún)?shù)中包含的會(huì)話方歸屬域?yàn)閄XX 時(shí),調(diào)用XXX提供的服務(wù)。
舉例3:調(diào)用服務(wù)為XXX時(shí),調(diào)用所有該服務(wù)提供中計(jì)費(fèi)最便宜的XXX 提供的服務(wù)。
舉例4:外部應(yīng)用發(fā)起方為XXX,調(diào)用服務(wù)為XXX且該外部應(yīng)用調(diào)用該服 務(wù)的歷史記錄為使用XXX提供的服務(wù)時(shí),仍然調(diào)用XXX提供的服務(wù)。
舉例5:調(diào)用服務(wù)為XXX時(shí),調(diào)用所有該服務(wù)提供中負(fù)載最少的XXX提
9供的服務(wù)。
需要指出的是,本實(shí)施例中所指的策略包括但不限于上述幾種舉例。
例如,當(dāng)外部應(yīng)用調(diào)用呼叫業(yè)務(wù)月良務(wù)時(shí),創(chuàng)建一個(gè)會(huì)話舉例外部應(yīng)用 希望調(diào)用該呼叫業(yè)務(wù),創(chuàng)建用戶A到用戶B的呼叫,但是存在多個(gè)不同網(wǎng)絡(luò) 可以調(diào)用該呼叫業(yè)務(wù)服務(wù),如IMS、其他NGN網(wǎng)絡(luò)等等,或者存在多個(gè)網(wǎng)絡(luò) 性質(zhì)相同但地域分布不同的網(wǎng)絡(luò)。如果采用現(xiàn)有技術(shù)中的0SA/Parlay構(gòu)架, 則無法對(duì)調(diào)用該服務(wù)的網(wǎng)絡(luò)進(jìn)行選擇,用戶發(fā)起呼叫后,很可能將一個(gè)本地 呼叫變成一個(gè)長途甚至國際長途呼叫,使得用戶產(chǎn)生了額外的通話費(fèi)用。而 如果采用本發(fā)明實(shí)施例的方法,外部應(yīng)用在服務(wù)調(diào)用請(qǐng)求消息中攜帶調(diào)用的 呼叫服務(wù)信息,以及呼叫雙方的標(biāo)識(shí)信息,服務(wù)開放實(shí)體可以根據(jù)如上述舉 例2的策略信息選擇用戶A或者用戶B歸屬地網(wǎng)絡(luò)作為呼叫的服務(wù)提供,并 將服務(wù)調(diào)用請(qǐng)求消息路由到該網(wǎng)絡(luò),從而為外部應(yīng)用選擇了最合適的服務(wù)來 完成呼叫業(yè)務(wù)。又如,當(dāng)外部應(yīng)用調(diào)用群組服務(wù)時(shí),外部應(yīng)用使用群組服務(wù) 創(chuàng)建一個(gè)群組后,希望進(jìn)一步使用群組維護(hù)服務(wù)對(duì)該群組進(jìn)行維護(hù)。如果采 用現(xiàn)有技術(shù)中的0SA/Parlay構(gòu)架,由于不存在一定的選擇策略,在使用服務(wù) 開放接口進(jìn)行群組的維護(hù)時(shí),很可能選擇的是另 一個(gè)網(wǎng)絡(luò)提供的群組服務(wù), 使得服務(wù)的連續(xù)性不能保證。而如果采用本發(fā)明實(shí)施例的方法,服務(wù)開放功 能實(shí)體可以才艮據(jù)如上述舉例4的策略信息選擇與該外部應(yīng)用的群組服務(wù)調(diào)用
的歷史記錄中調(diào)用與該服務(wù)相同的服務(wù)提供實(shí)體,從而保證了服務(wù)的連續(xù)性。 步驟103,根據(jù)策略信息選擇一個(gè)服務(wù)提供實(shí)體對(duì)服務(wù)進(jìn)行調(diào)用。 服務(wù)開放實(shí)體獲取到待調(diào)用的服務(wù)對(duì)應(yīng)的策略信息之后,服務(wù)開放實(shí)體
根據(jù)策略信息選擇一個(gè)服務(wù)提供實(shí)體對(duì)服務(wù)進(jìn)行調(diào)用。本實(shí)施例以存在至少
需要指出的是,本發(fā)明實(shí)施例提供的技術(shù)方案同樣適用于只存在一個(gè)服務(wù)提 供實(shí)體時(shí)的情況。當(dāng)只存在一個(gè)服務(wù)提供實(shí)體時(shí),服務(wù)開放實(shí)體根據(jù)策略提 供實(shí)體提供的策略信息,判斷該服務(wù)提供實(shí)體是否為策略信息所對(duì)應(yīng)的服務(wù)
10提供實(shí)體,如果是,則選擇該服務(wù)提供實(shí)體調(diào)用當(dāng)前的服務(wù),否則不選擇該
服務(wù)提供實(shí)體調(diào)用服務(wù)。以調(diào)用呼叫業(yè)務(wù)為例,外部應(yīng)用創(chuàng)建用戶A和用戶B的呼叫時(shí),外部應(yīng)用在服務(wù)調(diào)用請(qǐng)求消息中攜帶調(diào)用的呼叫服務(wù)信息,以及呼叫雙方的標(biāo)識(shí)信息,服務(wù)開放實(shí)體根據(jù)服務(wù)信息獲取到該呼叫服務(wù)對(duì)應(yīng)的策略信息,該策略信息可以為"調(diào)用服務(wù)為呼叫服務(wù),且調(diào)用輸入?yún)?shù)中包含的會(huì)話方歸屬域?yàn)橛脩鬊的歸屬地網(wǎng)絡(luò)",則服務(wù)開放實(shí)體根據(jù)該策略信息選擇用戶B的歸屬地網(wǎng)絡(luò)作為呼叫的服務(wù)提供,然后將服務(wù)調(diào)用請(qǐng)求消息路由到該網(wǎng)絡(luò)中便完成了用戶A到用戶B之間呼叫服務(wù)的調(diào)用。
在步驟103之后,還可以執(zhí)行如下步驟發(fā)送所述服務(wù)提供實(shí)體定義的服務(wù)調(diào)用接口協(xié)議消息到所述服務(wù)提供實(shí)體,所述服務(wù)提供實(shí)體根據(jù)接收到的所述服務(wù)調(diào)用接口協(xié)議消息調(diào)用所述服務(wù)。服務(wù)開放實(shí)體在選擇出一個(gè)待調(diào)用服務(wù)的服務(wù)提供實(shí)體后,向該服務(wù)提供實(shí)體發(fā)送服務(wù)調(diào)用接口協(xié)議消息,該消息為符合該服務(wù)提供實(shí)體服務(wù)調(diào)用接口協(xié)議的消息,如HTTP請(qǐng)求、SIP請(qǐng)求等。服務(wù)提供實(shí)體根據(jù)接收到的服務(wù)調(diào)用接口協(xié)議消息,選擇其對(duì)應(yīng)的接口,完成服務(wù)的調(diào)用過程。
本實(shí)施例通過服務(wù)開放實(shí)體根據(jù)服務(wù)調(diào)用請(qǐng)求消息中攜帶的服務(wù)信息獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息,再根據(jù)策略信息選擇一個(gè)服務(wù)提供實(shí)體完成服務(wù)的調(diào)用,實(shí)現(xiàn)了依據(jù)策略為外部應(yīng)用選擇合適的服務(wù),實(shí)現(xiàn)了對(duì)通信網(wǎng)服務(wù)或能力的更加方便準(zhǔn)確的調(diào)用。
由上述介紹的內(nèi)容可知,待調(diào)用服務(wù)對(duì)應(yīng)的策略信息可以由策略提供實(shí)體預(yù)先提供給服務(wù)開放實(shí)體,也可以由服務(wù)開放實(shí)體在收到服務(wù)調(diào)用請(qǐng)求消息時(shí),主動(dòng)向策略提供實(shí)體請(qǐng)求獲取。即存在兩種獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息的方法,該兩種方法在具體操作步驟上存在差異。
當(dāng)服務(wù)開放實(shí)體通過策略提供實(shí)體預(yù)先提供的策略信息獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息時(shí),在上述步驟101之前,還可以執(zhí)行如下步驟加載策略信息,該策略信息由策略提供實(shí)體預(yù)先配置。即在服務(wù)開放實(shí)體接收外部應(yīng)
ii用發(fā)送的服務(wù)調(diào)用請(qǐng)求消息之前,服務(wù)開放實(shí)體加載策略提供實(shí)體預(yù)先配置的策略信息,并將加載的策略信息進(jìn)行保存,在服務(wù)開放實(shí)體接收到服務(wù)調(diào)用請(qǐng)求消息后,即可隨時(shí)調(diào)取保存的策略信息,并從中選擇與待調(diào)用服務(wù)相對(duì)應(yīng)的策略信息。
策略提供實(shí)體預(yù)先配置的策略信息可以為多個(gè),即針對(duì)外部應(yīng)用調(diào)用的
服務(wù),可以存在多個(gè)策略。在這種情況下,上述步驟102可以具體為根據(jù)設(shè)置的所述策略信息的優(yōu)先級(jí)信息和所述服務(wù)信息,獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息。在預(yù)先配置的多個(gè)策略信息中,包含設(shè)置的策略信息的優(yōu)先級(jí)信息,當(dāng)服務(wù)開放實(shí)體收到服務(wù)調(diào)用請(qǐng)求消息后,調(diào)取保存的與待調(diào)用服務(wù)對(duì)應(yīng)的策略信息,該策略信息為多個(gè),服務(wù)開放實(shí)體根據(jù)設(shè)置的策略信息的優(yōu)先級(jí)關(guān)系,先調(diào)用優(yōu)先級(jí)高的策略信息對(duì)應(yīng)的策略選擇服務(wù)提供實(shí)體,如果根據(jù)優(yōu)先級(jí)最高的策略信息選擇的服務(wù)提供實(shí)體不唯一,則繼續(xù)調(diào)用優(yōu)先級(jí)次之的策略,直到選擇的服務(wù)提供實(shí)體為唯一為止。如上例中的呼叫服務(wù),假設(shè)根據(jù)用戶A的歸屬地選擇對(duì)應(yīng)的服務(wù)提供時(shí),在該歸屬地存在多個(gè)相同的服務(wù)提供(例如在深圳可以由中國電信、中國移動(dòng)和中國聯(lián)通三個(gè)運(yùn)營商網(wǎng)絡(luò)提供、甚至可以由不同網(wǎng)絡(luò)類型提供,如CDMA、 GSM、 PSTN),依次調(diào)用次優(yōu)先策略,直到選擇唯一的服務(wù)提供功能單元為止。如可以根據(jù)外部應(yīng)用發(fā)起方信息或調(diào)用服務(wù)的信息,對(duì)服務(wù)提供實(shí)體進(jìn)一步的選擇。
當(dāng)服務(wù)開放實(shí)體獲取策略信息時(shí),具體采用向策略提供實(shí)體發(fā)送策略請(qǐng)求消息的形式,則上述步驟102可以具體為如下步驟
根據(jù)服務(wù)信息向策略提供實(shí)體發(fā)送策略請(qǐng)求消息,在策略請(qǐng)求消息中攜帶調(diào)用信息和服務(wù)信息。當(dāng)存在多個(gè)相同的服務(wù)提供實(shí)體可用于調(diào)用該服務(wù),且服務(wù)開放實(shí)體中沒有待選擇的策略,或者待選擇的策略與當(dāng)前所調(diào)用的服務(wù)不相關(guān)時(shí),服務(wù)開放實(shí)體在接收到服務(wù)調(diào)用請(qǐng)求消息后,主動(dòng)向策略提供實(shí)體發(fā)出提供策略的請(qǐng)求,即根據(jù)請(qǐng)求中攜帶的服務(wù)信息向策略提供實(shí)體發(fā)送策略請(qǐng)求消息,請(qǐng)求策略信息,在策略請(qǐng)求消息中攜帶調(diào)用信息和服務(wù)信息,其中,調(diào)用信息可以為調(diào)用該服務(wù)的外部應(yīng)用發(fā)起方的信息,或者該服務(wù)中包含的會(huì)話方信息。
接收策略提供實(shí)體發(fā)送的策略請(qǐng)求響應(yīng)消息,在策略請(qǐng)求響應(yīng)消息中攜帶待調(diào)用服務(wù)對(duì)應(yīng)的策略信息。策略提供實(shí)體在接收到服務(wù)開放實(shí)體發(fā)送的策略請(qǐng)求消息后,對(duì)該策略請(qǐng)求消息做出響應(yīng),即根據(jù)請(qǐng)求中攜帶的調(diào)用信息和服務(wù)信為待調(diào)用服務(wù)選擇合適的策略,然后將提供的策略信息封裝在策略請(qǐng)求響應(yīng)消息中發(fā)送給服務(wù)開放實(shí)體。服務(wù)開放實(shí)體接收策略提供實(shí)體返回的策略請(qǐng)求響應(yīng)消息,在策略請(qǐng)求響應(yīng)消息中攜帶待調(diào)用服務(wù)對(duì)應(yīng)的策略信息。
根據(jù)接收到的策略請(qǐng)求響應(yīng)消息獲取策略信息。服務(wù)開放實(shí)體接收到策略請(qǐng)求響應(yīng)消息后,根據(jù)該策略請(qǐng)求響應(yīng)消息獲取其中攜帶的策略信息。策略信息可以基于外部應(yīng)用發(fā)起方的簽約信息,或者使用該服務(wù)中包含的會(huì)話方在通信網(wǎng)中的服務(wù)歸屬信息,或者不同服務(wù)提供之間的差異信息等。
需要指出的是,通過上述被動(dòng)和主動(dòng)的兩種方式獲取策略信息時(shí),還可以分別在不同的時(shí)期對(duì)策略信息進(jìn)行獲取,即服務(wù)開放實(shí)體在調(diào)用服務(wù)之前或服務(wù)開放實(shí)體在調(diào)用服務(wù)時(shí)獲取策略信息。當(dāng)服務(wù)開放實(shí)體在調(diào)用服務(wù)之前,如果策略提供實(shí)體已經(jīng)對(duì)策略信息進(jìn)行了配置,則服務(wù)開放實(shí)體采用上述第一種方法,即被動(dòng)獲取的方式獲取策略信息,即服務(wù)開放實(shí)體被動(dòng)接收策略提供實(shí)體下發(fā)的策略信息。當(dāng)服務(wù)開放實(shí)體在調(diào)用服務(wù)之前,如果策略提供實(shí)體未對(duì)策略信息進(jìn)行配置,則服務(wù)開放實(shí)體采用上述第二種方法,即主動(dòng)獲取的方式獲取策略信息,即服務(wù)開放實(shí)體主動(dòng)向策略提供實(shí)體發(fā)送策略請(qǐng)求獲取策略信息。當(dāng)服務(wù)開放實(shí)體在調(diào)用服務(wù)時(shí),如果策略提供實(shí)體已經(jīng)對(duì)策略信息進(jìn)行了配置,則服務(wù)開放實(shí)體采用上述第一種方法,即被動(dòng)獲取的方式獲取策略信息,即服務(wù)開放實(shí)體被動(dòng)接收策略提供實(shí)體下發(fā)的策略信息。服務(wù)開放實(shí)體在調(diào)用服務(wù)時(shí),如果策略提供實(shí)體未對(duì)策略信息進(jìn)行配置,則服務(wù)開放實(shí)體采用上述第二種方法,即主動(dòng)獲取的方式獲取策略信息,即服務(wù)開放實(shí)體主動(dòng)向策略提供實(shí)體發(fā)送策略請(qǐng)求獲取策略信息。
本實(shí)施例通過提供一種服務(wù)選擇方法,通過服務(wù)開放實(shí)體根據(jù)服務(wù)調(diào)用 請(qǐng)求消息中攜帶的服務(wù)信息獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息,再根據(jù)策略信 息選擇一個(gè)服務(wù)提供實(shí)體完成服務(wù)的調(diào)用,能夠依據(jù)策略為外部應(yīng)用選擇合 適的服務(wù),實(shí)現(xiàn)了對(duì)通信網(wǎng)服務(wù)或能力的更加方便準(zhǔn)確的調(diào)用,并保證了 服務(wù)的連續(xù)性。
圖3為本發(fā)明服務(wù)選擇方法另一實(shí)施例的信令圖。如圖3所示,本發(fā) 明實(shí)施例提供了 一種服務(wù)選擇方法,本實(shí)施例是對(duì)上述實(shí)施例的具體化, 具體包括如下步驟
步驟201,外部應(yīng)用向服務(wù)開放功能單元發(fā)送服務(wù)調(diào)用請(qǐng)求消息。 外部應(yīng)用通過Web Services訪問通信網(wǎng)服務(wù)或能力時(shí),先向服務(wù)開放功 能單元發(fā)送一個(gè)服務(wù)調(diào)用請(qǐng)求消息,在服務(wù)調(diào)用請(qǐng)求消息中攜帶有待調(diào)用服 務(wù)的服務(wù)信息。服務(wù)調(diào)用請(qǐng)求消息為符合Web Services接口的"SOAP"消 息,或者REST風(fēng)格的消息,例如用戶瀏覽網(wǎng)頁時(shí)向Web服務(wù)器發(fā)送的"HTTP Get"請(qǐng)求。
步驟202,服務(wù)開放功能單元向策略提供功能單元發(fā)送策略請(qǐng)求消息。 服務(wù)開放功能單元接收到服務(wù)調(diào)用請(qǐng)求消息后,經(jīng)過判斷,策略提供 功能單元未對(duì)策略信息進(jìn)行預(yù)先配置,并提供給服務(wù)開放功能單元,則服 務(wù)開放功能單元向策略提供功能單元請(qǐng)求策略信息,即發(fā)送策略請(qǐng)求消 息。如果經(jīng)過判斷,策略提供功能單元對(duì)策略信息進(jìn)行了預(yù)先配置,并主 動(dòng)下發(fā)給服務(wù)開放功能單元,則跳過步驟202-203,直接執(zhí)行步驟204。 在服務(wù)開》文功能單元發(fā)送的策略請(qǐng)求消息中攜帶有調(diào)用信息和服務(wù)信息。其 中,調(diào)用信息可以為調(diào)用該服務(wù)的外部應(yīng)用發(fā)起方的信息,或者該服務(wù)中包 含的會(huì)話方信 息o
步驟203,策略提供功能單元向服務(wù)開放功能單元返回策略請(qǐng)求響應(yīng) 消息。
14策略提供實(shí)體在接收到策略請(qǐng)求消息后,對(duì)該策略請(qǐng)求消息做出響應(yīng), 即根據(jù)請(qǐng)求中攜帶的調(diào)用信息和服務(wù)信為待調(diào)用服務(wù)選擇合適的策略信息, 然后向服務(wù)開放功能單元返回策略請(qǐng)求響應(yīng)消息,將策略信息封裝在策略請(qǐng) 求響應(yīng)消息中發(fā)送給服務(wù)開放功能單元。
步驟204,服務(wù)開放功能單元根據(jù)策略信息選擇服務(wù)提供功能單元。 服務(wù)開放功能單元接收策略提供實(shí)體返回的策略請(qǐng)求響應(yīng)消息,在策略 請(qǐng)求響應(yīng)消息中攜帶待調(diào)用服務(wù)對(duì)應(yīng)的策略信息,服務(wù)開放功能單元根據(jù)策 略信息選擇服務(wù)提供功能單元。服務(wù)提供功能單元可能為多個(gè),服務(wù)開放 功能單元根據(jù)策略信息在多個(gè)服務(wù)提供功能單元中選擇一個(gè)服務(wù)功能單 元,進(jìn)行服務(wù)調(diào)用。需要指出的是,可能存在服務(wù)提供功能實(shí)體只有一個(gè) 這種特殊情況,本發(fā)明實(shí)施例提供的技術(shù)方案同樣適應(yīng)于這種特殊情況。 步驟205,服務(wù)開放功能單元向服務(wù)提供功能單元發(fā)送服務(wù)調(diào)用接口 協(xié)議消息。
服務(wù)開放功能單元在從多個(gè)服務(wù)提供功能單元中選定一個(gè)服務(wù)提供 功能單元后,向該服務(wù)提供功能單元發(fā)送服務(wù)調(diào)用接口協(xié)議消息,該服務(wù) 調(diào)用接口協(xié)議消息市由服務(wù)提供功能單元所定義的,在服務(wù)調(diào)用指示消息 中攜帶有服務(wù)信息。
步驟206,服務(wù)提供功能單元根據(jù)服務(wù)調(diào)用接口協(xié)議消息調(diào)用服務(wù)。
服務(wù)提供功能單元根據(jù)接收到的服務(wù)調(diào)用接口協(xié)議消息,選擇該服務(wù) 提供功能單元對(duì)應(yīng)的接口 ,完成服務(wù)信息中所指示的服務(wù)的調(diào)用過程。
本實(shí)施例通過提供一種服務(wù)選擇方法,通過服務(wù)開放功能單元根據(jù)服務(wù) 調(diào)用請(qǐng)求消息中攜帶的服務(wù)信息獲取持調(diào)用服務(wù)對(duì)應(yīng)的策略信息,再根據(jù)策 略信息選擇一個(gè)服務(wù)提供功能單元完成服務(wù)的調(diào)用,能夠依據(jù)策略為外部應(yīng) 用選擇合適的服務(wù),實(shí)現(xiàn)了對(duì)通信網(wǎng)服務(wù)或能力的更加方便準(zhǔn)確的調(diào)用, 并保證了服務(wù)的連續(xù)性。
圖4為本發(fā)明服務(wù)開放實(shí)體一實(shí)施例的結(jié)構(gòu)示意圖,如圖4所示,本發(fā)
15明實(shí)施例提供的服務(wù)開放實(shí)體包括接收模塊301、獲取模塊302和選擇模塊 303。其中,接收模塊301用于接收外部應(yīng)用發(fā)送的服務(wù)調(diào)用請(qǐng)求消息,在所 述服務(wù)調(diào)用請(qǐng)求消息中攜帶待調(diào)用服務(wù)的服務(wù)信息。外部應(yīng)用通過Web Services訪問通信網(wǎng)服務(wù)或能力時(shí),先向開放實(shí)體的接收模塊301發(fā)送一個(gè) 服務(wù)調(diào)用請(qǐng)求消息,接收模塊301接收外部應(yīng)用發(fā)送的服務(wù)調(diào)用請(qǐng)求消息, 在服務(wù)調(diào)用請(qǐng)求消息中攜帶有待調(diào)用服務(wù)的服務(wù)信息。該服務(wù)信息可以為待 調(diào)用的服務(wù)的所有相關(guān)信息,例如當(dāng)外部應(yīng)用希望調(diào)用的服務(wù)為呼叫業(yè)務(wù) 時(shí),服務(wù)信息為呼叫服務(wù)信息、呼叫雙方的標(biāo)識(shí)信息等。獲取模塊302用 于根據(jù)接收模塊301接收的所述服務(wù)信息獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息, 獲取模塊302根據(jù)服務(wù)信息發(fā)現(xiàn)當(dāng)前存在兩個(gè)或兩個(gè)以上可供選擇的服務(wù)提 供,則需要通過一定的策略從多個(gè)服務(wù)提供中為外部應(yīng)用選擇一個(gè)最適合的 服務(wù)。
策略信息可以為策略提供實(shí)體預(yù)先配置的,服務(wù)開放實(shí)體在接收外部應(yīng) 用發(fā)送的服務(wù)調(diào)用請(qǐng)求消息之前,預(yù)先保存策略提供單元主動(dòng)下發(fā)的策略作 為靜態(tài)策略信息在需要時(shí)調(diào)?。蝗绻呗蕴峁?shí)體未對(duì)策略信息進(jìn)行預(yù)先配 置,沒有可供選擇的策略,則通過向策略提供實(shí)體請(qǐng)求策略信息來獲取策略 信息。選擇模塊303用于根據(jù)獲取模塊302獲取的所述策略信息選擇一個(gè)所 述服務(wù)提供實(shí)體調(diào)用所述服務(wù)。
當(dāng)策略信息為策略提供實(shí)體預(yù)先配置,并主動(dòng)下發(fā)給服務(wù)開放實(shí)體時(shí), 如圖5所示為本發(fā)明服務(wù)開放實(shí)體另一實(shí)施例的結(jié)構(gòu)示意圖,其中,獲^uf莫 塊302可以具體包括加載單元312和獲取單元322。其中,加載單元312用 于加載策略提供實(shí)體預(yù)先配置的策略信息,即在接收外部應(yīng)用發(fā)送的服務(wù)調(diào) 用請(qǐng)求消息之前,加載策略提供實(shí)體預(yù)先配置的策略信息,并將加載的策略 信息進(jìn)行保存,在接收到服務(wù)調(diào)用請(qǐng)求消息后,即可隨時(shí)調(diào)取保存的策略信 息,并從中選擇與待調(diào)用服務(wù)相對(duì)應(yīng)的策略信息。獲取單元322用于根據(jù)接 收模塊301接收的服務(wù)信息和加載單元312加載的策略信息,獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息。選擇模塊303用于根據(jù)獲取單元322獲取的策略信息選 擇一個(gè)服務(wù)提供實(shí)體調(diào)用服務(wù)。
當(dāng)策略信息為服務(wù)提供裝置主動(dòng)向策略提供實(shí)體請(qǐng)求的時(shí),如圖6所示 為本發(fā)明服務(wù)開放實(shí)體另一實(shí)施例的結(jié)構(gòu)示意圖,其中,獲取模塊302可以 具體包括請(qǐng)求發(fā)送單元332、響應(yīng)接收單元342和獲取單元352。其中,請(qǐng)求 發(fā)送單元332用于根據(jù)接收模塊301接收的服務(wù)信息向策略提供實(shí)體發(fā)送策 略請(qǐng)求消息,在策略請(qǐng)求消息中攜帶服務(wù)信息,響應(yīng)接收單元342用于接收 策略提供實(shí)體發(fā)送的策略請(qǐng)求響應(yīng)消息,在策略請(qǐng)求響應(yīng)消息中攜帶待調(diào)用 服務(wù)對(duì)應(yīng)的策略信息,獲取單元352用于根據(jù)響應(yīng)接收單元接收的策略請(qǐng)求 響應(yīng)消息獲取策略信息。選擇模塊303用于根據(jù)獲取單元352獲取的策略信 息選擇一個(gè)服務(wù)提供實(shí)體調(diào)用服務(wù)。
進(jìn)一步地,服務(wù)開放實(shí)體與策略提供實(shí)體之間的接口協(xié)議釆用簡單對(duì)象 訪問協(xié)議、可擴(kuò)展標(biāo)記語言應(yīng)用編程接口協(xié)議、直徑協(xié)議或超文本標(biāo)記語言 協(xié)議。
本實(shí)施例通過提供一種服務(wù)開放實(shí)體,通過獲取模塊根據(jù)服務(wù)調(diào)用請(qǐng)求 消息中攜帶的服務(wù)信息獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息,再由選擇模塊根據(jù) 策略信息選擇一個(gè)服務(wù)提供實(shí)體完成服務(wù)的調(diào)用,能夠依據(jù)策略為外部應(yīng)用 選擇合適的服務(wù),實(shí)現(xiàn)了對(duì)通信網(wǎng)服務(wù)或能力的更加方便準(zhǔn)確的調(diào)用,并 保證了服務(wù)的連續(xù)性。
圖7為本發(fā)明策略提供實(shí)體一實(shí)施例的結(jié)構(gòu)示意圖,如圖7所示,本發(fā) 明實(shí)施例提供的策略提供實(shí)體包括提供模塊701,用于向服務(wù)開放實(shí)體提 供策略信息。當(dāng)策略提供實(shí)體未對(duì)策略信息進(jìn)行預(yù)先配置時(shí),服務(wù)開放實(shí)體 向策略提供實(shí)體發(fā)送策略請(qǐng)求消息請(qǐng)求策略信息時(shí),本發(fā)明實(shí)施例提供的策 略提供實(shí)體還可以包括請(qǐng)求接收模塊702和響應(yīng)發(fā)送模塊703。其中,請(qǐng) 求接收模塊702接收服務(wù)開放實(shí)體發(fā)送的策略請(qǐng)求消息,在策略請(qǐng)求消息中 攜帶調(diào)用信息和所述服務(wù)信息。響應(yīng)發(fā)送模塊703向服務(wù)開放實(shí)體返回策略請(qǐng)求響應(yīng)消息,在策略請(qǐng)求響應(yīng)消息中攜帶策略信息。
當(dāng)策略提供實(shí)體對(duì)策略信息進(jìn)行預(yù)先配置,并向服務(wù)開放實(shí)體主動(dòng)下發(fā)
策略信息,如圖8所示為本發(fā)明策略提供實(shí)體另一實(shí)施例的結(jié)構(gòu)示意圖,則 本發(fā)明實(shí)施例提供的策略提供實(shí)體還可以包括配置模塊705,用于預(yù)先配 置策略信息,提供模塊701根據(jù)配置模塊705預(yù)先配置的策略信息,向服務(wù) 開放實(shí)體提供待調(diào)用服務(wù)對(duì)應(yīng)的策略信息。進(jìn)一步地,策略提供實(shí)體還可以 進(jìn)一步包括設(shè)置模塊704,用于設(shè)置策略信息的優(yōu)先級(jí)信息,提供模塊701 根據(jù)配置模塊705配置的策略信息和策略信息的優(yōu)先級(jí)信息,向服務(wù)開放實(shí) 體提供待調(diào)用服務(wù)對(duì)應(yīng)的策略信息。本實(shí)施例通過提供一種策略提供實(shí)體, 通過向服務(wù)開放實(shí)體主動(dòng)提供或被動(dòng)請(qǐng)求后提供策略信息,使得服務(wù)開放實(shí) 體能夠依據(jù)策略信息為外部應(yīng)用選擇合適的服務(wù),實(shí)現(xiàn)了對(duì)通信網(wǎng)服務(wù)或 能力的更加方便準(zhǔn)確的調(diào)用,并保證了服務(wù)的連續(xù)性。
圖9為本發(fā)明服務(wù)選擇系統(tǒng)實(shí)施例的結(jié)構(gòu)示意圖,如圖9所示,本實(shí)施 例提供的一種服務(wù)選擇系統(tǒng)包括服務(wù)開放實(shí)體1和策略提供實(shí)體2。其中, 服務(wù)開放實(shí)體1用于根據(jù)服務(wù)信息獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息,并根據(jù) 待調(diào)用服務(wù)對(duì)應(yīng)的策略信息選擇一個(gè)服務(wù)提供實(shí)體3,并指示服務(wù)提供實(shí)體3 對(duì)服務(wù)進(jìn)行調(diào)用。服務(wù)開放實(shí)體1通過標(biāo)準(zhǔn)的Web服務(wù)接口將不同運(yùn)營商, 不同類型的網(wǎng)絡(luò)開放的能力或服務(wù)提供給外部應(yīng)用4調(diào)用。本發(fā)明實(shí)施例中, 服務(wù)開放實(shí)體1可以是Parlay/OSA定義的能力開放網(wǎng)關(guān),也可以是 BEA/Oracle定義的SDP平臺(tái),或者其他的提供通信網(wǎng)能力或服務(wù)的設(shè)備。策 略提供實(shí)體2用于向服務(wù)開放實(shí)體1提供待調(diào)用服務(wù)對(duì)應(yīng)的策略信息。策略 提供實(shí)體2為服務(wù)開放實(shí)體1的服務(wù)選擇提供策略支持。策略可以基于外 部應(yīng)用4發(fā)起方的簽約信息、或者使用服務(wù)中包含的會(huì)話方在通信網(wǎng)中的 服務(wù)歸屬信息、甚至不同服務(wù)提供差異化信息(如計(jì)費(fèi)、負(fù)載信息)等等。 服務(wù)提供實(shí)體3位于特定通信網(wǎng)絡(luò),使用消息接口的方式提供服務(wù)調(diào)用。服 務(wù)提供實(shí)體3可以是特定網(wǎng)絡(luò)中的某一個(gè)功能實(shí)體,如IMS網(wǎng)絡(luò)中Presence服務(wù),服務(wù)提供功能單元可以對(duì)應(yīng)為Presence服務(wù)應(yīng)用服務(wù)器(App 1 ica t ion Server, AS)。服務(wù)提供實(shí)體3也可以是特定網(wǎng)絡(luò)中多個(gè)功能單元組合,如 計(jì)費(fèi)功能可以是IMS網(wǎng)絡(luò)中的OCS。
需要指出的是,在本發(fā)明實(shí)施例提供的服務(wù)選擇系統(tǒng)中,服務(wù)開放實(shí)體 可以具體包括如圖4-6所示的任一服務(wù)開放實(shí)體,策略提供實(shí)體可以具體包 括如圖7-8所示的任一策略提供實(shí)體。
服務(wù)開放實(shí)體1與策略提供實(shí)體2之間的接口協(xié)議為簡單對(duì)象訪問協(xié)議 (Simple Object Access Protocol, SOAP)、可擴(kuò)展才示i己i吾言應(yīng)用編矛呈才妄口 協(xié)議(extensible markup language Application Program Interface, XML API )、直徑協(xié)議(Diameter )或超文本傳輸協(xié)議(Hypertext Transfer Protocol, HTTP)。服務(wù)開放實(shí)體1與策略提供實(shí)體2之間的接口可以是直 接接口,也可以是間接接口,甚至內(nèi)部接口,即策略提供實(shí)體2可以和服務(wù) 開放實(shí)體1位于同一個(gè)物理實(shí)體中。接口可以是SOAP^妄口 ,也可以是XML API 接口、 Diameter接口,或者HTTP接口等。
服務(wù)開放實(shí)體1與服務(wù)提供實(shí)體3之間的接口協(xié)議為與提供所述待調(diào)用 服務(wù)的網(wǎng)絡(luò)相對(duì)應(yīng)的協(xié)議,即該接口協(xié)議由提供所述待調(diào)用服務(wù)的網(wǎng)絡(luò)決定。 服務(wù)提供實(shí)體3與服務(wù)開放實(shí)體1間的接口由服務(wù)提供網(wǎng)絡(luò)所決定,如服務(wù) 提供網(wǎng)絡(luò)為PSTN網(wǎng)絡(luò),則其接口可以是IMP,如服務(wù)提供網(wǎng)絡(luò)為PSTN網(wǎng)絡(luò) 為IMS網(wǎng)絡(luò),則其接口可以是SIP、 HTTP等。
服務(wù)開放實(shí)體1與外部應(yīng)用4之間的接口協(xié)議為簡單對(duì)象訪問協(xié)議或符 合REST風(fēng)格的協(xié)議。該接口是Web服務(wù)接口,如SOAP、 REST等。
本實(shí)施例提供了 一種服務(wù)選擇系統(tǒng),通過外部應(yīng)用發(fā)送服務(wù)調(diào)用請(qǐng)求消 息,并在請(qǐng)求中攜帶服務(wù)信息,服務(wù)開放實(shí)體根據(jù)接收到的服務(wù)信息從策略 提供實(shí)體中獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息,服務(wù)開放實(shí)體根據(jù)該策略信息 選擇一個(gè)服務(wù)提供實(shí)體完成了服務(wù)的調(diào)用,能夠依據(jù)策略為外部應(yīng)用選擇合 適的服務(wù),實(shí)現(xiàn)了對(duì)通信網(wǎng)服務(wù)或能力的更加方便準(zhǔn)確的調(diào)用,并保證了
19服務(wù)的連續(xù)性。
最后應(yīng)說明的是以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其 限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的i兌明,本領(lǐng)域的普通技術(shù) 人員應(yīng)當(dāng)理解其依然可以對(duì)前述實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者 對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù) 方案的本質(zhì)脫離本發(fā)明實(shí)施例技術(shù)方案的精神和范圍。
20
權(quán)利要求
1、一種服務(wù)選擇方法,應(yīng)用于開放服務(wù)架構(gòu),其特征在于,包括接收外部應(yīng)用發(fā)送的服務(wù)調(diào)用請(qǐng)求消息,在所述服務(wù)調(diào)用請(qǐng)求消息中攜帶待調(diào)用服務(wù)的服務(wù)信息;根據(jù)所述服務(wù)信息獲取所述待調(diào)用服務(wù)對(duì)應(yīng)的策略信息;根據(jù)所述策略信息選擇一個(gè)服務(wù)提供實(shí)體對(duì)所述服務(wù)進(jìn)行調(diào)用。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括加載所述策略信 息,所述策略信息由策略提供實(shí)體預(yù)先提供。
3、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述服務(wù)信息獲 取所述待調(diào)用服務(wù)對(duì)應(yīng)的策略信息具體包括根據(jù)所述服務(wù)信息向策略提供實(shí)體發(fā)送策略請(qǐng)求消息,在所述策略請(qǐng)求 消息中攜帶調(diào)用信息和所述服務(wù)信息;才艮據(jù)接收到的策略請(qǐng)求響應(yīng)消息獲取所述策略信息。
4、 根據(jù)權(quán)利要求1所述的方法,其特征在于,根據(jù)所述服務(wù)信息獲取所 述待調(diào)用服務(wù)對(duì)應(yīng)的策略信息具體為根據(jù)設(shè)置的所述策略信息的優(yōu)先級(jí)信 息和所述服務(wù)信息,獲取所述待調(diào)用服務(wù)對(duì)應(yīng)的策略信息。
5、 根據(jù)權(quán)利要求1-4任一項(xiàng)所述的方法,其特征在于,還包括發(fā) 送所述服務(wù)提供實(shí)體定義的服務(wù)調(diào)用接口協(xié)議消息到所述服務(wù)提供實(shí)體, 所述服務(wù)提供實(shí)體根據(jù)接收到的所述服務(wù)調(diào)用接口協(xié)議消息調(diào)用所述服 務(wù)。
6、 一種服務(wù)開放實(shí)體,應(yīng)用于開放服務(wù)架構(gòu),其特征在于,包括 接收模塊,用于接收外部應(yīng)用發(fā)送的服務(wù)調(diào)用請(qǐng)求消息,在所述服務(wù)調(diào)用請(qǐng)求消息中攜帶待調(diào)用服務(wù)的服務(wù)信息;獲取模塊,用于根據(jù)所述接收模塊接收的所述服務(wù)信息獲取待調(diào)用服務(wù) 對(duì)應(yīng)的策略信息;選擇模塊,用于根據(jù)所述獲取模塊獲取的所述策略信息選擇一個(gè)服務(wù)提供實(shí)體對(duì)所述服務(wù)進(jìn)行調(diào)用。
7、 根據(jù)權(quán)利要求6所述的服務(wù)開放實(shí)體,其特征在于,所述獲取模塊 包括加栽單元,用于加栽策略提供實(shí)體預(yù)先配置的策略信息; 獲取單元,用于根據(jù)所述接收模塊接收的所述服務(wù)信息和所述加載單元 加載的所述策略信息,獲取所述待調(diào)用服務(wù)對(duì)應(yīng)的策略信息。
8、 根據(jù)權(quán)利要求6所述的服務(wù)開放實(shí)體,其特征在于,所述獲取模塊 包括請(qǐng)求發(fā)送單元,用于根據(jù)所述接收模塊接收的所述服務(wù)信息向策略提供 實(shí)體發(fā)送策略請(qǐng)求消息,在所述策略請(qǐng)求消息中攜帶所述服務(wù)信息;響應(yīng)接收單元,用于接收所述策略提供實(shí)體發(fā)送的策略請(qǐng)求響應(yīng)消息, 在所述策略請(qǐng)求響應(yīng)消息中攜帶所述待調(diào)用服務(wù)對(duì)應(yīng)的策略信息;獲取單元,用于根據(jù)所述響應(yīng)接收單元接收的所述策略請(qǐng)求響應(yīng)消息獲 取所述策略信息。
9、 根據(jù)權(quán)利要求7所述的服務(wù)開放實(shí)體,其特征在于,所述服務(wù)開放實(shí) 體與所述策略提供實(shí)體之間的接口協(xié)議釆用簡單對(duì)象訪問協(xié)議、可擴(kuò)展標(biāo)記 語言應(yīng)用編程接口協(xié)議、直徑協(xié)議或超文本標(biāo)記語言協(xié)議。
10、 一種策略4是供實(shí)體,應(yīng)用于開放服務(wù)架構(gòu),其特征在于,包括 提供模塊,用于向服務(wù)開放實(shí)體提供策略信息。
11、 根據(jù)權(quán)利要求10所述的策略提供實(shí)體,其特征在于,還包括 請(qǐng)求接收模塊,用于接收所述服務(wù)開放實(shí)體發(fā)送的策略請(qǐng)求消息,所述策略請(qǐng)求消息中攜帶調(diào)用信息和服務(wù)信息,所述提供模塊根據(jù)所述調(diào)用信息 和服務(wù)信息向所述服務(wù)開放實(shí)體提供所述策略信息;響應(yīng)發(fā)送模塊,用于向所述服務(wù)開放實(shí)體返回策略請(qǐng)求響應(yīng)消息,在所 述策略請(qǐng)求響應(yīng)消息中攜帶所述提供模塊提供的所述策略信息。
12、 根據(jù)權(quán)利要求10所述的策略提供實(shí)體,其特征在于,還包括配置模塊,用于預(yù)先配置所述策略信息,所述提供模塊根據(jù)所述配置模塊預(yù)先配 置的策略信息,向所述服務(wù)開放實(shí)體提供所述待調(diào)用服務(wù)對(duì)應(yīng)的策略信息。
13、 根據(jù)權(quán)利要求12所述的策略提供實(shí)體,其特征在于,還包括設(shè)置 模塊,用于設(shè)置所述策略信息的優(yōu)先級(jí)信息,所述提供模塊根據(jù)所述配置模 塊配置的所述策略信息和所述策略信息的優(yōu)先級(jí)信息,向所述服務(wù)開放實(shí)體 提供所述待調(diào)用服務(wù)對(duì)應(yīng)的策略信息。
14、 一種服務(wù)選擇系統(tǒng),應(yīng)用于開放服務(wù)架構(gòu),其特征在于,包括 服務(wù)開放實(shí)體,用于根據(jù)服務(wù)信息從策略提供實(shí)體獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息,并根據(jù)所述待調(diào)用服務(wù)對(duì)應(yīng)的策略信息選擇一個(gè)服務(wù)提供實(shí)體, 并指示所述服務(wù)提供實(shí)體對(duì)所述服務(wù)進(jìn)行調(diào)用;所述策略提供實(shí)體,用于向所述服務(wù)開放實(shí)體提供所述策略信息。
全文摘要
本發(fā)明實(shí)施例公開了一種服務(wù)選擇方法、裝置和系統(tǒng),服務(wù)選擇方法應(yīng)用于開放服務(wù)架構(gòu),包括接收外部應(yīng)用發(fā)送的服務(wù)調(diào)用請(qǐng)求消息;根據(jù)服務(wù)信息獲取待調(diào)用服務(wù)對(duì)應(yīng)的策略信息;根據(jù)策略信息選擇一個(gè)服務(wù)提供實(shí)體對(duì)服務(wù)進(jìn)行調(diào)用。服務(wù)開放實(shí)體應(yīng)用于開放服務(wù)架構(gòu),包括接收模塊、獲取模塊和選擇模塊。策略選擇實(shí)體應(yīng)用于開放服務(wù)架構(gòu),包括提供模塊。服務(wù)選擇系統(tǒng)應(yīng)用于開放服務(wù)架構(gòu),包括服務(wù)開放實(shí)體和策略提供實(shí)體。本發(fā)明實(shí)施例實(shí)現(xiàn)了依據(jù)策略為外部應(yīng)用選擇合適的服務(wù),可以更加方便準(zhǔn)確地調(diào)用通信網(wǎng)的服務(wù)。
文檔編號(hào)H04L29/08GK101686253SQ20081022293
公開日2010年3月31日 申請(qǐng)日期2008年9月23日 優(yōu)先權(quán)日2008年9月23日
發(fā)明者丹 肖, 胡斐然, 蔣吳軍, 波 鄭, 普 陳, 魯勁草 申請(qǐng)人:華為技術(shù)有限公司