即時互動功能模塊總體框架設(shè)計_第1頁
即時互動功能模塊總體框架設(shè)計_第2頁
即時互動功能模塊總體框架設(shè)計_第3頁
即時互動功能模塊總體框架設(shè)計_第4頁
即時互動功能模塊總體框架設(shè)計_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、即時互動功能模塊總體框架設(shè)計一、項目選型公司確定所開發(fā)的Web Platform的基本原則就是個性化和互動性。平臺應(yīng)允許用戶通過Portal門戶定制自己Web page的顯示風(fēng)格,創(chuàng)辦自己的Blog和論 壇,并能有針對性地挑選自己感興趣的內(nèi)容,而剔除自己不關(guān)心的內(nèi)容,這是個性化的具 體體現(xiàn)。同時,用戶可以通過一些交互的界面提交或獲取相關(guān)的信息,以及訂購、咨詢、討論、 回復(fù)等相關(guān)動作就能實現(xiàn)互動性。在互動性中我們還必須考慮一個實時性的問題,原有的 E-Mail和Blog只能提供一種非實時的互動交流,故即時互動就成為必要。在“即時互動功能模塊項目需要和技術(shù)分析”中,已經(jīng)對當(dāng)前主要的即時互動的技 術(shù)

2、作了一些簡單的分析,確定采用Instant Message技術(shù),(即IM,也叫即時通信)。在IM系統(tǒng)應(yīng)用中,服務(wù)提供商維護(hù)IM Server,而普遍用戶需要下載IM Client,當(dāng)用 戶通過IM Client登錄到IM Server后,IM Client和IM Server間就保持一種長連接,這樣IM Client就能實時把信息發(fā)送到IM Server上,同時,IM Server也能把用戶信息實時地轉(zhuǎn)發(fā)到 IM Client上,這樣就達(dá)到了即時互動的目的。目前,即時通信已經(jīng)是互聯(lián)網(wǎng)上一個相對成熟的技術(shù),許多服務(wù)提供商都已經(jīng)開發(fā)出大 量的即時通信產(chǎn)品,象美國在線公司的“AIM”、美國微軟的“M

3、SN”、美國雅虎的“雅虎 通”、中國騰訊公司的“QQ”等等。由于公司的總體構(gòu)想是建一個Web Platform,而不只是做一個IM產(chǎn)品,所以我們擬 選擇一種開放源碼的方式搭建自己的即時互動功能模塊。二、框架設(shè)計前面我們已經(jīng)討論過,即時互動模塊只是公司W(wǎng)eb Platform眾多模塊中的一個子模塊, 主要是為整個平臺服務(wù),而不只是一個單獨(dú)的應(yīng)用產(chǎn)品,所以我們在設(shè)計時必須考慮到集 成性,和其它功能模塊的數(shù)據(jù)、信息共享。IM ClientIM ClientPortalPage啟動關(guān)聯(lián)數(shù)據(jù)庫圖1即時互動模塊的總體框架這樣我們可以分兩部分對即時互動功能模塊進(jìn)行總體上的設(shè)計,一,即時互動模塊本身 可以是一

4、個獨(dú)立的IM系統(tǒng),應(yīng)具有IM系統(tǒng)所要求的功能;二,由于是為Web Platform 的互動性原則服務(wù),必須和其它模塊,主要是Portal進(jìn)行關(guān)聯(lián)。即時通信的功能即時通信支持用戶在線實時交流。如果要發(fā)送一條信息,用戶需要打開一個小窗口,以 便讓用戶及其朋友在其中輸入信息,并讓交談雙方都看到交談的內(nèi)容。即時通信程序應(yīng)具有如下功能:1,實時登錄或注毀2,在線狀態(tài)顯示3,增加或刪除好友4,好友列表的管理5,即時交談6,自定義聊天室7,表情符號8,網(wǎng)頁鏈接9,支持圖片10,支持聲音11,支持文件傳輸12,支持視頻13,當(dāng)然我們的即時通信功能模塊主要是為了 Web Platform的互動性而設(shè)計,而不是一

5、個 真正意義上的、獨(dú)立功能的IM系統(tǒng),所以我們只會實現(xiàn)部分功能,以后續(xù)的產(chǎn)品中會逐漸 增加必要的功能。和其它模塊的關(guān)聯(lián)即時互動功能模塊是Web Platform模塊中的一個子模塊,它和其它模塊有著一定的聯(lián) 系,具體的關(guān)聯(lián)如下:1,通過Portal中Web page注冊用戶相關(guān)信息,包括用戶名和密碼。2,和Web Platform中的其它模塊共享注冊用戶。也就是說,一旦用戶在Web Platform 中注冊成功后,就可以登錄到所有模塊中。3,用戶信息表中能記錄IM的登錄狀態(tài),當(dāng)用戶登錄Portal時,能通過頁面展示顯示 對方的IM登錄狀態(tài)信息。4,用戶能通過Portal啟動IM系統(tǒng),如果對方也啟

