我们开始开发一个新的应用程序,我正在搜索有关应用程序架构的信息/提示/指南。
应用程序应该:
- 从外部 (USB) 设备读取数据
- 将数据发送到远程服务器(通过互联网)
- 从远程服务器接收数据
- 与调用(支持)中心进行视频通话
- 接收来自调用(支持)中心的视频调用
支持触摸屏
此外:一些数据也应该通过网页可见。
所以我在想: 在服务器端:
- 使用数据库(可能是 MS SQL)
- 使用 ORM (nHibernate) 将数据从数据库映射到域对象
- 在 C# 中创建一个具有业务逻辑的层
- 创建 Web (WCF) 服务(用于客户端应用程序)
- 创建一个 asp.net mvc 应用程序(用于第 7 项)以启用通过浏览器查看数据
在客户端,我会使用 WPF 4 应用程序,它将与外部设备和服务器上的 wcf 服务通信。
到目前为止一切顺利。现在问题开始了。我不知道如何创建应用程序的视频通话(传出或传入)部分。 我相信用WPF/C#与麦克风、扬声器、摄像头通信是没有问题的。但是如何与调用中心沟通呢?应该使用什么协议(protocol)和编码?
我认为我需要创建某种服务器,它将:
- 在调用中心有一个接线员列表,并跟踪哪个接线员被占用,哪个接线员空闲
- 有一个连接的最终用户列表
- 接收来自最终用户的来电并将调用委托(delegate)给免费接线员
- 将调用中心的调用委托(delegate)给最终用户
任何信息、链接、任何关于从哪里开始的信息都将不胜感激。
非常感谢!
最佳答案
听起来您从事的是支持业务,而不是制作视频 session 软件业务。也许看看许可第 3 方 SDK 来填充应用程序的视频 session 组件。让你的应用程序上线比重新发明轮子要快得多。我很快在谷歌上搜索了“视频 session SDK”。几个立即弹出。我从来没有使用过任何东西,所以我不打算开始推荐任何东西,但我认为这是一个很好的起点。
关于c# - 视频通话(中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2439995/