# ao-iot-core **Repository Path**: ao-iot/ao-iot-core ## Basic Information - **Project Name**: ao-iot-core - **Description**: 核心程序,管理侧完全遵循RESTful API 规范 - **Primary Language**: Go - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2021-08-08 - **Last Updated**: 2025-09-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ao-iot-core ## 介绍 1. 基于Golang开发 2. 事件驱动的物联网平台 3. 侧完全遵循RESTful API 规范 4. 离线人工智能学习模型 ## 开发原则 1. 所有插件必须基于事件进行驱动 ## 软件架构 - Golang - MongoDb - MQTT ## 开发安排 - [x] 功能插件化 - [ ] 框架结束事件通知每一个已注册插件 - [ ] 设备管理功能 ## 安装教程 1. 编译主程序 ```shell ./build_shell/build_ao_iot.sh ``` 2. 编译插件助手 ```shell ./build_shell/build_ph.sh ``` ## 使用说明 ```shell ./bin/ao-iot ``` ## 部分资料 > 只列举部分可能对二次开发提供较大帮助的资料 - ORM [gorm.io/zh_CN/docs/index.html](https://gorm.io/zh_CN/docs/index.html) - Onvif [github.com/hepeichun/goonvif](https://github.com/hepeichun/goonvif) - Gin [github.com/gin-gonic/gin](https://github.com/gin-gonic/gin) ## 插件开发 1. 编译插件助手 ```shell ./build_shell/build_ph.sh ``` 2. 新建插件 ```shell ./tools/ph add [作者名称] [插件名称] ``` 3. 开发插件 插件项目目录 `[项目路径]/plugins-project/[作者名称]/[插件名称]` 打开插件入口文件 `[项目路径]/plugins-project/[作者名称]/[插件名称]/[插件名称].go` 文件开发 4. 编译插件 ```shell ./tools/ph build [作者名称] [插件名称] ``` 编译完成后程序文件将在 `[项目路径]/plugins/`目录下 > 如果编译失败可以手动编译(如下图) ![img.png](doc/image/img.png) ![img.png](doc/image/img2.png) 手动执行 ```shell [go build -buildmode=plugin -o=[项目路径]/tools/../plugins/[作者名称]@[插件名称].so [项目路径]/tools/../plugins-project/[作者名称]/[插件名称]/[插件名称].go ``` 5. 启动程序 ```shell ./bin/ao-iot ``` ## 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request