# xClouds-php **Repository Path**: wuearl/xClouds-php ## Basic Information - **Project Name**: xClouds-php - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-06-13 - **Last Updated**: 2024-05-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

Banner

------------------------------------- # 关于 xClouds 开源架构      当我们日复一日年复一年的搬砖的时候,你是否曾想过提升一下开发效率,如果一个 **IOT智能家具物联网** 模板的项目摆在你的面前,你还会选择自己搭架构么?      但是搭建出一个好的架构并非易事,有多少人愿意选择去做,还有多少人选择努力去做好,可能寥寥无几,但是你今天看到的,正是你所想要的,一个真正能解决你开发新项目时最大痛点的架构工程,你不需要再麻木 ``Copy`` 原有旧项目的代码,只需改动少量代码就能得到想要的效果,你会发现开发新项目其实是一件很快乐的事;      很幸运的是,在2018年底时候,我已经自学打通了天猫精灵音箱和小爱同学音箱同时控制一个 ESP8266,那时候我就开始专研服务器开发,自学攻破了数据库、php语言,再到了微信公众号的生态,我打通了这一整个的控制;      直到目前为止,我依然在走这条道路,但是随着开源其趋势不断影响,很多组织或个人奋力地做一些开源,源源不断的架构和代码封装,加快了我们程序员开发的效率,比如前端的三大框架的 **Angular**,**React**,**Vue**:      国内AI智能音箱一大崛起,也有很多优秀的企业一步一步崛起,像涂鸦就是典型的例子,一站式开发,对于很多小型家电传统公司接入AI音箱等智能控制,无疑就是一个 “菩萨” 般存在;      话说回来,类似这种平台,对于我们开发者有什么值得学习的地方呢? 最熟悉宣传语就是:**全球部署,一接入可对接多语音平台。**      于是乎,我有个大胆的想法能否单独做这样的架构出来并开源出来: - **跨平台、开发快、全开源**的宗旨; - 微信公众号内 `airkiss` 配网和 `MQTT` 控制; - 微信小程序内 `smartConfig` 配网和 `MQTT` 控制; - 设备端要求:支持 `airkiss` 配网和 `MQTT` 协议即可; - 服务器端:有微信公众号业务和各云平台对接的业务,支持但不限于 天猫精灵、小爱同学、小度音箱、Alexa音箱等; - 扩展性强,支持用户二次开发,可私定义协议; - 三端开源:设备端、服务器端、前端;      现在,我有能力地公开这个架构,我想对于那些想学系统化的,或者电子diy爱好者,抑或是在校大学生,可参考学习,我的愿景就是:      **xClouds能在国内物联网一枝独秀,助国内物联网发展;**      **但愿人长久,搬砖不再有!** # xClouds-devices for PHP 开发框架      **PHP是世界上最好的语言,不接受任何反驳**。 哈哈,这种弱语言,是真的非常适合那些小项目和快速入门,现在就是基于国产框架 TP5 上开发的;      只有适合自己开发的才是最好的。无论是采用 PHP 、NodeJS、Java 等服务器语言,只有稳定快速实现自己的需要即可,如有能力,欢迎服务器开发者一起加入我们这里开拓更多版本,比如 Java ,我们可免费提供技术支持和提供开发硬件资源; ## 文件主要目录 ``` ├─application 应用目录(可设置) │ ├─common 公共模块目录(可更改) │ ├─API 天猫精灵/小爱同学等第三方应用的API对外接口 │ ├─wechat 微信公众号代码,包括配网和控制 │ ├─index 模块目录(可更改) │ │ ├─config.php 模块配置文件 │ │ ├─common.php 模块函数文件 │ │ ├─controller 控制器目录 │ │ ├─model 模型目录 │ │ ├─view 视图目录 │ │ └─ ... 更多类库目录 │ ├─command.php 命令行工具配置文件 │ ├─common.php 应用公共(函数)文件 │ ├─config.php 应用(公共)配置文件 │ ├─database.php 数据库配置文件 │ ├─tags.php 应用行为扩展定义文件 │ └─route.php 路由配置文件 ├─extend 扩展类库目录(oauth2.0 微信对接第三方库) ├─public WEB 部署目录(对外访问目录) │ ├─static 静态资源存放目录(css,js,image) │ ├─index.php 应用入口文件 │ ├─router.php 快速测试文件 │ └─.htaccess 用于 apache 的重写 ├─runtime 应用的运行时目录(可写,可设置) ├─vendor 第三方类库目录(Composer) ├─build.php 自动生成定义文件(参考) ├─composer.json composer 定义文件 ├─LICENSE.txt 授权说明文件 ├─README.md README 文件 ├─think 命令行入口文件 ``` --- ## 开发入门 ### 环境搭建      因为此为基于 Tp5 国产框架上开发,需要一定的PHP基础和云端服务器部署灯开发基础; * 阿里云或腾讯云这些运维商购买一台远程服务器,以及一个备案通过的域名; * 代码中数据库使用的是 MySQL , 推荐使用 LNMP 环境 Linux + Nginx +MySQL5.6 + PHP7.0 ,注意: **PHP务必在 7.0 以上**; * 微信公众号一个,可用个人测试号或企业性质的服务号;      Linux 环境建议使用宝塔bt软件实现,详情可以参考我之前的视频: - https://www.bilibili.com/video/BV1q4411e7MB      数据库导入根目录的 **AiClouds3.0 MySQL.sql** 文件,因里面有一些限制关系,需要在**144 行**左右,修改一个参数为 您的当前数据库名字,切记! # 感谢: - PHP微信对接框架:https://github.com/zoujingli/WeChatDeveloper - PHP Oauth2.0:https://github.com/bshaffer/oauth2-server-php - PHP 框架:http://www.thinkphp.cn - 乐鑫物联网操作系统:https://github.com/espressif/esp-idf 项目遵循协议: [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0.html) 服务器开源地址:https://github.com/xuhongv/xClouds-php 设备端开源地址:https://github.com/xuhongv/xClouds-device **1、额外说明,架构中提到的对公司或组织的观点,如有争议,请联系我;** **2、架构中涉及到的技术点,我会一一公布出来以表感谢;** **3、同时,也欢迎大家支持我,或一起壮大这个框架,奉献你代码项目;**