6、動IM,就能直接進(jìn)行交談。5,用戶也能通過IM系統(tǒng)去啟動Portalo6,當(dāng)對方?jīng)]有登錄到IM的時候,所發(fā)送的消息均為離線消息,IM Server將會通過 Portal Server或直接操作數(shù)據(jù)庫把離線消息寫入數(shù)據(jù)庫中。7,當(dāng)對方以后登錄上IM時,離線消息會彈出。8,或當(dāng)對方一旦登錄上Portal時,會在Web page上提示有離線消息到達(dá),理想的情況, 還能通過Web page展示這些離線消息。9,通過IM系統(tǒng)中的頻道,進(jìn)行啟動Web Platform中的其它功能,如短消息的發(fā)送 和接收等。10,作為一個統(tǒng)一的集成應(yīng)用平臺,各功能模塊應(yīng)是一個有機(jī)的整體,即時互動功能模塊如 何和其它功能模塊

7、整合,也是我們在設(shè)計和開發(fā)的過程中所必須考慮的。三、功能流程設(shè)計根據(jù)總體的框架,即時互動功能模塊從邏輯上可以分成兩個部分,一是可以作為一個獨(dú) 立的即時通信系統(tǒng);二是作為Web Platform的子模塊,給應(yīng)用平臺提供即時互動的交流功能匕。即時通信的功能流程1,啟動IM Client Application,必要的時候需要進(jìn)行服務(wù)器的配置。2,先要進(jìn)行登錄,只有登錄成功后才可以進(jìn)行下面的操作。3,作為即時通信系統(tǒng),先要確定交流的對象是誰,一般都有一個添加好友的過程。4,對方接受“添加好友”后,就會加到自己的好友列表中。啟動Portal加入好友列表頁面瀏覽真絲貢被128賣家:劉蛆禮品5,點擊好友列

8、表中的好友名單,系統(tǒng)會彈出一個即時聊天的窗口,雙方就可以進(jìn)行實 時交流了。點擊好友實時交流實時交流注銷登錄結(jié)束圖2即時通信的功能流程6,如果對方當(dāng)時不在線,或網(wǎng)絡(luò)故障,實時消息會作為離線消息保存,當(dāng)對方登錄時,離線消息應(yīng)能自動顯示。7,當(dāng)用戶注銷當(dāng)前的登錄過程,即Logout后,當(dāng)前的操作結(jié)束。互動集成功能流程本節(jié)主要描述即時互動模塊和其它模塊間集成后的主要功能流程。1,用戶登錄到Portal,并瀏覽相關(guān)的網(wǎng)頁。2,當(dāng)用戶通過用戶管理模塊看到相關(guān)的好友列表;或在相關(guān)的網(wǎng)頁上看到需要進(jìn)行交 流的用戶。(在理想的情況下,頁面應(yīng)能反映出對方的在線G離線狀態(tài),包括用戶IM 的登錄狀態(tài))。3,用戶點擊好

9、友列表或相關(guān)的連接,如“和我聯(lián)系”、“給我留言”等。4,Portal頁面將檢查當(dāng)前機(jī)器中是否安裝了 IM客戶程序。5,如果沒有安裝,則跳轉(zhuǎn)到IM客戶端軟件下載安裝頁面,由用戶自己決定是否需要 下載并安裝。登錄Portal /真絲貢被128賣家:劉蛆禮品 g和我聯(lián)系.圖3互動集成的功能流程6,如果已經(jīng)安裝了,就啟動IM客戶端程序,并把對方的用戶號或相關(guān)的參數(shù)傳入IM 客戶端應(yīng)用程序中。7,IM客戶端彈出交流窗口,用戶就能發(fā)送信息。8,如果對方也登錄到IM上,則可以和對方進(jìn)行實時交流。9,如果對方?jīng)]有登錄到IM上,剛IM Server會把信息存入數(shù)據(jù)庫中,作為離線消息來 處理。10,當(dāng)對方登錄到P

