diff --git a/README.md b/README.md index e5c06c3..856b8b1 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ - ✅ **零代码侵入**:设备驱动外置、无需修改平台代码,无需重新编译部署,与平台核心代码零耦合,真正的零侵入 - ✅ **全协议支持**:TCP、Modbus RTU/TCP、MQTT、HTTP等工业协议和物联网协议 - ✅ **云平台对接**:天翼物联、移动OneNet、WVPGB28281国标视频等平台集成 -- ✅ **多数据库支持**:支持 **MySQL 8.0+**、**IoTDB**、**ClickHouse** 等关系和时序数据库 +- ✅ **多数据库支持**:支持 **MySQL 8.0+**、**IoTDB**、**ClickHouse**、**InfluxDB**、 等关系和时序数据库 ## 🏗️ 技术架构 @@ -65,7 +65,7 @@ - IDE调试器 `http://localhost:9092/magic/debug/index.html` (密码同后台) - EMQX 管理 `http://localhost:18083`(默认 `admin/public`) -> **🔧 一键启动后会包含数据库及初始化数据(SQL),请自取!** +> **🔧 真实设备演示请加微信,感谢!!** ## 📈 正在推进 @@ -77,6 +77,7 @@ - **🚀 海康综合安防管理平台**:使用海康平台产品系列集成 - **📱 移动端应用**:付费图鸟定小程序,具备指令控制、属性、告警查看,轻量化、多管理员 + ## 🚀 快速开始 ### 🎯 演示地址(最新版本) @@ -90,7 +91,65 @@ - **👤 演示账号**:`test` - **🔑 演示密码**:`nexiot@123321` - **📖 文档地址**: -- **🔗 备用地址**: + +## 📊 功能对比 + +> **开源版和企业版本代码没有任何区别,只有接入方式的扩展** + +- [x] 基于 JDK21、虚拟线程,支持 RBAC,完成安全修复,通过三级等保;**开源支持集群** +- [x] 支持集群,支持 WEB-IDE 产品驱动编写,真正“零”代码侵入面向协议 +- [x] 多语言协议编解码:Java(Spring Bean+远程 JAR 热加载)、JavaScript、magic-script,在线 IDE 调试 +- [x] 热更新与零侵入:驱动/协议外置,一键导入导出,远程加载无需重启 +- [x] 多协议接入:任意 TCP 协议、任意 MQTT Topic主题和消息、HTTP 接入,支持粘包/分包、读写超时、解析器类型全部页面可配和扩展 +- [x] 第三方 MQTT 兼容:支持绑定/解绑外部 MQTT Broker,自定义下行主题 +- [x] 数据策略:自动注册、按属性/事件独立留存,16 进制/字符串收发可配,日志存储 None/MySQL/ClickHouse/IoTDB 可无感切换 +- [x] 产品管理 + - [x] 支持物模型定义(属性、事件、功能),导入、导出 + - [x] 支持设置设备离线阈值 + - [x] 支持设置产品文档地址、产品图片上传 + - [x] **支持配置数据接收/发送类型(16 进制、字符串)** +- [x] **支持开启设备主动注册** +- [x] **支持设置TCP粘包、分包、读写超时、解析器类型等策略** +- [x] 支持数据留存策略(按属性或事件独立存储,用于BI数据分析) +- [x] **支持定义设备注册额外参数(如安全码,密钥)** +- [x] **支持第三方MQTT下行主题**、HTTP服务地址 +- [x] **支持使用第三方MQTT服务组件、绑定/解绑** +- [x] **产品驱动支持IDE(Magic)、JAR(本地打包和远程URI)、JavaScript、SpringBean等方式的驱动编写** +- [x] **零代码侵入**设备接入 + - [x] 支持任意TCP协议的的接入(演示站有人塔石DTU网关、JT808、DLT645-2007电表等50余款) + - [x] 支持设备任意MQTT协议和主题的接入(不管是否复杂的签名交互、简单数据上报) + - [x] 支持设备的完整生命周期管理 + - [x] 支持同时两种以上的北向应用数据推送(HTTP、MQTT) + - [x] 支持独立的数据订阅、规则转发 + - [x] 支持网关、网关子设备的拓扑关系 + - [x] 支持标准的设备交互和API调用,特别是网关子设备直接发起功能指令调用 + - [x] 支持设备实时状态查看、历史数据、可视化图表、位置地图轨迹和完整的日志记录 + - [x] 支持设备影子,支持属性的期望值写入(任意的标签和数据暂存) + - [x] **支持指令调用(含API)和设备回复的消息匹配**,执行成功而不是调用平台成功 +- [x] 应用管理(类似多租户) + - [x] 支持创建多个应用 + - [x] 支持应用生成独立的AK/SK,独立的数据北向地址 + - [x] 支持OAuth2标准授权 + - [x] **支持多租户小程序** +- [x] 支持(Maven)Java标准SDK +- [x] 通知管理 + - [x] 支持通知渠道管理(含钉钉、短信、语音、飞书、邮件等) + - [x] 支持设备数据模版的填充 + - [x] 支持任意通知模版的格式定义,不管是WEBHOOK还是邮件,高自由度 +- [x] 支持天翼物联无缝衔接,产品、设备全部在`nexiot`管理 +- [x] 支持无感动态切换日志存储方式,支持None(不存) / Mysql / ClickHouse / IoTDB /InfluxDB +- [x] 支持产品导出、一键导入(含物模型、设备驱动等)真正实现驱动生态共享,**你导出驱动,我导入使用** +- [x] 视频能力 + - [x] 支持国标GB2828-2016/2022视频接入 + - [x] 支持乐橙云视频视频接入 + - [x] **视频API与普通设备的统一物模型调用** + +### 📢 高级特性 + +#### 202512 +- 无应答设备适配:时间窗口缓存 + 属性上报,自动校验指令执行状态 +- 复杂交互 ACK:一行代码,快速实现指令应答闭环 +- 小程序多用户管理的控制权限 ## 📸 实战案例与视频教程 @@ -180,43 +239,8 @@ |:---:|:---|:---| | 1 | 任意主题Topic与全流程对接教程 | [📺 B站观看](https://www.bilibili.com/video/BV1q1UZBmEHS/?share_source=copy_web&vd_source=c9e1500efcc8aa0763f711fadaa68dff) | -## 📊 功能对比 -| 主要功能 | 功能说明 | 开源版 | 企业版 | -|-----------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|--------| -| JDK21 虚拟线程 | 基于Java21、SpringBoot3.x的基础框架,支持虚拟线程、netty高性能 | ✅ | ✅ | -| RuoYi脚手架 | 管理员、角色管理、权限管理、日志管理,含扩展手机验证、OSS文件管理等业务
支持登录日志、操作日志查询管理 | ✅ | ✅ | -| 登录/首页 | 账号密码验证码登录
支持国际化多语言
工作台数据统计展示 | ✅ | ✅ | -| 产品管理 | 支持一键导出导入(产品、TSL、解析)分享即用
物模型在线编辑管理,支持属性、事件、功能
支持设备标签设置、公共配置(自动注册、离线判定规则、设备SN解析等)
TCP端云配置(端口、粘包分包处理、编解码数据配置等)
HTTP三方云配置
支持设备物模型独立配置存储 | ✅ | ✅ | -| 产品分类 | 支持分类创建管理,支持新增子类 | | | -| 协议管理 | 支持协议的统一管理和热更新
协议驱动完全外置 | ✅ | ✅ | -| 设备列表 | 完整的设备生命周期管理功能
设备列表展示、设备运行状态
在线功能调用、设备影子数据
通信日志管理、消息订阅配置
支持网关与网关子设备的支持
支持拓扑图展示
支持设备批量操作 | ✅ | ✅ | -| 设备影子 | 设备最新状态缓存
支持属性、事件、功能的状态存储
支持影子数据查询和更新 | ✅ | ✅ | -| 设备群组 | 设备编组分组,用于统一管理和场景联动
支持分组批量操作 | ✅ | ✅ | -| 网关轮询 | 支持网关云端定时轮询
支持多指令配置、轮询间隔设置(30s/60s/120s/300s/600s)
支持失败重试、超时控制
支持分布式集群部署 | ✅ | ✅ | -| **集成WEBIDE** | 支持协议的在线调试、统一管理等功能
基于浏览器的可视化IDE
支持协议脚本编写、调试、热部署
(旗舰版提供IDE调试前端源码) | ✅ | ✅ | -| 场景联动 | 支持设备物模型事件、属性配置
执行调用其他设备的联动
通知发送功能
支持联动日志查询 | ✅ | ✅ | -| 规则引擎 | 可视化规则编排引擎(类似Node-RED)
支持Modbus、OPCUA等工业协议
支持流程编排、节点配置
极大增强平台接入能力(调试开发中) | ✅ | ✅ | -| **数据桥接** | 支持数据源配置、支持桥接规则定义设置
支持桥接类型输入、输出、双向数据
直接输出写入(Mysql、PostgreSQL、SqlServer、Oracle)数据库
支持时序数据库输出(IoTDB、Clickhouse、InfluxDB)
支持消息对接MQ输出(Kafka、MQTT)
支持HTTP数据桥接
支持其他中间件扩展 | ✅ | ✅ | -| 数据转发 | 支持设备分组过滤
按照规则自定义数据转发
支持转发到HTTP、MQTT等多种目标 | ✅ | ✅ | -| **多应用管理** | 支持应用数据隔离;多应用管理;提供完整的南北向数据推送和指令调用
支持账号创建多个应用
应用间数据独立(类似多租户) | ✅ | ✅ | -| **SDK支持(Java)** | 设备管理: 支持设备的注册、查询、更新和删除
设备通信: 支持设备上线、下线状态管理
数据上报: 支持属性上报和事件上报
安全认证: 支持OAuth2客户端认证和密码认证
易于集成: 开箱即用SDK | ✅ | ✅ | -| 北向应用推送 | HTTP推送、MQTT推送(开源版支持)
其他推送方式(企业版专享) | ✅ | ✅ | -| 通知渠道 | 支持钉钉、阿里云短信语音、腾讯云短信语音、飞书、邮箱 | ✅ | ✅ | -| 通知模版 | 支持模版自定义创建
支持变量替换 | ✅ | ✅ | -| 证书管理 | 支持TLS/SSL证书管理
支持证书上传、查询、删除 | ✅ | ✅ | -| MQTT直连接入 | 支持内置MQTT接入
支持自己扩展的MQTT节点
支持MQTT集群部署 | ✅ | ✅ | -| HTTP接入 | 支持云云对接
支持OAUTH2标准接入
支持Java SDK无缝接入 | ✅ | ✅ | -| **Modbus协议** | 支持Modbus RTU/TCP协议
支持Modbus设备接入和数据处理
**注意:开源版开源通过MQTT方式** | ✅ | ✅ | -| **TCP/UDP直连接入** | 支持自定义协议、Modbus等TCP通信方式
支持SNI TLS通配符域名接入
支持TCP集群,支持无限扩展节点
支持TCP粘包分包处理
支持动态启停和创建监听服务 | ❌ | ✅ | -| **天翼物联** | 支持与天翼物联AIOT无缝接入
产品管理、设备管理全部在nexiot统一管理 | ❌ | ✅ | -| **视频接入** | 乐橙云视频接入(企业赠送)
GB28181视频协议支持(wvp集成内测中)
大华ICC和海康ISC归规划中 | ❌ | ✅ | -| **集群部署** | 支持多节点集群部署
支持分布式锁、负载均衡
支持高可用、水平扩展 | ✅ | ✅ | -| **时序数据库** | 支持无感动态切换日志存储方式
支持None(不存) / Mysql / **ClickHouse** / **IoTDB** | ✅ | ✅ | -| **MQTT任意主题** | 支持接入外置MQTT Broker
支持MQTT任何主题数据对接和指令控制
支持数据透传和物模型结构
| ❌ | ✅ | -| **社区免费驱动** | 得力于优异的架构设计,社区已对接的驱动可直接导出免费使用
已支持DLT645-2007、JT808、天翼物联50余种设备
| ✅ | ✅ | ---- ### 📢 重要声明