使用 WPF+ ASP.NET MVC 開發 在線客服系統 (一)

近段時間利用業餘時間開發了一套在線客服系統,期間遇到過大大小小很多問題,好在都一一解決,最終效果也還能夠,打算寫一個系列的文章把開發過程詳細的記錄下來。web

但願可以和更多的開發人員互相交流學習,也但願有有興趣的小夥伴一塊兒加入開發當中來,畢竟一我的的力量是有限的 :)瀏覽器

有興趣的小夥伴請加Q:279060597服務器

 

系列文章將分爲幾個部分網絡

      零、概述(本篇)框架

  1、需求分析及技術方案初步選型異步

  2、技術方案選型,驗證工具

  3、底層框架設計,開發學習

  4、服務器設計開發優化

  5、客戶端設計開發網站

  6、Web端設計開發

 

在這個系列的文章中,您將瞭解並學習到如下技術知識:

ASP.NET MVC、WPF、MSMQ、YUI、WebSocket

 

若是這些技術對您有用,還請您 推薦 一下本文章,謝謝!

 

首先是需求,咱們大概看看什麼是在線客服系統:

 

只需將系統生成的一段JavaScript代碼嵌入網站頁面,便可在網站上顯示錶明客服的浮動小圖標,邀請框,以及小聊天窗口。

而對於客服:

1.變被動爲主動,使營銷人員(客服)主動發現並跟蹤網站訪客,實時掌握訪客動向,向訪客發起聊天邀請或直接強制會話。

2.對營銷人員(客服)實行有效管理與考覈,藉助實時監控,歷史記錄,統計分析等功能。

3.營銷輔助功能:訪客地域,來源網頁,搜索引擎關鍵字,快捷回覆,消息預知等功能。

4.網頁回撥電話,訪客輸入本身的電話號碼系統自動記錄並回撥接通營銷人員(客服)與訪客的電話;營銷人員(客服)也能夠直接使用客服端軟件在電腦上撥打手機或固定電話。

這就是咱們要開發的系統,還好需求很是明確,並不複雜。 

 

關於技術方案的選型:

  

1)服務器操做系統:

Windows Server 2012

Windows Server 2012 是微軟下一代 Windows 服務器的最新版本,它採用超越虛擬化技術,可經過一臺服務器提供多臺服務器的功能, 實現至關靈活的工做方式,爲每一個應用程序創造更大的發揮空間 。它將向企業和託管提供商提供可伸縮、動態、支持多租戶以及經過雲計算獲得優化的基礎結構,並能幫助 IT 專業人員更快、更高效地響應業務需求。

 

2)消息服務:

MSMQ

在線客服系統最重要的是什麼,固然是網站訪客與客服人員消息的互通,我不推薦重複造輪子,而是更願意選擇成熟穩定的產品來爲咱們服務。

Message Queue(微軟消息隊列)是在多個不一樣的應用之間實現相互通訊的一種異步傳輸模式,相互通訊的應用能夠分佈於同一臺機器上,也能夠分佈於相連的網絡空間中的任一位置。它的實現原理是:消息的發送者把本身想要發送的信息放入一個容器中(咱們稱之爲Message),而後把它保存至一個系統公用空間的消息隊列(Message Queue)中;本地或者是異地的消息接收程序再從該隊列中取出發給它的消息進行處理。

在消息傳遞機制中,有兩個比較重要的概念。一個是消息,一個是隊列。消息是由通訊的雙方所須要傳遞的信息,它能夠是各式各樣的媒體,如文本、聲音、圖象等等。消息最終的理解方式,爲消息傳遞的雙方事先商定,這樣作的好處是,一是至關於對數據進行了簡單的加密,二則採用本身定義的格式能夠節省通訊的傳遞量。消息能夠含有發送和接收者的標識,這樣只有指定的用戶才能看到只傳遞給他的信息和返回是否操做成功的回執。消息也能夠含有時間戳,以便於接收方對某些與時間相關的應用進行處理。消息還能夠含有到期時間,它代表若是在指定時間內消息還未到達則做廢,這主要應用與時間性關聯較爲緊密的應用。

 

