Pārlūkot izejas kodu

Merge branch 'master' of https://gitee.com/openLuat/LuatOS

alienwalker 1 gadu atpakaļ
vecāks
revīzija
327aa5f818
2 mainītis faili ar 15 papildinājumiem un 7 dzēšanām
  1. 13 5
      demo/aliyun/main.lua
  2. 2 2
      script/libs/aliyun.lua

+ 13 - 5
demo/aliyun/main.lua

@@ -8,14 +8,22 @@ local aliyun = require "aliyun"
 --新版已经合并, 没有了地域, 1883同时兼容加密和非加密通信,非加密会下线
 -- 阿里云资料:https://help.aliyun.com/document_detail/147356.htm?spm=a2c4g.73742.0.0.4782214ch6jkXb#section-rtu-6kn-kru
 tPara = {
-    Registration = false,           --是否是预注册 已预注册为false  true or false,
-    DeviceName = "dht11", --设备名称
+    -- 是否为一型一密, true为一型一密, false为一机一密(预注册)
+    Registration = false,
+    -- 设备名名称, 必须唯一
+    DeviceName = (mobile and mobile.imei() or (wlan and wlan.mac() or mcu.unique_id():toHex())),
+    -- 产品key, 在产品详情页面
     ProductKey = "k0ti3QNOFaH",     --产品key
-    ProductSecret = "",  --产品secret,已经预注册就不需要填
+    --产品secret,一型一密就需要填, 一机一密(预注册)不填
+    ProductSecret = "",
+    --设备密钥,一型一密就不填, 一机一密(预注册)必须填
     DeviceSecret = "62a17dfe2192526f90bc5fad7cd951fc", --设备secret
-    InstanceId = "iot-06z00hmbog1v175",   --如果没有注册需要填写实例id,在实例详情页面
+    -- 填写实例id,在实例详情页面
+    InstanceId = "iot-06z00hmbog1v175",
+    -- 固定值, 不要修改
     mqtt_port = 1883,                --    mqtt端口
-    mqtt_isssl = false,                --是否使用ssl加密连接,true为无证书最简单的加密
+    --是否使用ssl加密连接,注意: 如果使用一型一密,则必须使用ssl加密
+    mqtt_isssl = false,
  }
 
 -- 低功耗测试, 打开之后, 连接阿里云后5秒请求低功耗

+ 2 - 2
script/libs/aliyun.lua

@@ -149,13 +149,13 @@ local function clientEncryptionTask(Registration,DeviceName,ProductKey,ProductSe
             local content = "deviceName"..DeviceName.."productKey"..ProductKey.."random"..tm
             PassWord = crypto.hmac_md5(content,ProductSecret)
             
-            local mqttClient = mqtt.create(nil,mqtt_host,mqtt_port,mqtt_isssl)  --客户端创建
+            local mqttClient = mqtt.create(nil,mqtt_host,mqtt_port, true)  --客户端创建
             log.info("mqtt三元组", ClientId,UserName,PassWord)
             mqttClient:auth(ClientId,UserName,PassWord) --三元组配置
             mqttClient:on(function(mqtt_client, event, data, payload)  --mqtt回调注册
                 -- 用户自定义代码
                 if event == "conack" then
-
+                    -- 无需订阅topic, 阿里云会主动下发通知
                 elseif event == "recv" then
                     log.info("mqtt", "downlink", "topic", data, "payload", payload)
                     if payload then