10、ortal上時,理想情況下,Portal頁面應(yīng)能提示用戶有離線消息收到, 是否需要查看?11,當(dāng)用戶點擊“查看離線消息”時,頁面應(yīng)能跳轉(zhuǎn)到離線消息查看頁面,讓用戶查 看離線消息。四、模塊總體設(shè)計根據(jù)功能需求,即時互動功能模塊應(yīng)包括如下幾個部分:1,客戶端和服務(wù)器間的通信傳輸協(xié)議2,客戶端應(yīng)用程序3,服務(wù)器應(yīng)用程序4,服務(wù)器和后臺數(shù)據(jù)庫的設(shè)計5,客戶端和Portal等模塊的關(guān)聯(lián)設(shè)計客戶端和服務(wù)器間的通信傳輸協(xié)議目前在互聯(lián)網(wǎng)應(yīng)用中,已經(jīng)有了許多成熟的、商業(yè)的IM系統(tǒng),有的采用內(nèi)部自定義的 通信傳輸協(xié)議,有的則采用通用的,甚至標(biāo)準(zhǔn)的通信傳輸協(xié)議。常用的即時通信傳輸協(xié)議有:即時通訊對話初始協(xié)議和表示擴(kuò)

11、展協(xié)議(SIMPLE)。SIMPLE協(xié)議SIP協(xié)議指定了 一整套架框和擴(kuò)展方面的規(guī)范,而SIP是一種網(wǎng)際電話協(xié)議,可用于支持IM消息 表示。Jabber協(xié)議。Jabber是一種開放的、基于XML的協(xié)議,用于即時通訊消息的傳輸 和表示。它的關(guān)鍵理念是“傳輸”,也叫“網(wǎng)關(guān)”,支持用戶使用其它協(xié)議訪問網(wǎng)絡(luò)。即時通訊通用結(jié)構(gòu)協(xié)議(CPIM)。CPIM定義了通用協(xié)議和消息的格式,即時通訊 和顯示服務(wù)都是通過CPIM來達(dá)到IM系統(tǒng)的協(xié)作。網(wǎng)際轉(zhuǎn)發(fā)聊天協(xié)議(IRCP)。IRCP支持兩個客戶計算機(jī)之間、一對多客戶計算機(jī)和 服務(wù)器對服務(wù)器之間的通信。可擴(kuò)展通訊和表示協(xié)議(XMPP)。XMPP用于流式傳輸準(zhǔn)實時通

12、信、表示和請求、 響應(yīng)服務(wù)等的XML元素,它是基于Jabber協(xié)議,是用于即時通訊的一個開放且常 用的協(xié)議。互聯(lián)網(wǎng)技術(shù)標(biāo)準(zhǔn)化組織IETF (互聯(lián)網(wǎng)工程任務(wù)組)已經(jīng)批準(zhǔn)基于XML的即時消息和在 場技術(shù)XMPP為互聯(lián)網(wǎng)標(biāo)準(zhǔn)。同時IT業(yè)界重量級公司Google也使用了 Jabber/XMPP協(xié)議設(shè)計Google Talk這個即時 通訊和VoIP軟件;而且眾多的IT業(yè)界企業(yè),包括蘋果、聯(lián)邦快遞、法國電信、惠普、葡 萄牙電信、Sun、Oracle等都正在使用Jabber/XMPP協(xié)議用為軟件的基層。所以,我們的即時互動功能模塊客戶端和服務(wù)器間也打算采用Jabber/XMPP協(xié)議。當(dāng)我們選擇了 Jabbe

13、r/XMPP標(biāo)準(zhǔn)的即時通信協(xié)議后,我們就可以針對我們的具體應(yīng)用開 發(fā)相關(guān)的應(yīng)用程序,包括客戶端和服務(wù)器,由于Jabber/XMPP協(xié)議的開發(fā)性、標(biāo)準(zhǔn)化,我 們能找到一些開源的應(yīng)用程序供選用或參考。客戶端應(yīng)用程序(列舉開源的應(yīng)用程序,及選擇的理由)Gaim寺寺程序功能符合我們的要求,模塊劃分比較清晰,開放性比較好,便于修改和完善、擴(kuò)充 新的功能等。服務(wù)器應(yīng)用程序(列舉開源的應(yīng)用程序,及選擇的理由)Jabber服務(wù)器等等程序功能符合我們的要求,模塊劃分比較清晰,開放性比較好,便于修改和完善、擴(kuò)充 新的功能,后臺采用的數(shù)據(jù)庫最好是MySQL等。客戶端和Portal等模塊的關(guān)聯(lián)設(shè)計和其它功能模塊集成的關(guān)鍵在于兩端,一是服務(wù)器,(見下節(jié)描述);二是客戶端,要能 被Browser啟動,并能接受Browser所傳遞的參數(shù)。Browser采用的是Http協(xié)議,通過Http協(xié)議從Web Server上獲取Html格

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論