3)Web 開發框架:

YUI,WebSocket

對於在線客服系統,Web頁面的穩定性和速度很是重要,在此咱們使用 YUI 和 WebSocket 來構建可與服務端實時交互的 Web 系統。

YUI:YUI庫是一系列使用Javascript和CSS建立的的工具和控件集,用來建立富客戶端Web應用。使用到了DOM scripting,DHTML和AJAX。

WebSocket:是HTML5開始提供的一種在單個 TCP 鏈接上進行全雙工通信的協議。WebSocket通訊協議於2011年被IETF定爲標準RFC 6455,WebSocketAPI被W3C定爲標準。在WebSocket API中,瀏覽器和服務器只須要作一個握手的動做,而後,瀏覽器和服務器之間就造成了一條快速通道。二者之間就直接能夠數據互相傳送。

 

4)客服端開發框架:

Microsoft .NET Framework 4.5 / WPF

Windows Presentation Foundation (WPF) 是下一代顯示系統,用於生成能帶給用戶震撼視覺體驗的 Windows 客戶端應用程序。 使用 WPF,您能夠建立普遍的獨立應用程序以及瀏覽器承載的應用程序。

 

5)服務端開發框架:

Microsoft ASP.NET MVC 4

微軟官方提供的MVC模式編寫Asp.net Web應用程序的一個框架。

 

系統結構:

 

話很少說,先上圖:

 

客服端主界面:

 

網頁端:

 

網頁端大聊天窗口

 

手機端聊天界面:

 

功能分解

訪問狀態跟蹤:

實時掃描跟蹤正在瀏覽網站的訪客,在客服端經過樹形目錄進行分類展現。

 

訪客信息採集/搜索引擎關鍵字分析

識別訪客的:來源地域,IP地址,來源網頁地址,使用的終端設備類型以及正在瀏覽的網頁等。

智能識別訪客的來源地址,若是來源地址爲搜索引,則分析來源搜索引擎及搜索關鍵字。

 

軌跡跟蹤:

在聊天區及輔助功能區的軌跡面板,實時追蹤顯示訪客正在瀏覽的頁面。

 

會話轉接:

當客服遇到疑難問題時,能夠轉接給其餘同事,尋求幫助。在轉接對話時自動把原接待客服溝通的記錄所有轉給待接客服。

 

消息預知:

客服可預先看到訪客已經輸入而未發送的消息,以便在第一時間瞭解訪客的心理。

 

快捷回覆:

可在線添加、修改,導入或導出,縮短訪客等待時間,提升客服工做效率。

 

歷史記錄

與使用其它聊天工具時歷史記錄存儲在客服電腦沒法集中管理不一樣,在線客服系統的全部聊天記錄都可由管理員進行統一的查詢,能夠按時間段,聊天內容等多種方式精準查詢。

 

實時監控

能夠自由選擇對客服進行對話監控,經過監控中的聊天記錄,瞭解客服工做狀態及業務技能。

 

留言(web側)

非工做時間無客服在線時,自動切換到留言功能,引導訪客留下聯繫方式及訴求。

 

 

網頁回呼

在網站中顯示一個浮動區域,引導訪客填寫電話號碼後,系統可自動接通客服與訪客的電話。客服亦可在後臺查詢全部的訪客電話號碼及呼叫記錄。

 

 

撥打手機和固定電話

客服可在客服端軟件中,直接使用網絡電話業務撥打全國固定電話或手機。

 

角色與權限

對客服分配不一樣的角色和所擁有的操做權限,可進行管理員,班組長,通常客服,實習生等多種角色層級,實現有效管理。

聯繫人管理

爲訪客創建聯繫人信息,記錄訪客的聯繫方式,營銷狀況,可對訪客進行業務類型,重要級別的分類。

 

站點設置

設定個性的LOGO圖片,浮動圖標、圖片廣告,文字廣告等。全部設置均實時生效。

 

具體每一部分的實現,敬請關注。

相關文章
相關標籤/搜索