0

我创建了一个模块来接收云到设备的消息,但模块上没有收到任何消息,是否缺少任何编码?

var Transport = require('azure-iot-device-mqtt').Mqtt;
var Client = require('azure-iot-device').ModuleClient;

Client.fromEnvironment(Transport, function (err, client) {
 if (err) {
   throw err;
 } else {
    client.on('error', function (err) {
      throw err;
    });

    // connect to the Edge instance
    client.open(function (err) {
      if (err) {
        throw err;
      } else {
        console.log('IoT Hub module client initialized');

        client.on('message', function (msg) {
          client.complete(msg, printResultFor('Receiving message'));
          var message = msg.getBytes().toString('utf8');  
          console.log('----');
          console.log(message);
          console.log('----');
          var outputMsg = new Message(message);
          client.sendOutputEvent('output1', outputMsg,     printResultFor('Sending received message'));
        });

        client.on('error', function (err) {
          console.error(err.message);
        });

        console.log('now listening for C2D messages...');
      }
    });
  }
});

监视器

[C2DMessageMonitor] 收到消息:“[{\“机器\”:{\“温度\”:40.750164436176497,\“压力\”:1.0854617712099808},\“环境\”:{\“温度\”:40.450729128416036,\”湿度\":26},\"timeCreated\":\"2018-08-06T13:28:52.0375008Z\"}]"

[C2DMessageMonitor] 状态:消息已完成

4

1 回答 1

1

IoT Edge 尚未正式支持 C2D 消息。它可能适用于某些协议,因为正在构建支持,但目前尚未验证任何内容。

于 2018-08-07T03:44:44.193 回答