LM视频中间设备管理

简介

资源管理接口包含组织结构、视频设备的增、删、改、查等接口,同时为便于获取资源目录提供列表、树结构等形式的接口返回请求的资源信息。

通过这些开放的接口可以使第三方应用系统很灵活的管理LM视频中间件的组织和设备信息。

一般地,视频设备的资源管理有两种方式:

  1. 直接使用LM视频中间后台管理资源信息,在9030页面添加、修改和查看资源信息,第三方应用系统通过接口获取LM视频视频中间件已添加的设备,同步设备信息到应用系统中,从而进行后续的视频、回放和对讲等操作;
  2. 第三方系统通过资源信息接口直接对LM视频中间件的资源信息进行增删改查等操作,把LM视频中间件当作PaaS平台使用。

上面第一种情况在此篇幅中就不展开,查看API接口说明应该可以很顺利的开发完成,下面重点介绍下第二种方式里,添加各种视频类型协议的设备并罗列其可能使用到的API接口

资源信息API

其中获取资源树接口(/api/v1/device/tree)可以获取所有的组织和设备列表,以树结构的形式返回,前端可以直接使用此接口生成树的目录,其中入参是组织结构的ID。

获取资源树 接口因为入参是组织结构的ID,可以通过此接口获取某个用户所属的组织和设备,可用于根据权限展示设备

组织结构

组织结构的管理比较简单,无非就是父组织和自组织的关系不要混乱掉就可以了,下面枚举下组织结构操作相关的接口

序号接口名称快捷入口备注
1/api/v1/orgnazation/add跳转添加组织
2api/v1/orgnazation/edit跳转修改组织
3/api/v1/orgnazation/delete跳转删除组织
4/api/v1/orginfo跳转获取单个组织信息
5/api/v1/orgnazation/list跳转获取组织列表,以列表形式返回
6/api/v1/orgnazation/tree跳转获取组织列表,以树形式返回

设备管理

序号接口名称快捷入口备注
1/api/v1/device/add跳转添加设备
2/api/v1/device/edit跳转修改设备
3/api/v1/device/delete跳转删除设备
4/api/v1/deviceinfo跳转获取单个设备详情
5/api/v1/device/ids跳转获取多个设备详情
6/api/v1/device/list跳转获取设备列表

设备管理

在设备管理API调用之前介绍下,LM视频中间提供的几个辅助并且使用和方便接口

序号接口名称快捷入口说明
1/api/v1/config/devicetypelist跳转获取平台支持的设备类型枚举
填充设备管理接口中的Type字段
2/api/v1/config/manufacturelist跳转获取平台支持的设备协议枚举
填充设备管理接口中的Protocol字段
3/api/v1/config/deviceSearch跳转搜索局域网内的海康、大华、Onvif设备
返回已注册的GB28181设备
4/api/v1/config/deviceChnls跳转根据返回的设备,传入用户名、密码等信息
后向LM请求设备的通道信息

基于上面几个接口,第三方应用系统可以快速的添加的局域网内的大华、海康、Onvif以及已注册的GB28181设备。

LM视频中间件中设备分为两类,包含 直接登录 1主动注册 2设备,这两类设备在添加时发起的请求会稍微有些区别,主要是设备在这两种使用场景下登陆方式的不同导致的登录凭据有些区别,下面分开着重介绍下。

直接登录设备

直接登录设备因使用的设备IP(域名)、端口、用户名和密码做为寻找设备及发起登录链接的需要携带的必要信息,因此在发起设备添加请求时:

  • 请求参数中的 RemoteIP, RemotePort, UserName, Password 几个参数为必填项
  • 参数 RegisterId 为选填项
  • DevID参数需要全局唯一,长度不能超过24的字符串(不含@,$等特殊符号),由第三方应用平台确保生成规则,当然LM视频中间件在收到添加请求时也会检查,并返回错误

提示:

  • 海康设备默认登陆端口为8000
  • 大华设备默认登陆端口时37777

主动注册设备

对于主动注册设备,LM视频中间件采用注册ID作为唯一标识,一对一匹配到正确设备,因此在发起设备添加请求时:

  • 请求参数中的 RemoteIP , RemotePort,UserName, Password 几个参数不需要传
  • 参数 RegisterId 为必填项,且必须保证唯一
  • DevID参数需要全局唯一,长度不能超过24的字符串(不含@,$等特殊符号),由第三方应用平台确保生成规则,当然LM视频中间件在收到添加请求时也会检查,并返回错误!!!

