網址 : http://testcode.pigo.idv.tw/NetServ/CxClient/demo/simplechat/
非常簡單的 chat , 沒有用到任何資料庫及檔案讀寫 , 完全透過 Comet Exchange Server 作資料交換 , 完全即時聊天
Script Language 採用 PHP , Comet Exchange Server 採用 C# 開發
改天我弄好一點會放出完整的 Source Code
原先我是要先做 Comet Http Server 的 , 但我現在先做了 Comet Exchange Server (簡稱 CxServer)
CxServer 主要構想是可以讓 HTTP Server CGI 之間可以做資料交換 , CGI 部分任何語言都可以開發 , 如 php , asp.net 等 , 然後 CGI 和 Browser 在不斷線的情況下接收其它 CGI 傳遞的資料並且將資料再傳遞給 Browser , 在應用方面就可以玩很多即時性的 , 如即時聊天 , 即時 web game , 即時股票看盤 , 即時監控系統等等都可以利用這種資料交換特性而實作出來
而在系統相容方面 , 由於採用 C# 開發 , 所以只要有 .NET 環境即可 , 我目前的 DEMO 連同 CxServer 都是跑在 Linux OpenVZ 下的虛擬 CentOS 及 mono 的平台 , 所以沒有所謂移植性問題 , 唯一的相容性問題就是 , CxServer 的封包協定中由於有有些欄位是 Int16 或 Int32 , 這在編碼成封包的時候會按照硬體(CPU)而有所謂 little endian 或 big endlian , 如果 CxServer 及 CxClient 是不同類型的 CPU 可能會發生問題而已
當然後續我會繼續實驗封裝好通訊協定及 API , 目前只先開發 PHP 版的 CxClient API , 想說再過一些日子我完全實作好封包協定好 , 才會開始進行其它語言的 CxClient API
期待!!
回報目前發現的問題:
1.訊息反應速度有些慢(應該跟網路速度有關)
2.Firefox Tab上會一直顯示loading狀態
server 在我家啦… 沒辦法 !
loading 狀態是因為從未斷線過. 可能是我 iframe 一開始就有指定 src .
這個只是 demo . 我仍在實驗中
通告: 我一個半途夭折的想法 « 色胚子部落
挖 這好像不錯耶 我一直在找這個東西
如果可以的話,能分享你的 Source Code給我嗎?
尚不完整也沒關係,我想來改進我的聊天室
不然一直用reflesh好討厭
@老歐
抱歉
由於公事繁忙 , 這個專案我一直沒法專心做 , 有些功能只寫到一半 …
也沒有比較完整的文件說明
如果你不用想 reflesh , 何不先採用 ajax 做法也可以啊 ?