新建插件包
咱们的插件包都是放在plugins文件夹下的,如果你须要新开发一个插件包,你能够在plugins文件夹下新建一个命为xxx的我的项目,目录构造如下
目录构造能够依据插件的复杂程度自行扩大
如何启动插件包我的项目?
建好插件包目录后,咱们能够进到智汀专业版我的项目的根目录, 而后通过以下命令能够启动插件包我的项目
【1】前端源码剖析
- 咱们看下次要的代码
插件包次要性能是实现智能设施的管制,智能设施的管制次要是通过Websocket发送指令去管制的,这里援用了智汀封装好的Websocket插件包ws-plugin,插件管制的相干指令能够点击这里插件模块。
这里有两个重要的变量,这两个参数都是从插件链接传进来的
- token 用户的身份凭证,这里次要用来做权限管制
- device_id 设施id,就是发送控制指令时须要晓得是管制哪个设施
进入页面时咱们要建设一个Websocket长连贯,用来发送操作指令和同步更新设施状态
2. 如何做权限管制?
进入插件时咱们要做好权限管制,无权限用户无奈在插件页面操作。
当咱们Websocket链接胜利后,咱们须要发一个指令去拿用户的操作权限。
指令如下:
发送指令后,后端会返回用户的权限信息,构造如下
咱们能够依据 “can_control” 获取用户的权限,而后拿到权限信息后就能够在页面做对应的操作
3. 如何管制设施?
咱们也是通过发送指令的办法管制设施
例如:关上灯
其余操作也一样,只是操作的指令有所区别
4. 如何同步设施状态?
每个设施都有初始状态,咱们怎么同步设施的初始状态呢
同样的也是发送指令
后端送到指令后会返回设施的初始状态,构造如下:
拿到设施后,咱们就能够对设施进行初始化值
5. 如何公布咱们的插件?
当咱们的插件包开发实现后,就打包编译咱们的前端和后端文件, 填写咱们的配置文件 构造如下:
而后在智汀家庭云上传咱们的插件包,等审核通过后就能够看到咱们的插件包了。
【2】 插件包集成
打包咱们的插件包
打包后的文件在根目录下plugin文件下
插件的后端文件也要编译好
最终插件包的目录如下:
html文件夹是插件的页面文件,也就是(html,js,css等动态资源文件)
yeelight-plugin是插件后端的编译文件
config.yaml是插件的配置文件
咱们看下插件的配置文件包含哪些信息
这些信息都是很重要的,不能脱漏!咱们的插件能够蕴含多个设施,每个设施有所属的品牌。
智汀用户通过增加装置咱们的插件包就能够通过智汀app发现咱们插件反对的设施,连贯设施,操作咱们的设施。