用于 Alexa 的 AWS Lambda 函数中的 MQTT Javascript

MQTT in AWS Lambda function for Alexa Javascript

请帮忙,我需要在 lambda 函数中使用 mqtt 协议来向代理发送一些数据。 我用简单的代码来测试它:

mqtt = require('mqtt');
var client  = mqtt.connect('mqtt://test.mosquitto.org');

client.on('connect', function () {
  client.subscribe('presence');
  client.publish('presence', 'Hello mqtt');
});

client.on('message', function (topic, message) {
  // message is Buffer 
  console.log(message.toString());
  client.end();
});

但是我得到一个错误 "Cannot find module 'mqtt'",我怎样才能在 lambda 函数中包含这个模块???我怎样才能在我的 lambda 中使用 mqtt?有人吗???

首先你会在你的项目目录中做:

npm install mqtt --save 

在您压缩此文件夹(在文件夹、文件和子目录内)并上传到您的 lambda 函数之后。

每次你必须创建一个处理函数,所以你将创建一个这样的函数:

exports.handler  = function (event, context, callback) {
... your code...

}

在 AWS 面板的 lambda 函数中,您将在 Handler 文本字段中指定文件和正在使用的函数。