开源倾情奉献:基于.NET打造IP智能网络视频监控系统(四)服务端介绍

简介:

开源倾情奉献系列链接

服务端介绍

目前在服务端实现了 4 个 WCF 服务:

  • ServiceDiscovery(简称 SVD)
  • DeviceConnector(简称 DVC)
  • DeviceProfile(简称 DPS)
  • MediaPublisher(简称 MPS)

服务建议启动顺序

  1. SVD - 服务发现目前有时后启动不太稳定,暂时没有调试这个问题。
  2. DVC
  3. DPS
  4. MPS

Service Discovery Service

SVD 服务实现 WCF Discovery ,当有服务上线时接收注册,并通过服务接口实现向外提供检索指定类型服务的功能。

复制代码
1   [ServiceContract(SessionMode = SessionMode.Allowed)]
2   [ManagedServiceContract]
3   public interface IServiceDiscoveryService
4   {
5     [FaultContract(typeof(ServiceDiscoveryServiceFault))]
6     [OperationContract]
7     GetServicesResponse GetServices(GetServicesRequest request);
8   }
复制代码

Device Connector Service

DVC 服务负责提供接口创建、连接、保活摄像机设备。

  1. 使用 Gimela.Data.MagpieDatabase 文档数据库进行本地数据存取。
  2. 使用 Gimela.Media.Video 进行媒体流数据的建立。
  3. 使用 Gimela.Net.Rtp 进行媒体流的封装。
  4. 使用 Gimela.Net.Sockets 进行媒体流的传输。
  View Code

Device Profile Service

DPS 服务暴露简洁的接口,对外提供摄像机的基本信息,主要用以屏蔽或代理 DVC 服务。

  View Code

Media Publisher Service

MPS 服务负责配置摄像机的媒体流的发布。

复制代码
 1   [ManagedServiceContractAttribute]
 2   [ServiceContract(SessionMode = SessionMode.Allowed)]
 3   public interface IMediaPublisherService
 4   {
 5     /// <summary>
 6     /// 获取已发布摄像机的信息
 7     /// </summary>
 8     /// <param name="request"></param>
 9     /// <returns></returns>
10     [OperationContract]
11     [FaultContract(typeof(MediaPublisherServiceFault))]
12     GetPublishedCamerasResponse GetPublishedCameras(GetPublishedCamerasRequest request);
13 
14     /// <summary>
15     /// 发布摄像机视频流至指定接收器
16     /// </summary>
17     /// <param name="request"></param>
18     /// <returns></returns>
19     [OperationContract]
20     [FaultContract(typeof(MediaPublisherServiceFault))]
21     PublishCameraResponse PublishCamera(PublishCameraRequest request);
22 
23     /// <summary>
24     /// 取消发布摄像机视频流
25     /// </summary>
26     /// <param name="request"></param>
27     /// <returns></returns>
28     [OperationContract]
29     [FaultContract(typeof(MediaPublisherServiceFault))]
30     UnpublishCameraResponse UnpublishCamera(UnpublishCameraRequest request);
31   }
复制代码








目录
相关文章
|
16天前
|
Ubuntu Windows
【Ubuntu/Arm】Ubuntu 系统如何链接有线网络(非虚拟机)?
【Ubuntu/Arm】Ubuntu 系统如何链接有线网络(非虚拟机)?
|
28天前
|
移动开发 网络协议 安全
网络面试题:什么是 TCP/IP?
网络面试题:什么是 TCP/IP?
43 0
网络面试题:什么是 TCP/IP?
|
1月前
|
机器学习/深度学习 数据采集 人工智能
m基于深度学习网络的手势识别系统matlab仿真,包含GUI界面
m基于深度学习网络的手势识别系统matlab仿真,包含GUI界面
38 0
|
1月前
|
消息中间件 网络协议 C++
C/C++网络编程基础知识超详细讲解第三部分(系统性学习day13)
C/C++网络编程基础知识超详细讲解第三部分(系统性学习day13)
|
27天前
|
存储 Shell Linux
【Shell 命令集合 网络通讯 】Linux 显示Unix-to-Unix Copy (UUCP) 系统的状态信息 uustat命令 使用指南
【Shell 命令集合 网络通讯 】Linux 显示Unix-to-Unix Copy (UUCP) 系统的状态信息 uustat命令 使用指南
26 0
|
27天前
|
Shell Linux C语言
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
29 0
|
7天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
20 6
|
3天前
|
开发框架 前端开发 JavaScript
采用C#.Net +JavaScript 开发的云LIS系统源码 二级医院应用案例有演示
技术架构:Asp.NET CORE 3.1 MVC + SQLserver + Redis等 开发语言:C# 6.0、JavaScript 前端框架:JQuery、EasyUI、Bootstrap 后端框架:MVC、SQLSugar等 数 据 库:SQLserver 2012
|
8天前
|
JavaScript Java 测试技术
基于Java的网络类课程思政学习系统的设计与实现(源码+lw+部署文档+讲解等)
基于Java的网络类课程思政学习系统的设计与实现(源码+lw+部署文档+讲解等)
25 0
基于Java的网络类课程思政学习系统的设计与实现(源码+lw+部署文档+讲解等)
|
11天前
|
机器学习/深度学习 人工智能 运维
构建未来:AI驱动的自适应网络安全防御系统
【4月更文挑战第7天】 在数字时代的浪潮中,网络安全已成为维系信息完整性、保障用户隐私和确保商业连续性的关键。传统的安全防御策略,受限于其静态性质和对新型威胁的响应迟缓,已难以满足日益增长的安全需求。本文将探讨如何利用人工智能(AI)技术打造一个自适应的网络安全防御系统,该系统能够实时分析网络流量,自动识别并响应未知威胁,从而提供更为强大和灵活的保护机制。通过深入剖析AI算法的核心原理及其在网络安全中的应用,我们将展望一个由AI赋能的、更加智能和安全的网络环境。
25 0

热门文章

最新文章