LiveGBS GB28181方案安装使用说明

服务架构

 

服务说明

安装包

 1windows平台使用的安装包

LiveCMS-windows-***.zip
LiveSMS-windows-***.zip

 2Linux平台使用的安装包

LiveCMS-linux-***.tar.gz
LiveSMS-linux-***.tar.gz

信令服务

1、LiveCMS
SIP 中心信令服务, 单节点, 自带一个 Redis Server, LiveCMS 自启动, 不需要手动运行

2LiveCMS端口使用
TCP 端口 : 5060(SIP), 10000(HTTP), 26379(Redis)
UDP
端口 : 5060(SIP)

流媒体服务

1LiveSMS
SIP 流媒体服务, 根据需要可部署多套

2LiveSMS端口使用
TCP 端口 : 5070(SIP), 10001(HTTP), 11935(RTMP Live), 30000-40000(RTP over TCP)
UDP
端口 : 5070(SIP), 50000-60000(RTP/RTCP over UDP)

配置信令服务(LiveCMS)

服务名称:LiveCMS

配置文件:livecms.ini

所在位置:LiveCMS-windows-***.zip, LiveCMS-linux-***.tar.gz

[sip] -> host
SIP 中心信令服务器 IP

[sip] -> serial
SIP 中心信令服务器 ID

[sip] -> realm
SIP 中心信令服务器 Realm

[sip] -> device_password
设备接入统一密码

 

配置流媒体服务(LiveSMS)

服务名称:LiveSMS

配置文件:livesms.ini

所在位置:LiveSMS-windows-***.zip, LiveSMS-linux-***.tar.gz

[sip] -> host
SIP 流媒体服务器 IP

[sip] -> serial
SIP 流媒体服务器 ID

[sip] -> realm
SIP 流媒体服务器 Realm

[sip] -> wan_ip (可选配置)
SIP 流媒体服务器公网 IP

[sip] -> use_wan_ip_recv_stream (可选配置)
可选配置0/1, 指示流媒体服务器使用公网 IP 接收国标下级流数据

[rtp] -> udp_port
RTP over UDP 端口

[rtp] -> tcp_port
RTP over TCP 端口

服务运行

warning 注意:

安装包所在路径不要包含 中文, 先运行 LiveCMS, 再运行 LiveSMS

Windows

直接运行

信令服务(LiveCMS)

启动: 解压目录中,直接双击 LiveCMS.exe

停止:以 Ctrl + C 停止服务, 不可以直接叉控制台窗口, 否则服务停不干净

流媒体服务(LiveSMS)

启动: 解压目录中,直接双击 LiveSMS.exe

停止:以 Ctrl + C 停止服务, 不可以直接叉控制台窗口, 否则服务停不干净

以服务启动

信令服务(LiveCMS)

安装: 解压目录中,直接双击 ServiceInstall-LiveCMS.exe

卸载: 以 ServiceUninstall-LiveCMS.exe 卸载 CMS 服务

流媒体服务(LiveSMS)

安装: 解压目录中,直接双击 ServiceInstall-LiveSMS.exe

卸载: 以 ServiceUninstall-LiveSMS.exe 卸载 SMS 服务

 

Linux

 

直接运行

信令服务(LiveCMS)

cd LiveCMS
./livecms
#停止: Ctrl + C

流媒体服务(LiveSMS)

cd LiveSMS
./livesms
# 停止:Ctrl + C

以服务启动

信令服务(LiveCMS)

cd LiveCMS
./start.sh
#停止: ./stop.sh

流媒体服务(LiveSMS)

cd LiveSMS
./start.sh
#停止: ./stop.sh

配置设备接入

服务运行起来后,参考LiveCMS基础配置页面上显示的信息设置到下级设备或平台上。

平台使用

管理平台

http://localhost:10000

接口文档

http://localhost:10000/apidoc

使用分享页

为方便客户在网页中集成播放功能, 我们单独提供了可供 HTML iframe 集成的分享页, 形如:

http://ip:10000/play.html?serial=34020000001110000001&code=34020000001320000001

其中 URL 参数:

serial 设备国标编号

code 通道国标编号

share 是否显示分享, 可选, yes/no, 默认值为 yes

ptz 是否显示云台控制, 可选, yes/no, 默认值为 yes

iframe 是否仅显示视频播放区域, 可选, yes/no, 默认值为 no

