{"id":14973649,"url":"https://github.com/itzlyg/iot","last_synced_at":"2025-10-27T02:31:00.777Z","repository":{"id":227601631,"uuid":"771891137","full_name":"itzlyg/iot","owner":"itzlyg","description":"物联网平台 物联网应用 物联网 智慧平台","archived":false,"fork":false,"pushed_at":"2024-09-27T16:17:38.000Z","size":501,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-28T17:41:45.899Z","etag":null,"topics":["elasticsearch","element-ui","http","java","kafka","modbus","mqtt","mybatis-plus","mysql","openapi3","oss","redis","redisson","rocketmq","spring-boot","tcp","tdengine","vertx","vue2","websocket"],"latest_commit_sha":null,"homepage":"https://www.jiubankeji.cn/web_iot","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/itzlyg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-14T06:23:53.000Z","updated_at":"2024-09-27T16:17:41.000Z","dependencies_parsed_at":"2024-03-14T07:37:46.451Z","dependency_job_id":"5dabb1c7-9190-4ccf-becd-21589fee57d7","html_url":"https://github.com/itzlyg/iot","commit_stats":null,"previous_names":["itzlyg/iot"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itzlyg%2Fiot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itzlyg%2Fiot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itzlyg%2Fiot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itzlyg%2Fiot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/itzlyg","download_url":"https://codeload.github.com/itzlyg/iot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219861968,"owners_count":16555980,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["elasticsearch","element-ui","http","java","kafka","modbus","mqtt","mybatis-plus","mysql","openapi3","oss","redis","redisson","rocketmq","spring-boot","tcp","tdengine","vertx","vue2","websocket"],"created_at":"2024-09-24T13:49:09.371Z","updated_at":"2025-10-27T02:30:55.332Z","avatar_url":"https://github.com/itzlyg.png","language":"Java","readme":"\u003cp align=\"center\"\u003e\n \u003cimg src=\"https://img.shields.io/badge/Spring%20Boot-2.7.18-blue.svg\" alt=\"Downloads\"\u003e\n \u003cimg src=\"https://img.shields.io/badge/Vue-2.6.14-blue.svg\" alt=\"Downloads\"\u003e\n\u003c/p\u003e\n\n##  简介\n本项目是一个基于`Java` `Vue`开发的物联网基础平台，可以快速实现硬件设备接入。\n\n* Java 后端：`master` 分支为 JDK 8 + Spring Boot 2.7.18\n* 管理后台的电脑端：Vue2 提供 `element-ui` 版本\n* 后端采用 Spring Boot 多模块架构、MySQL + MyBatis Plus、Redis + Redisson，Vert.x\n* 支持多租户模式\n* 统一接口接收和返回格式，使用OpenApi 3+knife4j作为接口文档工具\n* 时序数据库使用TDengine，可另行扩展\n* 消息队列已经实现RocketMQ和基于vertx的eventbus，可以自行根据需要扩展使用其他中间件：Kafka、RabbitMQ等\n* 实时通信使用websocket，基于vert.x框架实现\n* 集成七牛云云存储服务，预留其他服务商接口，自行实现扩展\n\n#### 产品特性\n\n- 设备接入：支持接入行业标准物联网协议（mqtt、http、modbus等），实现海量设备接入，也可以通过自定义的方式接入自定义协议。\n- 物模型：支持物模型，可以有效的管理设备的属性、功能、事件。\n- 产品、设备分组概念：支持设备根据应用场景和用户权限实现隔离，方便用户统一管理。\n- 权限管理：系统支持基本的角色管理，支持用户、角色、菜单、按钮基本权限功能。\n- 自主可控：可本地、私有云、公有云部署。\n- 时序数据库：数据下发、上报数据采用数序数据库，支持海量并发。\n- 平台基座：可作为物联网行业解决方案平台基座，支持多个行业解决方案共用一个物联网平台基座，为企业减少成本，获取更多的行业经验和方案。\n\n#### 其他\n① 代码整洁、架构整洁，遵循《阿里巴巴 Java 开发手册》规范。\n\n② 工具类只依赖Apache相关的，或简单自行编写，减少第三方依赖，避免高危漏洞。\n\n③ 统一接口接收和返回格式\n\n\n#### 物联网项目 模块组成\n\n##### protocol 协议层代码\n- 1、base 协议基础抽取\n- 2、service 实现协议组件，实现整个通讯通道、编解码，完成数据的流转。提供方法给业务层调用\n- 3、tcp、http、ws、mqtt是具体协议的实现包\n\n##### module 抽象出可以多实现方式的组件\n- 1、oss 文件存储\n- 2、notify 告警通知\n- 3、sink 物模型数据落地到数据库\n\n##### achieve 用来实现 module组件的\n- 1、mq-vertx 用vert.x 来实现消息队列\n- 2、rocket-mq rocketMq的实现\n- 3、oss-qn 七牛实现存储方案\n- 4、sink-td TDengine 对设备上报下发数据记录、设备的属性等数据量很大的场景\n- 5、sink-mysql mysql 的方式实现数据落地\n\n##### biz 业务层\n- 1、base 工具类；基础枚举值、vo的定义；系统配置\n- 2、service，具体的业务，抽离处理，可以供多端调用实现：web、openApi等\n- 3、open-api 对第三方对接提供接口\n- 3、test 测试代码\n- 4、web web端的接口\n\n#### 功能点：\n- 1、支持mqtt、http、tcp、websocket等协议通道\n- 2、实现物联网设备基本协议，实现新设备接入时候，可以利用插拔式的方式快速接入，新设备解析方式可以用`js` 或者`python`的方式快速实现，减少开发成本\n- 3、实现设备属性和功能的自定义，快速实现设备的功能\n- 4、websocket推送设备实时消息到页面\n- 5、设备告警系统\n- 6、记录操作日志和数据异动日志\n- 7、用户权限等基础功能\n- 8、open api开放\n\n#### 产品功能：\n| 功能     | 描述                                             |\n| -------- | ------------------------------------------------ |\n| 首页     | 大屏看板展示，设备运行状态、数量、告警等基本信息 |\n| 组织管理 | 用户管理、部门管理、角色管理、菜单管理           |\n| 通信协议 | 消息转化器、通信协议管理                         |\n| 产品管理 | 产品管理、产品分类                               |\n| 设备管理 | 设备分组、设备管理、设备详情                     |\n| 场景联动 | 场景联动管理                                     |\n| 告警通知 | 告警模板、告警渠道、消息管理                     |\n\n\n\n\n#### 其他\n[演示地址](http://www.jiubankeji.cn/web_iot)\n\n帐号/密码：\n`18812345678` `Io@t0315Jb!`\n\n\n\u003cimg alt=\"Downloads\" src=\"https://img.shields.io/badge/phone-13428699629-green.svg\"\u003e\n\n**如有疑问或者需要源码的可以随时联系：**\n\n\u003cimg src=\"./iot-ap/doc/jb_qrcode.jpg\" width=\"150\" height=\"150\"/\u003e\n\n(扫码或者直接搜索`jiubanyun_iot`添加微信)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fitzlyg%2Fiot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fitzlyg%2Fiot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fitzlyg%2Fiot/lists"}