iotauth_app.lua 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. --[[
  2. @module iotauth_app
  3. @summary 物联网平台 MQTT 三元组参数生成功能模块
  4. @version 1.0
  5. @date 2025.10.31
  6. @author 马梦阳
  7. @usage
  8. 本功能模块演示的内容为:
  9. 利用 iotauth 库为各主流物联网平台生成 MQTT 连接所需的 client_id、user_name、password 参数:
  10. 1. 为 阿里云 生成 MQTT 三元组参数
  11. 2. 为 中移OneNet 生成 MQTT 三元组参数
  12. 3. 为 华为云IoTDA 生成 MQTT 三元组参数
  13. 4. 为 腾讯云 生成 MQTT 三元组参数
  14. 5. 为 涂鸦云 生成 MQTT 三元组参数
  15. 6. 为 百度云 生成 MQTT 三元组参数
  16. 注意事项:
  17. 1. iotauth 库及该示例代码仅供参考,目前已不再提供维护和技术支持服务
  18. 2. 该示例代码存放于:https://gitee.com/openLuat/LuatOS/tree/master/olddemo/iotauth
  19. 3. 在烧录底层固件时需要选择支持 64 位的固件版本
  20. Air7xxx、Air8000 系列模组选择版本号为 101-199 的固件
  21. Air8101 系列模组选择版本号为 V2xxx 的固件(目前 V2xxx 版本固件还没有第一版)
  22. 本文件没有对外接口,直接在 main.lua 中 require "iotauth_app" 就可以加载运行;
  23. ]]
  24. -- 阿里云 MQTT 三元组参数生成
  25. local function generate_aliyun_auth()
  26. local client_id, user_name, password = iotauth.aliyun(
  27. "a1B2c3D4e5F",
  28. "sensor_001",
  29. "Y877Bgo8X5owd3lcB5wWDjryNPoB",
  30. "hmacsha256",
  31. 324721152001213,
  32. true
  33. )
  34. log.info("aliyun", client_id, user_name, password)
  35. end
  36. -- 中移OneNet MQTT 三元组参数生成
  37. local function generate_onenet_auth()
  38. local client_id, user_name, password = iotauth.onenet(
  39. "Ck2AF9QD2K",
  40. "test",
  41. "T0s3ZkJEdkIxTnR6YktZRXRZMFpKTnNGblpycGdidFY=",
  42. "sha256",
  43. 32472115200,
  44. "2048-10-31"
  45. )
  46. log.info("onenet", client_id, user_name, password)
  47. end
  48. -- 华为云 IoTDA MQTT 三元组参数生成
  49. local function generate_iotda_auth()
  50. local client_id, user_name, password = iotauth.iotda(
  51. "6203cc94c7fb24029b110408_88888888",
  52. "123456789"
  53. )
  54. log.info("iotda", client_id, user_name, password)
  55. end
  56. -- 腾讯云 MQTT 三元组参数生成
  57. local function generate_qcloud_auth()
  58. local client_id, user_name, password = iotauth.qcloud(
  59. "LD8S5J1L07",
  60. "test",
  61. "acyv3QDJrRa0fW5UE58KnQ==",
  62. "sha256",
  63. 32472115200,
  64. "12010126"
  65. )
  66. log.info("qcloud", client_id, user_name, password)
  67. end
  68. -- 涂鸦云 MQTT 三元组参数生成
  69. local function generate_tuya_auth()
  70. local client_id, user_name, password = iotauth.tuya(
  71. "6c95875d0f5ba69607nzfl",
  72. "fb803786602df760",
  73. 7258089600
  74. )
  75. log.info("tuya", client_id, user_name, password)
  76. end
  77. -- 百度云 MQTT 三元组参数生成
  78. local function generate_baidu_auth()
  79. local client_id, user_name, password = iotauth.baidu(
  80. "abcd123",
  81. "mydevice",
  82. "ImSeCrEt0I1M2jkl",
  83. "SHA256",
  84. 32472115200
  85. )
  86. log.info("baidu", client_id, user_name, password)
  87. end
  88. -- 主任务函数
  89. local function main_task()
  90. -- 生成阿里云 MQTT 三元组参数
  91. generate_aliyun_auth()
  92. -- 生成中移OneNet MQTT 三元组参数
  93. generate_onenet_auth()
  94. -- 生成华为云 IoTDA MQTT 三元组参数
  95. generate_iotda_auth()
  96. -- 生成腾讯云 MQTT 三元组参数
  97. generate_qcloud_auth()
  98. -- 生成涂鸦云 MQTT 三元组参数
  99. generate_tuya_auth()
  100. -- 生成百度云 MQTT 三元组参数
  101. generate_baidu_auth()
  102. end
  103. -- 启动任务
  104. sys.taskInit(main_task)