消息在同一個系統(tǒng)中或者在不同的系統(tǒng)都可以要交互,因為工作都是要交流的,就拿企業(yè)的定單修改為例子,當(dāng)一個定單要修改,得通知不同的管理人員,當(dāng)然還要更可靠的消息(Email),在OA系統(tǒng)中,經(jīng)常要監(jiān)測消息,看是否有流程任務(wù)到達(dá)該用戶,有則提示消息。
下面是我做的一個小的服務(wù)器處理消息,功能如下:
1)??????
提供客戶端調(diào)用的接口(web services)
2)??????
編寫處理處理消息的類,消息現(xiàn)在包括
,
登陸消息、登出消息、消息發(fā)送,消息狀態(tài)的修改
登陸消息包括
:
客戶端的用戶名、
ip
、端口
;
登出消息包括
:
客戶端的用戶名,服務(wù)器將注銷客戶端登陸時發(fā)過來的消息
發(fā)送的消息包括
:
發(fā)送人,接受人,發(fā)送事件,發(fā)送的內(nèi)容
.
修改狀態(tài):包括消息的關(guān)鍵字ID
3)??????
在客戶端登陸的時候監(jiān)測是否是否有新消息,有則發(fā)送給客戶端
4)發(fā)送的消息如果接受用戶不在線,則保存該消息,等接受者登陸的時候再發(fā)送給接受者。
消息有一個狀態(tài)N表示新的消息,O表示已經(jīng)確認(rèn)的消息.
消息傳給用戶,用戶確認(rèn)在回寫消息狀態(tài)
客戶端調(diào)用的接口可以是JMS,Http由於現(xiàn)在只有delphi客戶端,現(xiàn)在提供web services訪問
流程圖: