index.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. // index.js
  2. // 获取应用实例
  3. var MQTT = require("../../utils/mqtt.js");
  4. var TimeNumber;//循环订阅设备主题定时器
  5. const app = getApp()
  6. Page({
  7. data: {
  8. },
  9. onLoad() {
  10. //订阅设备发布的主题
  11. try { clearInterval(TimeNumber); } catch (e) { }
  12. TimeNumber = setInterval(
  13. function () {
  14. /**订阅主题 */
  15. MQTT.subscribeTopic(
  16. "1111", //订阅1111
  17. 0,//消息等级
  18. function () {
  19. console.log("订阅成功");
  20. clearInterval(TimeNumber);//订阅成功结束定时器
  21. },
  22. function () {
  23. console.log("订阅失败");
  24. }
  25. );//订阅主题
  26. }, 1000, "null");//启动定时器,循环订阅主题,直至订阅成功
  27. /**设置接收消息回调*/
  28. MQTT.SetonMessageArrivedCallBack(
  29. function(arg){
  30. console.log("主题:" + arg.destinationName + " 消息:" + arg.payloadString);
  31. MQTT.publishTopic(
  32. "2222", //主题
  33. "msg=====", //消息
  34. 0, //消息等级
  35. false, //是否需要服务器保留消息
  36. function (arg) { //发送成功回调
  37. console.log("发送数据成功");
  38. }
  39. );
  40. }
  41. )
  42. },
  43. })