注意

  • 若设备接入的协议为GB28181时,DevID参数为国标设备的 SIP注册ID,此ID需要符合国标要求,同时参数 RegisterId 参数也和参数 DevID 保持一致

  • 若设备接入的协议为ISUP(EHOME)时, DevID 参数需要确保唯一,RegisterId 参数填设备EHOME配置页面的的注册ID

示例

直接登录设备

请求

POST /api/v1/device/add?token=638044e4-dfcd-4ffc-be03-fad52af62b47 HTTP/1.1
Accept: application/json, text/plain, */*
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cache-Control: no-cache
Connection: keep-alive
Content-Length: 250
Content-Type: application/json;charset=UTF-8

{
    "DevID":"A202212414241",
    "Protocol":"hikvision",
    "Type":0,
    "RemoteIP":"192.168.5.24",
    "RemotePort":8000,
    "Name":"HIK_TEST",
    "UserName":"admin",
    "Password":"admin12345",
    "ChannelList":[
        {
            "Name":"HIK_524",
            "Channel":1,
            "Online":true,
            "OrgId":1
        }
    ],
    "ChannelCount":1
}

应答

HTTP/1.1 200 OK
Server: nginx
Content-Type: application/json, text/plain, */*
Content-Length: 42
Connection: keep-alive
Access-Control-Allow-Origin: *

{
    "result": 200,
    "message": "OK"
}

主动注册设备

请求

POST /api/v1/device/add?token=638044e4-dfcd-4ffc-be03-fad52af62b47 HTTP/1.1
Accept: application/json, text/plain, */*
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cache-Control: no-cache
Connection: keep-alive
Content-Length: 230

{
    "Name":"ehome_test",
    "RemoteIP":"",
    "RemotePort":"",
    "Protocol":"ehome",
    "Type":0,
    "RegisterId":"E8797623",
    "ChannelList":[
        {
            "Name":"Camera01",
            "Channel":1,
            "OrgId":1,
            "PTZType":3,
            "Online":false
        }
    ],
    "ChannelCount":1,
    "DevID":"A2022124141217"
}

应答

HTTP/1.1 200 OK
Server: nginx
Content-Type: application/json, text/plain, */*
Content-Length: 42
Connection: keep-alive
Access-Control-Allow-Origin: *

{
    "result": 200,
    "message": "OK"
}

删除设备

请求

POST /api/v1/device/delete?token=638044e4-dfcd-4ffc-be03-fad52af62b47 HTTP/1.1
Accept: application/json, text/plain, */*
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cache-Control: no-cache
Connection: keep-alive
Content-Length: 26
Content-Type: application/json;charset=UTF-8

{
    "data":[
        "A202212414241"
    ]
}

应答

HTTP/1.1 200 OK
Server: nginx
Content-Type: application/json, text/plain, */*
Content-Length: 42
Connection: keep-alive
Access-Control-Allow-Origin: *
Cache-Control: no-cache

{
    "result": 200,
    "message": "OK"
}

错误码

resultmessage说明
200OK成功
400Invalid Param参数错误
400protocol is not support视频协议不支持
400devId invalidDevID参数错误
400devId is not exist设备ID不存在
400devId exist in platformDevID已添加至平台
400Need Paramater RegisterId主动注册设备,RegisterId参数没传
400device ip port is exist直接登陆设备,IP和端口的设备已存在
400channel count is zero设备通道数为0
400channel num is confict通道数冲突,主要针对GB28181设备
403domain device modify forbidden域设备不允许修改
424user not login用户未登陆
534db connect failed数据库链接失败
534get gb28181 old channels failedGB28181设备还未注册,不能添加
534add to database error添加数据库失败

  1. 直接登录:是LM视频中间件通过IP(域名)、端口、用户名和密码,发起主动登录请求到设备,设备作为Sever端被动接受登录,其中典型的视频协议有海康SDK、大华SDK、Onvif和RTSP ↩︎

  2. 主动注册:是指由设备向LM视频中间主动发起登录连接,LM在收到登录请求后,比对是否添加设备来决定是否接受设备的登录请求,其中典型的视频协议有GB28181和ISUP(EHOME) ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LiveMedia视频中间件

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值