首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> 關於.NET

WPF + WCF 打造音訊聊天室(一):專案概述與需求分析

     編輯:關於.NET

因公司兩岸三地(深圳、台北、高雄)分散式開發需求,Skype 雖支援語音但缺乏共享白板功能。團隊技術棧為 WPF/WCF/WF,決定利用業餘時間自製會議軟體,分三篇文章循序漸進實作。

專案需求

  1. 文字聊天
  2. 共享討論白板
  3. 語音通話
  4. 聊天室成員查看
  5. 私聊支援
  6. 使用者進入/離開廣播通知
  7. 聊天記錄本地保存 (XML)
  8. 視訊會話 (後續實作)

技術選型

  • UI 框架:WPF (VS2010)
  • 通訊框架:WCF (支援雙工、TCP/UDP 靈活切換)
  • 音訊處理:開源 Wave 庫
  • 視訊擷取:開源 WebCam Control for WPF

功能模組對應 WCF 方法

功能WCF 方法
文字傳輸SendBroadcastMessage
白板圖像SendInkStrokes
聲音傳輸UDP 串流 (獨立於 WCF)
視訊傳輸UDP 串流 (獨立於 WCF)

WCF 負責訊令協商(邀請、接受、端點交換),即時媒體串流走 UDP 降低延遲。

初版介面預覽

登入視窗:
登入視窗

主面板:
主面板

  • 左側:成員列表
  • 上方:工具列
  • 中間:共享白板
  • 底部:文字聊天區

關於「造輪子」的思考

雖「造輪子」常被視為貶義,但對技術成長、知識分享、學習優秀產品設計(QQ/MSN)極有幫助。騰訊崛起亦始於「造輪子」。本系列將以實作為導向,帶領讀者從零構建完整音訊聊天室。

第二篇將詳細講解 WPF 介面佈局技巧與 WCF 雙工通訊基礎實作。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved