对ESP8266代码的请求,您需要订阅主题:
I/<TOPIC>/plug/command or <TOPIC>/plug/command
在这种情况下,您可以将ESP直接连接到iotcentral.eu
ESP8266为了触发其GPIO 12而接收的所需消息是:
{"device_name": "ESP_3A9108", "type": "plug", "state":1}
这里:
- 设备名称:我们要触发的设备名称。
- 类型:是设备的类型。在这种情况下,它是插头。 。
- 状态:是GPIO 12的所需状态。在这种情况下,我们要将状态更改为ON。
/<TOPIC>/status/update or <TOPIC> /status/update
在这种情况下,没有本地经纪人就可以直接连接到iotcentral.eu。接收有关此主题的任何消息将触发ESP8266发送其状态及其设备状态消息。移动应用程序正在发送消息:
{"1":"1"}
在此主题上,当它启动时,为了从所有设备获取状态和状态。您需要发布有关 se 主题的消息:
/<TOPIC>/plug/status or <TOPIC>/plug/status
发布的消息内容需要具有以下格式:
{"device_name":"ESP_3A9108", "type" :"plug" , "state" :1}
这里:
- Device_name:应用程序根据MAC地址创建的名称。
- 类型:是设备类型。在这种情况下,它是一个插头。
- 状态:GPIO 12引脚的当前状态。在这种情况下,1表示ON。
/<TOPIC>/device/status or <TOPIC> /device/status without local broker.
此主题上发布的消息描述了此设备的状态(IP地址,SDK版本,正常运行时间等):
{
"device_name": "ESP_3A9108",
"type": "plug",
"ipaddress": "192.168.8.222",
"alexa": "Coffeemaker",
"bgn": 3,
"sdk": "1.5.3(aec24ac9)",
"version": "1039",
"uptime": "0 days 00:40:12"
}
根据收到的消息,移动应用程序正在构建其界面并显示设备,按类型对它们进行分组:
移动应用程序连接到iotcentral.eu并发现了四个具有相同类型插件的设备。单击插头类型将显示找到的此类型的所有设备。
如果您在控制台中看到由于跨源标头而导致访问被阻止的消息,请安装允许您进行跨源调用的Chrome插件。为此,找到名为Allow-Control-Allow-Origin的扩展名。您手机上不存在跨域问题:
在扩展列表中有插件类型的所有设备,还有我们的设备咖啡壶。在这里开始时,显示该设备的名称从MAC地址的最后六位数字作为ESP_followed,但你可以通过滑动所需的插件到左侧,看到编辑别名按钮,给它一个友好的名称:
您可以将编码的名称更改为更友好的名称:
单击“保存”会将新别名保存在应用程序的本地存储中,并且每次应用程序看到此设备时都会显示该别名。
如果您从所有设备中选择相同类型的咖啡机,则移动应用程序将显示您可以触发ON或OFF插头的操作页面(实际上是GPIO 12):
在屏幕的下半部分,您将看到两个选项卡,一个用于设备状态,另一个用于设备详细信息:
您可以看到主题 <TOPIC>/device/status 上发布的消息内容,ESP8266的连接IP地址,正常运行时间,软件版本,编译时使用的SDK版本以及在此期间分配的友好名称。初始设置。
更改移动应用程序以添加新设备或外观和感觉不同后,您需要创建安装到手机上的 apk 应用程序。
为此,首先需要使用以下命令登录容器:
docker exec -it espbook bash
此命令将登录名为 espbook 的容器,并将启动 bash shell。
导航到 /myApp/ww 并发出将生成APK的命令:
ionic cordova build android
30秒后你将拥有你的APK,准备好你在真实手机上测试它:/myApp/platforms/android/build/outputs/apk
apk文件需要签名才能使用。互联网上有很多关于如何操作以及如何在Google Play上发布移动应用程序的教程
此演示移动应用程序现在在Google Play上。搜索Homy4并安装它。不要忘记先在iotcentral.eu上创建一个帐户,然后在 ESP8266 上使用demoapp