我正在为我们公司的一个网站建立一个在线客户支持系统,并且对结构有一些疑问。
场景是这样的。我们希望我们网站的用户能够单击“实时聊天支持”按钮,此时他们会看到一个弹出窗口,试图将他们连接到我们的支持团队之一。
另一方面,我们的支持团队将运行桌面客户端。每当我们网站上的用户单击该链接时,所有桌面客户端都会“响铃”。每当支持团队成员“接听”电话时,其他客户端将停止响铃,该成员将开始与网络用户聊天。
鉴于我们的桌面客户端将使用 C#.NET 中的 WPF 制作,并且我们的网站是 ASP.NET MVC 2 - 在两者之间建立通信的最佳方式是什么?
我最初的想法是让 Web 端将聊天存储在 SQL 数据库中,并以某种方式“Ping”相关的桌面客户端,告诉它更新其聊天日志。对于桌面到网络也是如此。但我不确定如何在两个不同的平台之间实现这一点。如果它是桌面客户端到桌面客户端,我想它会容易得多,但事实并非如此。
另外,请记住,我意识到已经有商业应用程序可以做到这一点。然而,我们需要一些超出简单聊天的定制功能——不值得深入细节,但基本上我们必须实现自己的解决方案。
任何帮助深表感谢。