專利名稱:消息多點(diǎn)傳播方法和計(jì)算機(jī)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及代理(agent)技術(shù),尤其涉及控制代理服務(wù)器上發(fā)送的消息。
當(dāng)談到WWW(萬維網(wǎng))上的聯(lián)機(jī)購物時(shí),在包括旅行、書籍、CD(激光唱盤)以及就業(yè)信息的領(lǐng)域中已經(jīng)報(bào)道了若干成功的例子,并且期望今后它會(huì)日益發(fā)展。這種形式的聯(lián)機(jī)購物,正在從僅僅在常規(guī)HTML(超文本標(biāo)記語言)文件或DB(數(shù)據(jù)庫)中以及在CGI(公用網(wǎng)關(guān)接口)中展示商品,向檢索各作為單獨(dú)單元的多個(gè)點(diǎn)或者了解用戶的興趣以便找到適當(dāng)?shù)奈锲贩较蜣D(zhuǎn)移。
代理技術(shù)適應(yīng)這種新的形式。例如,產(chǎn)生由各個(gè)用戶使用的信息檢索代理和由各個(gè)運(yùn)營商店的公司使用的信息提供代理,從而它們相互交互以實(shí)現(xiàn)信息檢索和商品銷售。這些代理可能是移動(dòng)代理,在一個(gè)點(diǎn)(代理服務(wù)器)上它們至少暫時(shí)地一起行動(dòng)。
為了在代理之間可以以交互的方式交換消息,必須存在在它們之間進(jìn)行交互的公用規(guī)則。因此,若在代理服務(wù)器上建立定義代理之間的交互規(guī)則的類型數(shù)據(jù)庫(例如參見IBM TDB Vol.40 No.12,PP.29,Dec.1997)并且產(chǎn)生其輸出的消息和這些規(guī)則兼容的代理,則有可能在代理服務(wù)器上與其它亦和這些規(guī)則兼容的代理交互。
正在試圖標(biāo)準(zhǔn)化代理之間的交互,例如(KQML(知識(shí)查詢操縱語言)和ACL(代理通信語言)。當(dāng)在基中之一下預(yù)定義一組可由代理使用的消息時(shí),在所提供的方法的類型上以及格式化的方式上出現(xiàn)差異。在KQML下,除了諸如“問題”和“回答”的原始消息之外,還提供一系列稱為助體(facilitator)消息的消息,以使媒體搜索另一方的代理。在ACL中,與此不同,只提供原始消息,但是在消息之間形成約束的方法更為嚴(yán)格,并且試圖由操作員格式化以表示代理的心理狀態(tài)。
現(xiàn)對(duì)上面所述的KQML中的助體消息做一些說明,希望具有要發(fā)送的消息的代理在稱為助體的一種特殊代理上預(yù)注冊(cè)自己,助體傳遞來自其它代理的消息。由于助體向所有已注冊(cè)的代理發(fā)送消息,它不具有根據(jù)時(shí)間狀態(tài)改變其目的地的特性。
如上述,上面提及的助體不提供反映用戶各時(shí)間的興趣的消息發(fā)送特性。盡管也存在著通過顯式規(guī)定多個(gè)代理發(fā)送消息的方法,當(dāng)規(guī)定許多消息時(shí)該方法具有用戶很麻煩并且系統(tǒng)變?yōu)檫^載的缺點(diǎn)。從而。若允許根據(jù)計(jì)算機(jī)的能力限制要發(fā)送的消息的數(shù)量是更好的。此外,必須存在一種反映代理運(yùn)行中的市場(chǎng)策略的途徑。例如,還要考慮到,若某商店代理的擁有者為運(yùn)營該商品支付多于常規(guī)的費(fèi)用,則以某種特權(quán)向該商店提供確保發(fā)送消息的服務(wù)。普通的技術(shù)不能提供這些特性。
從而,本發(fā)明的一個(gè)目的是提供一種反映用戶指定的目的地代理處的“興趣”的消息發(fā)送特性。
此外,另一個(gè)目的是提供一種反映代理運(yùn)營的市場(chǎng)策略的消息發(fā)送特性。
而且,再一個(gè)目的是通過控制要發(fā)送的消息的數(shù)量實(shí)現(xiàn)對(duì)系統(tǒng)負(fù)載的控制。
另外,又一個(gè)目的是提供一種高適用性的代理技術(shù)并提供一種實(shí)現(xiàn)市場(chǎng)發(fā)起人的多樣服務(wù)的技術(shù)。
為了達(dá)到本發(fā)明的上述目的,在向代理多點(diǎn)傳播消息時(shí),消息監(jiān)視器執(zhí)行下述步驟接收由用戶指定的優(yōu)先目的地信息和消息;通過參照用戶指定的優(yōu)先目的地信息,確定向哪些代理發(fā)送該消息;并向確定為目的地的各代理發(fā)送該消息。用戶指定的這種優(yōu)先目的地信息是表示用戶“興趣”的信息,其,例如,由代理名和優(yōu)先級(jí)(或加權(quán))表示。
確定步驟還可能包括參照消息傳送策略數(shù)據(jù)的步驟,消息傳送策略數(shù)據(jù)定義可向其發(fā)送消息的代理的優(yōu)先級(jí)。這樣做有可能反映出市場(chǎng)發(fā)起人在消息發(fā)送上的策略。還有可能轉(zhuǎn)換該數(shù)據(jù),從而不是參照用戶指定的優(yōu)先目的地信息而是參照消息傳送策略數(shù)據(jù)來確定消息的目的地。
此外,在一種實(shí)施例中,在確定步驟里通過利用消息傳送策略數(shù)據(jù)所定義的代理優(yōu)先級(jí)和利用用戶指定的優(yōu)先目的地信息中包含的代理名及優(yōu)先級(jí)對(duì),從具有最高優(yōu)先級(jí)的代理確定目的地。
為每種類型的消息定義消息傳送策略數(shù)據(jù),并且還可以定義每種類型的消息要發(fā)送到的代理的數(shù)量。這是因?yàn)樗璧南㈩愋涂呻S商店代理不同而不同。另外,通過考慮系統(tǒng)的負(fù)載,確定要發(fā)送到的代理的數(shù)量。
還可以包括步驟向代表代理發(fā)送有關(guān)未確定成目的地的代理的信息和消息,代表代理代表可對(duì)它們發(fā)送消息的代理。這允許來自低優(yōu)先級(jí)的代理的信息,對(duì)這些低優(yōu)先級(jí)代理未發(fā)送從該代表代理得到的消息,從而可在減小系統(tǒng)負(fù)載下得到來自系統(tǒng)上所存在的代理的信息。
同時(shí),通過參照來自可對(duì)它們發(fā)送消息的預(yù)登記代理的信息,代表代理為消息源生成應(yīng)答消息。
如上述,本發(fā)明是以一種處理流表示的,然而本發(fā)明也可能用執(zhí)行上述處理的計(jì)算機(jī)、計(jì)算機(jī)程序、電路或部件來實(shí)現(xiàn)。此外,當(dāng)用計(jì)算機(jī)程序?qū)崿F(xiàn)時(shí),可以在諸如CD-ROM或軟盤的存儲(chǔ)媒體上存儲(chǔ)該計(jì)算機(jī)程序。
圖1是本發(fā)明的功能框圖。
圖2解釋圖1中所示的功能框圖的操作。
圖3解釋顧客代理9。
圖4示出一個(gè)屏幕示例,用于輸入顧客代理9中的檢索條件。
圖5示出一個(gè)屏幕示例,用于輸出顧客代理9的檢索結(jié)果。
圖6表示一個(gè)帶有優(yōu)先目的地信息的消息的例子。
圖7解釋商店代理7。
圖8解釋在消息監(jiān)視器5上為了預(yù)約登記商店代理7的過程。
圖9示意表示把商店代理7的商品DB的DB復(fù)制成代表代理11的公用DB。
圖10是商店代理7的商品DB的DB模式示例。
圖11表示消息傳送策略15的一個(gè)示例。
圖12表示會(huì)話規(guī)則13的一個(gè)示例。
圖13解釋消息監(jiān)視器5。
圖14是一個(gè)流程圖,表示生成消息目的地表的處理。
圖15表示一個(gè)示例,用于解釋消息目的地表的生成。
圖16解釋用于代表代理11的消息。
圖17解釋代表代理11。
圖18表示代表代理11的商品表(公用DB)的DB模式的一個(gè)示例。
圖19是一個(gè)流程圖,解釋對(duì)來自商店代理7的登記商品表的請(qǐng)求的處理。
圖1表示本發(fā)明所需的功能塊。代理服務(wù)器1和網(wǎng)絡(luò)3連接。圖中未示出的計(jì)算機(jī)和網(wǎng)絡(luò)3連接,其中包括進(jìn)入本發(fā)明中的市場(chǎng)的顧客代理9的擁有者的計(jì)算機(jī)。此外,市場(chǎng)上的商店代理7的擁有者的計(jì)算機(jī)也可和網(wǎng)絡(luò)3連接。代理服務(wù)器1具有用于圖中未示出的代理的執(zhí)行環(huán)境,圖中商店代理7、顧客代理9和代表代理11是現(xiàn)用的。消息監(jiān)視器5控制在代理間發(fā)送的消息,它是本發(fā)明的中心部。消息監(jiān)視器5查閱用于交互作用13的規(guī)則以及消息傳送策略15的規(guī)則。交互作用13的各規(guī)則說明代理服務(wù)器1上可使用的消息的格式,通過該市場(chǎng)中的消息依據(jù)這些規(guī)則生成的代理可以和其它代理交互。另外,雖然不和本發(fā)明直接相關(guān),還可以判定來自某代理的消息是否和交互作用13的規(guī)則相容。此外,盡管出于便于解釋的目的,圖1示出一個(gè)顧客代理9和一個(gè)商店代理7,通常它們以多個(gè)存在。也可能設(shè)置多個(gè)代表代理11。
圖2表示圖1中示出的代理服務(wù)器1中的各構(gòu)件的運(yùn)行。首先,顧客代理9向消息監(jiān)視器5發(fā)送帶有優(yōu)先目的地信息的檢索請(qǐng)求消息(步驟101)。優(yōu)先目的地信息是和用戶的“興趣”對(duì)應(yīng)的信息,并表示最好應(yīng)向哪些代理發(fā)送消息。該實(shí)施例中的檢索請(qǐng)求是對(duì)旅行信息的檢索請(qǐng)求,例如旅行社的旅游信息和機(jī)票信息。當(dāng)接收帶有優(yōu)先目的地信息的檢索請(qǐng)求消息時(shí),消息監(jiān)視器5確定目的地代理(步驟103)。此刻,它查閱從顧客代理9接收的優(yōu)先目的地信息以及消息傳送策略15的數(shù)據(jù)。后面詳細(xì)解釋該處理。它向確定為目的地的商店代理7發(fā)出檢索請(qǐng)求消息(步驟105)。接著,商店代理7執(zhí)行檢索處理并向消息監(jiān)視器5發(fā)送商品信息提供消息(步驟107)。該商品信息提供消息被發(fā)送到顧客代理9(步驟109)。
如果只通過參照代表市場(chǎng)運(yùn)營策略的消息傳送策略15以及用戶指定的優(yōu)先目的地信息確定消息目的地,則會(huì)存在不對(duì)它們發(fā)送消息的商店代理。然而事實(shí)上這樣的商店代理可能具有對(duì)用戶有用的信息。從而,代表代理11代表不向它們發(fā)送消息的商店代理作出響應(yīng)。這樣,在代表代理11中登記商店代理7的至少一部分的商品信息。從消息監(jiān)視器5向代表代理11發(fā)送一個(gè)帶有未在消息監(jiān)視器5指定成目的地代理的商店代理的列表(代表代理11的候選商店列表)的檢索請(qǐng)求消息(步驟111)。在代表代理11處,對(duì)它保存的信息進(jìn)行檢索處理,生成商品信息提供消息并發(fā)送到消息監(jiān)視器(步驟113)。消息監(jiān)視器5把來自代表代理11的商品信息提供消息傳送到顧客代理9(步驟115)。
下面詳細(xì)說明多個(gè)構(gòu)件的配置和處理。
在本實(shí)施例中,顧客代理9是一個(gè)移動(dòng)代理,并且是根據(jù)面向?qū)ο蟮募夹g(shù)產(chǎn)生的。這樣可以大致把它分為二個(gè)部分對(duì)象數(shù)據(jù)90和過程91(程序)(圖3)。用戶接口92是數(shù)據(jù)的一部分。數(shù)據(jù)90包括檢索信息、商品表(在保存檢索結(jié)果的情況下)及優(yōu)先目的地信息。優(yōu)先目的地信息包括商店ID和與商店ID對(duì)應(yīng)的加權(quán)(優(yōu)先級(jí))。優(yōu)先目的地信息可包括一個(gè)或多個(gè)代理。過程91包括輸入屏幕顯示過程、輸出屏幕顯示過程、檢索請(qǐng)求消息發(fā)布過程、商品信息接收過程等。此外,可能包括商品選擇過程和優(yōu)先目的地信息更新過程。
輸入屏幕顯示過程輸出用于在用戶接口上輸入檢索條件的屏幕,例如如圖4中所示。該屏幕是在用戶的計(jì)算機(jī)上顯示的屏幕。由于本實(shí)施例示出作為例子的對(duì)旅行信息的檢索,“CATEGORY(目錄)”是有關(guān)旅行社旅游還是有關(guān)機(jī)票的信息?!澳康牡亍笔且粋€(gè)地名,例如Honolulu或Bangkok?!白罡邇r(jià)”表示機(jī)票等的上限和?!皟?yōu)先”是優(yōu)先目的地信息,它是按商店代理ID和商店代理優(yōu)先級(jí)對(duì)輸入的。若按“搜索”鍵,把顧客代理9發(fā)送到代理服務(wù)器1。
另一方面,輸出屏幕顯示過程在用戶接口中輸出檢索結(jié)果輸出屏幕,如圖5中所示。在用戶的計(jì)算機(jī)上一并顯示商品信息接收過程接收到的各個(gè)商品信息提供消息。在圖5中,商店代理1應(yīng)答JL航空公司對(duì)HNL(Honolulu的簡(jiǎn)稱)的100,800日元的票價(jià),而商店代理2應(yīng)答UA航空公司對(duì)HNL的98,000日元的票價(jià)。通過按各行上設(shè)置的細(xì)節(jié)鈕,顯示更詳細(xì)的信息。
在檢索請(qǐng)求消息發(fā)布過程中,生成如圖6中示出的帶有優(yōu)先目的地信息的檢索請(qǐng)求消息并發(fā)送到消息監(jiān)視器5。圖6(a)示出一個(gè)一般的帶有優(yōu)先目的地信息的檢索請(qǐng)求消息?!癕essage”部分包括消息名(類型),該消息中的一個(gè)參數(shù)及其值。另一方面,“Preference”部分包括作為一對(duì)的商店ID和加權(quán)信息。例如,生成和圖6(b)中所示的帶有優(yōu)先目的地信息的檢索請(qǐng)求消息。至于圖6(b),其中消息命名為RequestTravelGood,即對(duì)檢索旅行商品的請(qǐng)求,同時(shí)Requirements表示檢索條件。在該情況中,總共收集20個(gè)檢索結(jié)果。另一方面,“Preference”部分示出代理1的加權(quán)為20,代理2的加權(quán)為10。
至于檢索信息接收過程,由于它接收和存儲(chǔ)來自消息監(jiān)視器7的消息,從而不對(duì)其作出更多的說明。若檢索結(jié)果多于指定的最高數(shù)量,可能拋棄超過指定數(shù)量的部分。
圖7表示商店代理7的細(xì)節(jié)。在本實(shí)施例中,商店代理7類似于顧客代理9也是一個(gè)移動(dòng)代理,并且是根據(jù)面向?qū)ο蟮募夹g(shù)產(chǎn)生的。從而,它大致可分成數(shù)據(jù)70和過程(程序)71。用戶接口72是數(shù)據(jù)部分70的一部分。數(shù)據(jù)70包括一個(gè)商品表數(shù)據(jù)庫。同樣,過程71包括向消息監(jiān)視器登記的過程、檢索條件接收過程、商品數(shù)據(jù)檢索過程、商品信息發(fā)送過程、公用DB登記屏幕顯示過程、公用DB登記過程等。用戶接口72包括由公用DB登記屏幕顯示過程使用的公用DB登記屏幕。此外,公用DB是由代表代理容納的數(shù)據(jù)。
向消息監(jiān)視器登記的過程是一個(gè)當(dāng)消息到達(dá)代理服務(wù)器1時(shí)用于登記要向商店代理7傳送消息的哪種類型的過程。圖8示出細(xì)節(jié)。其代理ID為代理1的商店代理7在登記時(shí)輸出一個(gè)預(yù)約請(qǐng)求(步驟121)。該預(yù)約請(qǐng)求包括要傳送的消息名(MessageType)。此外,它還可能在消息中指定目標(biāo)。在圖8的示例中,MessageType是RequestTravelGoods(旅行信息請(qǐng)求消息),而且其中的目標(biāo)是AirTicket(機(jī)票)。消息監(jiān)視器5在它自己的表中登記接收到的請(qǐng)求內(nèi)容(步驟123)。更普遍地,商店代理7更新該表的內(nèi)容,因?yàn)樵谔幚淼闹型舅梢愿淖兊怯浀膬?nèi)容。
不對(duì)檢索條件接收過程、商品數(shù)據(jù)檢索過程以及商品信息發(fā)送過程做更多的說明,因?yàn)樗鼈兒统R?guī)過程沒有差別。
公用DB登記屏幕顯示過程顯示公用DB登記屏幕,它表示商店代理7的擁有者至少登記了它的一部分商品表。圖9中示例表示的公用DB登記過程把各商店代理7擁有的商品信息數(shù)據(jù)庫的信息拷貝到代表代理11的公用數(shù)據(jù)庫中,以在商店代理7未被選擇成目的地時(shí)使用。從而公用DB登記過程執(zhí)行請(qǐng)求代表代理11拷貝至少一部分商品表的處理。
這里對(duì)要拷貝到公用DB中的商品數(shù)據(jù)庫做一些解釋。圖10表示商店代理7的商品表的DB模式的一個(gè)例子。圖10(a)概略地說明每欄的類型。在其中定義一個(gè)Common欄,它的值為真或假。Common欄表示把為真的一行數(shù)據(jù)拷貝到公用數(shù)據(jù)庫。把Common欄設(shè)成真還是假是在生成商店代理7時(shí)預(yù)先確定的。圖10(b)是一個(gè)AirTicket(機(jī)票)的例子,其中定義離港、到港1至3、航班、價(jià)格、票型、等級(jí)和Common。
接著,利用圖11解釋消息傳送策略15。消息傳送策略15表示代理服務(wù)器1中的市場(chǎng)營運(yùn)策略。營運(yùn)策略包括一項(xiàng)政策,即,來自某顧客代理的必須傳送到某特定商店代理的消息,或者,某特定商店代理總是固定加權(quán)時(shí)根據(jù)該加權(quán)發(fā)送的消息,等等。由該加權(quán)顯示的商店代理的優(yōu)先權(quán)可基于向市場(chǎng)開辦人支付的營業(yè)費(fèi)或該商店代理提供的服務(wù)內(nèi)容中的一種,還可能通過研究代理服務(wù)器1的整個(gè)系統(tǒng)的處理負(fù)載,規(guī)定響應(yīng)一個(gè)顧客代理的一條消息所發(fā)送的消息的數(shù)量。圖11(a)表示對(duì)消息傳送策略的概括說明。MassageType規(guī)定覆蓋的消息類型,MaxNumber規(guī)定對(duì)它們發(fā)送某消息的代理的最大數(shù)量,Mandatory規(guī)定必須對(duì)它發(fā)送消息的代理,而Priority規(guī)定對(duì)其余的代理發(fā)送消息的加權(quán)。優(yōu)先級(jí)由代理ID和加權(quán)對(duì)表示。圖11(b)是本實(shí)施例中的一個(gè)示例,它覆蓋RequestAirTicket,其中最多向3個(gè)商店代理發(fā)送消息,必須向它們發(fā)送消息的代理是代理3和代理4。代理1、代理2和代理5的加權(quán)分別是10、30、50。
圖12表示會(huì)話規(guī)則13的一個(gè)例子。會(huì)話規(guī)則13確定代理服務(wù)器1的市場(chǎng)中的所謂的語言。即,除非消息的格式在代理間相配合則不能完成會(huì)話(交互),要定義這樣的消息格式。該格式還包括發(fā)布消息的次序。也有可能使消息監(jiān)視器5通過參照會(huì)話規(guī)則13確定是否要發(fā)布不正確的消息,或規(guī)定是否以不正確的次序發(fā)布消息。若檢測(cè)出不正確的消息,可舍棄掉。在圖12中,MessageType表示應(yīng)以什么樣格式和什么樣的次序發(fā)布的消息?!睞,B〕指示從A向B發(fā)布。這里,在Category中表示AirTicket的數(shù)據(jù)格式。Enum<字符串>{}意味中從{}中的字符串的選擇。由于會(huì)話規(guī)則不和本發(fā)明直接相關(guān),不對(duì)會(huì)話規(guī)則做更多的解釋。
下面通過利用圖13解釋消息監(jiān)視器5。和代理一樣,消息監(jiān)視器5包括數(shù)據(jù)51和過程(程序)52。數(shù)據(jù)部分51包括通過圖8解釋過的預(yù)約表、對(duì)會(huì)話協(xié)議13的引用及對(duì)消息傳送策略15的引用。過程52包括對(duì)本發(fā)明之外的普通報(bào)文的接收過程、目的地代理確定過程、消息傳送過程、向代表代理發(fā)送消息的過程等。接收普通報(bào)文的過程和常用的相同,從而本文不作解釋。
接收帶有優(yōu)先目的地信息的消息的過程執(zhí)行已參照?qǐng)D6解釋過的對(duì)帶有優(yōu)先目的地信息的消息的接收處理。若接收帶有優(yōu)先目的地信息的消息,把該消息傳送給目的地代理確定過程。
消息傳送過程把消息象普通報(bào)文那樣發(fā)送到目的地代理,并把來自商店代理的應(yīng)答消息發(fā)送到目的地顧客代理。它還把來自代表代理的應(yīng)答消息發(fā)送到目的地顧客代理。
參照?qǐng)D14解釋目的地代理確定過程。在本實(shí)施例中,通過參照消息傳送策略15以及消息上附有的優(yōu)先目的地信息定位一條有關(guān)消息名的條目。其中,指定為Mandatory的代理(意味著必須向它發(fā)送)被放在目的地表中(步驟131)。雖然在上面的例子中把Mandatory(強(qiáng)制的)目的地定義到消息傳送策略15中,也可把它定義到優(yōu)先目的地信息中。從MaxNumber中減去指定成Mandatory的代理的數(shù)量,最大數(shù)量的目的地是在消息傳送策略15中定義的,并把其值放在MaxNumber中(步驟133)。接著,把該MaxNumber和優(yōu)先目的地信息中的代理數(shù)量進(jìn)行比較(步驟135)。若優(yōu)先目的地信息中的代理數(shù)量大于MaxNumber,不能向優(yōu)先目的地信息中指定的每個(gè)代理發(fā)送消息。從而,從優(yōu)先目的地信息中選擇數(shù)量等于MaxNumber的代理并添加到目的地表中(步驟143)。此時(shí),根據(jù)優(yōu)先目的地信息中定義的代理加權(quán)(優(yōu)先級(jí))作出選擇。也有可能參照消息傳送策略。即,順序地選取加權(quán)值為最高的MaxNumber個(gè)代理。也可能設(shè)計(jì)成以隨機(jī)的并以對(duì)加權(quán)值計(jì)算的概率進(jìn)行選擇。這樣,即使它的優(yōu)先級(jí)低仍可能發(fā)送消息,并且具有相同優(yōu)先目的地信息的消息可能具有與以前的消息不同的目的地。例如,若代理1定義成加權(quán)是10,代理2的加權(quán)是30,代理3的加權(quán)是50,則代理1的概率是1/9,代理2的概率是1/3,而代理5的概率是5/9。
另一方面,若MaxNumber大于優(yōu)先目的地信息中的代理數(shù)量,則把優(yōu)先目的地信息中的代理(m個(gè))添加到目的地表中(步驟137)。接著從MaxNumber中減去m,并把得到值放在MaxNumber中。若減去后MaxNumber的值為0,終止處理(步驟139)。另一方面,若MaxNumber大于0,根據(jù)加權(quán)(優(yōu)先級(jí))在消息傳送策略中的優(yōu)先級(jí)域中選擇MaxNumber個(gè)代理并添加到目的地表(步驟141)。步驟141類似步驟143隨機(jī)選擇,但概率可以從加權(quán)值計(jì)算出。這樣,根據(jù)優(yōu)先目的地信息和消息傳送策略15把代理放在目的地中,并且向目的地表中的代理發(fā)送消息。
該流程沒有假設(shè)被指定為Mandatory的某代理也在優(yōu)先目的地信息中被指定的情況。在這種情況下,可以在步驟133后包括一個(gè)檢驗(yàn)重復(fù)的步驟。若存在重復(fù),可以按重復(fù)代理的數(shù)量減少步驟135中的優(yōu)先目的地信息里的代理數(shù)量。
圖15表示一個(gè)具體的例子。在帶有優(yōu)先目的地信息的消息的例(a)中,代理5的加權(quán)定為20,代理4的加權(quán)定為10。另外,因?yàn)樵搸в袃?yōu)先目的地信息的消息的消息名是RequestTravelGoods并且它的Category是AirTicket,消息傳送策略15的MessageType參照RequestAirTicket字段(圖15(b))。在圖15(b)中,要發(fā)送到的代理的最大數(shù)量(MaxNumber)為3,并且把代理3和代理4指定成必須向它們發(fā)送的代理。此外,在優(yōu)先級(jí)字段里,代理1的加權(quán)為10,代理2的加權(quán)為30,代理5的加權(quán)是50。
首先,因?yàn)楸仨殞?duì)它們發(fā)送消息的代理是代理3和代理4,先把它們添加到目的地表上。接著,MaxNumber=3-2=1,其小于優(yōu)先目的地信息中的代理數(shù)量,從而,代理5和代理4中具有較大加權(quán)值的代理被加到目的地表中。但是,優(yōu)先目的地信息中所包括的代理4已存在于目的地表中。因此,自動(dòng)地把代理5加到目的地表中,并完成如15(c)所示的目的地表。
在向代表代理發(fā)送消息的過程中,在生成上述目的地表后發(fā)送圖16中所示的消息。圖16(a)示出總格式。Message部分和顧客代理輸出的消息相同。此外,List部分是未加到目的地表上的代理的表。例如,如圖16(b)中所示,五個(gè)代理中的代理3、代理4及代理5被加到圖15的示例的目的地表中。從而,代理1及代理2被加到要發(fā)送給代表代理的信息的List部分中。
圖17表示代表代理11的配置。代表代理11也包括數(shù)據(jù)93和過程(程序)94。數(shù)據(jù)包括商品表(公用DB)以及若由消息監(jiān)視器5發(fā)送的商店表。過程包括檢索條件接收過程、商品數(shù)據(jù)檢索過程、商品信息發(fā)送過程、商品表登記過程等。
圖18表示商品表(公用DB)的DB模式的一個(gè)示例。圖18(a)表示規(guī)定各欄的類型的總格式。在該公用DB中,定義代理ID欄,從而各欄示出其商品信息來自哪個(gè)代理。圖18(b)是一個(gè)AirTicket(機(jī)票)的例子。
代表代理11從商店代理11接收對(duì)該商店代理保存的至少一部分的商店信息的登記請(qǐng)求。響應(yīng)登記請(qǐng)求,執(zhí)行商品表登記過程(圖19)。若接收來自商店代理(帶有代理ID)的登記請(qǐng)求(步驟151),從公用DB刪除其代理欄和輸入的代理ID匹配的記錄(步驟153)。接著,從該商店代理的DB,提取Common欄為真的記錄(步驟155)。把提取的記錄加到商品表(公用DB)中(步驟157)。在第一次登記的情況下,可省略步驟153,因?yàn)樗鼰o意義。
對(duì)于代表代理11,由于檢索條件接收過程、商品數(shù)據(jù)檢索過程及發(fā)送檢索得到的商品信息的過程和常規(guī)技術(shù)沒有差異,略去對(duì)它們的說明。然而在商品數(shù)據(jù)檢索過程中,檢索條件既包括消息中含有的條件還包括來自消息監(jiān)視器5的代理表中所含有的代理ID。
如上述,在本實(shí)施例中,通過參照用戶指定的優(yōu)先目的地信息以及參照反映市場(chǎng)營運(yùn)策略的消息傳送策略15可以縮小消息目的地代理。此外,即使不指定目的地,因?yàn)榇泶碇辽偬娲怂鼈冎械囊徊糠?,可把信息檢索的遺漏保持為最少。
然而,上述實(shí)施例僅是一個(gè)示例,從而各種變型是可能的。例如,說明了在與網(wǎng)絡(luò)3連接的計(jì)算機(jī)和代理服務(wù)器1之間往返的商店代理7和顧客代理9的配置。但是,例如有可能,在代理服務(wù)器1上生成顧客代理,并且例如在顧客代理和顧客計(jì)算機(jī)之間設(shè)置HTTP網(wǎng)關(guān),以便和在顧客計(jì)算機(jī)上運(yùn)行的Web瀏覽器通信。有關(guān)這方面的更多信息,請(qǐng)參閱IBM TDB Vol.40,No.08,p8.127-129,Aug.,1997。還有可能如在對(duì)會(huì)話規(guī)則13的描述中略作說明的那樣,提供一種附加的機(jī)制,以便檢驗(yàn)現(xiàn)用的某代理是否根據(jù)會(huì)話規(guī)則13發(fā)送消息。此外,代理服務(wù)器1不必只有一個(gè),也有可能在網(wǎng)絡(luò)上設(shè)置多個(gè),從而代理在代理服務(wù)器之中移動(dòng)。在代理服務(wù)器1可以存在多個(gè)市場(chǎng)。
此外,若存在多個(gè)市場(chǎng),廣告代理可以廣告市場(chǎng),從而使顧客代理到達(dá)其自己的市場(chǎng)。在這種情況下,消息監(jiān)視器5通過參照Message Type還在顧客代理和廣告代理間協(xié)調(diào)。另外,生成圖14中的目的地表的處理只是一個(gè)示例,也有可能在選擇Mandatory代理后,通過考察優(yōu)先目的地信息中的代理的加權(quán)和考察消息傳送策略15中的優(yōu)先級(jí)中的代理的加權(quán),對(duì)代理排序,以選擇數(shù)量為MaxNumber的代理?!脖景l(fā)明的優(yōu)點(diǎn)〕可以成功地提供反映著用戶指定的目的地代理“興趣”的消息發(fā)送功能。
另外,可以成功地提供反映著代理在其中運(yùn)行的市場(chǎng)營運(yùn)策略的消息發(fā)送功能。
而且,還可以通過控制要發(fā)送的消息的數(shù)量實(shí)現(xiàn)對(duì)系統(tǒng)負(fù)載的成功控制。
并且,可以成功地提供高適用性的代理技術(shù)和提供實(shí)現(xiàn)市場(chǎng)發(fā)起人的服務(wù)多樣性的技術(shù)。
權(quán)利要求
1.一種向代理多點(diǎn)傳播消息的方法,包括步驟接收用戶指定的優(yōu)先目的地信息和消息;通過參照所述優(yōu)先目的地信息確定向哪些代理發(fā)送所述消息;以及向確定成目的地的各代理發(fā)送所述消息。
2.依據(jù)權(quán)利要求1的方法,其中所述確定步驟還包括步驟參照消息傳送策略數(shù)據(jù),消息傳送策略數(shù)據(jù)定義可對(duì)其發(fā)送所述消息的代理的優(yōu)先級(jí)。
3.依據(jù)權(quán)利要求2的方法,其中為各種類型的消息定義所述消息傳送策略數(shù)據(jù)。
4.依據(jù)權(quán)利要求2的方法,其中所述消息傳送策略數(shù)據(jù)為各種類型的消息定義接收消息的代理的數(shù)量。
5.依據(jù)權(quán)利要求2的方法,其中所述確定步驟還包括步驟通過利用所述消息傳送策略數(shù)據(jù)中定義的所述代理的優(yōu)先級(jí)和通過利用所述優(yōu)先目的地信息中包括的代理名和優(yōu)先級(jí)對(duì),把具有最高優(yōu)先級(jí)的代理確定為目的地代理。
6.依據(jù)權(quán)利要求1或2的方法,還包括步驟向代表代理發(fā)送有關(guān)未確定為目的地代理的信息和所述消息,代表代理代表可對(duì)它們發(fā)送所述消息的代理。
7.依據(jù)權(quán)利要求6的方法,其中所述代表代理通過參照可對(duì)它們發(fā)送所述消息的預(yù)登記代理的信息,為消息的源代理生成應(yīng)答消息。
8.一種計(jì)算機(jī),包括用于各代理的執(zhí)行環(huán)境;以及一個(gè)消息監(jiān)視器,用于接收由用戶指定的優(yōu)先目的地信息和接收來自用于所述各代理的執(zhí)行環(huán)境中的現(xiàn)用代理的消息,用于通過參照所述優(yōu)先目的地信息確定向哪個(gè)代理發(fā)送所述消息,并用于向確定成目的地代理的各代理發(fā)送所述消息。
9.依據(jù)權(quán)利要求8的計(jì)算機(jī),還包括一個(gè)存儲(chǔ)消息傳送策略數(shù)據(jù)的存儲(chǔ)部件,消息傳送策略數(shù)據(jù)定義可向它們發(fā)送所述消息的代理的優(yōu)先級(jí)。
10.依據(jù)權(quán)利要求9的計(jì)算機(jī),其中所述消息監(jiān)視器,通過利用所述消息傳送策略數(shù)據(jù)中定義的所述代理優(yōu)先級(jí)并利用所述優(yōu)先目的地信息中包含的代理名和優(yōu)先級(jí)對(duì),把具有最高優(yōu)先級(jí)的代理確定為目的地代理。
11.依據(jù)權(quán)利要求8或9的計(jì)算機(jī),其中所述消息監(jiān)視器向代表代理發(fā)送有關(guān)未確定為目的地代理的代理的信息和所述消息,代表代理代表可對(duì)它們發(fā)送所述消息的代理。
12.一種用于存儲(chǔ)一種把消息多點(diǎn)傳播給多個(gè)代理的程序的存儲(chǔ)媒體,所述程序包括步驟接收用戶指定的優(yōu)先目的地信息和消息;通過參照所述優(yōu)先目的地信息確定向哪些代理發(fā)送所述消息;以及向確定成目的地的各代理發(fā)送所述消息。
13.依據(jù)權(quán)利要求12的存儲(chǔ)媒體,其中所述確定步驟還包括步驟參照消息傳送策略數(shù)據(jù),消息傳送策略數(shù)據(jù)定義可對(duì)其發(fā)送所述消息的代理的優(yōu)先級(jí)。
14.依據(jù)權(quán)利要求12或13的存儲(chǔ)媒體,其中所述程序還包括步驟向代表代理發(fā)送有關(guān)未確定為目的地代理的代理的信息和所述消息,代表代理代表可對(duì)它們發(fā)送所述消息的代理。
15.一種向多個(gè)代理多播消息的方法,其包括步驟接收消息;通過參照消息傳送策略數(shù)據(jù)確定對(duì)它們發(fā)送所述消息的代理,消息傳送策略數(shù)據(jù)定義可對(duì)其發(fā)送所述消息的代理的優(yōu)先級(jí);以及向確定為目的地的各代理發(fā)送所述消息。
16.一種用于存儲(chǔ)一種把消息多點(diǎn)傳播給多個(gè)代理的程序的存儲(chǔ)媒體,所述程序包括步驟接收消息;通過參照消息傳送策略數(shù)據(jù)確定對(duì)它們發(fā)送所述消息的代理,消息傳送策略數(shù)據(jù)定義可對(duì)其發(fā)送所述消息的代理的優(yōu)先級(jí);以及向確定為目的地的各代理發(fā)送所述消息。
全文摘要
提供一種反映用戶指定的目的地代理中的“興趣”并反映這些代理營運(yùn)的市場(chǎng)的策略的消息發(fā)送功能。當(dāng)向各代理多點(diǎn)傳播消息時(shí),消息監(jiān)視器執(zhí)行步驟接收用戶指定的優(yōu)先目的地信息和消息;通過參照優(yōu)先目的地信息確定向哪些代理發(fā)送消息;向確定成目的地的各代理發(fā)送消息。目的地確定步驟還可能包括參照消息傳送策略數(shù)據(jù)的步驟,消息傳送策略數(shù)據(jù)定義可向它們發(fā)送消息的代理的優(yōu)先級(jí)。
文檔編號(hào)G06Q50/00GK1239791SQ9910708
公開日1999年12月29日 申請(qǐng)日期1999年5月27日 優(yōu)先權(quán)日1998年6月24日
發(fā)明者中村佑一, 山本學(xué) 申請(qǐng)人:國際商業(yè)機(jī)器公司