aspect 视频播放区域的宽高比, 可选, wxh, 默认为 640x360, 即16:9, 当 aspect=fullscreen 时整页显示播放器

fluent 是否以流畅模式播放, 可选, yes/no, 默认值为 yes

autoplay 是否自动播放, 可选, yes/no, 默认值为 yes

stretch 是否拉伸显示, 可选, yes/no, 默认值为 no

protocol 播放流格式, 可选, rtmp/hls/flv, 默认 auto check

网页播放器

除了 iframe 方式集成播放器, 也可以使用 LivePlayer 网页播放器来二次开发

LivePlayer 网页播放器下载和使用文档, 参阅链接:

https://www.npmjs.com/package/@liveqing/liveplayer

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

从提供的堆栈跟踪信息来看,您遇到了一个 `org.activiti.engine.ActivitiException` 异常,其原因是表达式 `${error=="N"}` 中引用了未定义的变量或属性。接下来我会详细说明这一错误的原因以及可能的解决方案。 ### 错误分析 #### 报错内容 ``` Unknown property used in expression: ${error==“N”} at org.activiti.engine.impl.el.JuelExpression.getValue(JuelExpression.java:53) at org.activiti.engine.impl.el.UelExpressionCondition.evaluate(UelExpressionCondition.java:37) at org.activiti.engine.impl.bpmn.behavior.ExclusiveGatewayActivityBehavior.leave(ExclusiveGatewayActivityBehavior.java:69) ``` #### 解释 - **未知属性**:在您的流程定义中使用了`${error=="N"}`这样的表达式条件,但是工作流引擎无法识别其中提到的 `error` 变量。 根据 Activiti 文档,在 BPMN 流程图中的决策网关 (如排他性网关 Exclusive Gateway) 或任务监听器等地方使用的 EL 表达式(即 Expression Language),需要访问当前流程实例上下文中已存在的数据项。如果尝试引用不存在的数据项,则会发生上述异常。 - **发生位置**: - `JuelExpression.getValue`: 尝试获取表达式的值时触发此异常; - `UelExpressionCondition.evaluate`: 当评估基于 UEL (Unified Expression Language)语法构建起来的条件表达式时出错了; - 最终导致了在离开独占门节点(`ExclusiveGateway`)的时候抛出了这个异常,因为这里有一个依赖于无效表达式的分支判断逻辑。 ### 寻找问题根源 为了进一步理解为什么会出现这种情况,请确认以下几个方面: 1. **检查过程变量设置** 确保在流程启动前已经正确设置了所有必要的输入参数,并且它们确实存在于运行期环境当中。例如,在 Java API 调用期间通过 `startProcessInstanceByKey()` 方法传入键值对形式的过程变量集合,或者利用表单提交的方式完成初始化。 2. **核实业务规则配置** 审核整个业务流程的设计文档及模型文件(.bpmn),查看是否有遗漏的地方没将特定字段添加进去;同时也要注意某些特殊字符编码的问题,比如双引号符号是否一致等问题也可能引起解析失败。(实际上这里的中文全角引号 “N”,应该改为英文半角引号 "N") 3. **调试模式下观察执行情况** 启动应用服务器进入调试模式后重现该场景,借助 IDE 内置工具逐步跟进代码片段直至定位确切的位置,了解到底是哪一步开始偏离了正常的控制流轨迹。 4. **查阅官方指南与社区资源** 查看最新版本 [Activiti 用户手册](https://www.activiti.org/userguide/) 和参考其他开源项目案例学习最佳实践,有时候他人遇到过的相似难题可能会为你提供灵感和指导方向。 ### 修改方案建议 针对以上讨论的内容,您可以采取以下措施来修复这个问题: - **修正拼写错误** 替换掉原来的 Chinese quotation marks 「」为 standard ASCII quotes "" ,修改后的表达式应该是 `${error == "N"}` 。这可以防止由于编码差异而造成的解析失败。 - **明确指定所需变量名** 如果不确定某个名称是否存在或是否有效,可以通过日志打印、断点调试等方式确定正确的变量标识符。此外还可以考虑引入默认值作为备用选项以提高容错能力。 - **补充缺失的预设变量** 若发现确实缺少相应的前置准备工作步骤,则及时补充完整,确保每个涉及的关键字都能顺利映射到实际存储空间内的实体对象上去。 最后提醒一点就是保持良好的注释习惯,让后续接手的人也能轻松明白意图所在,这对于长期维护非常有价值! ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值