subscribe.js 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. module.exports = {
  2. subscribeSingleDevice: subscribeSingleDevice,
  3. subscribeAllDevice: subscribeAllDevice,
  4. }
  5. // 订阅在线单个设备 pages[0].actionDevice(device);
  6. function subscribeSingleDevice(device) {
  7. // /AIrSMArT_210052355545/status/onoffline 魅族款 APP
  8. // /AIrSMArT_861210052355545/status/onoffline 魅族款 小程序
  9. var deviceId = device.deviceId;
  10. var pages = getCurrentPages();
  11. const strings = require('../strings');
  12. var deviceList = pages[0].getDeviceList();
  13. // 猫王XOG-CyberRadio: BLUFI_864423060242830
  14. if (!strings.isEmpty(deviceList)) {
  15. var deviceListSelect = pages[0].getDeviceListSelect();
  16. ///当前已连接
  17. if (deviceListSelect != null && deviceList.length > deviceListSelect) {
  18. var d = deviceList[deviceListSelect].deviceId;
  19. if (d == deviceId) {
  20. return;
  21. }
  22. }
  23. }
  24. const lexin_util = require('../lexin/util');
  25. var mac = lexin_util.getMacByDeviceId(deviceId);
  26. var topic = `/AIrSMArT_${mac}/status/onoffline`;
  27. const app = getApp();
  28. app.unsubscribe(topic);
  29. app.subscribe(topic);
  30. };
  31. // 订阅在线设备
  32. function subscribeAllDevice() {
  33. console.log("gadsfadsfadsfa==999===");
  34. const strings = require('../strings');
  35. var pages = getCurrentPages();
  36. var deviceList = pages[0].getDeviceList();
  37. if (strings.isEmpty(deviceList)) {
  38. return;
  39. }
  40. console.log("gadsfadsfadsfa==aaa===");
  41. const app = getApp();
  42. const lexin_util = require('../lexin/util');
  43. ///扫描所有在线Wifi设备
  44. for (var i = 0; i < deviceList.length; i++) {
  45. var device = deviceList[i];
  46. console.log("gadsfadsfadsfa==bbb===" + JSON.stringify(device));
  47. console.log("gadsfadsfadsfa==ffff==" + device.connectType);
  48. // device.connectType = 3;
  49. // device.deviceId = "AIrSMArT_861210052356337";
  50. if (device.connectType == 3) {
  51. var deviceId = device.deviceId;
  52. var mac = lexin_util.getMacByDeviceId(deviceId);
  53. var topic = `/AIrSMArT_${mac}/status/onoffline`;
  54. console.log("gadsfadsfadsfa==ccc===" + mac + "===" + topic);
  55. app.subscribe(topic);
  56. }
  57. }
  58. };