【问题标题】:How to handle disconnect event in AWS IOT?如何处理 AWS IOT 中的断开连接事件?
【发布时间】:2017-10-08 23:06:57
【问题描述】:

我正在我的网络应用程序中进行实时更新。应用程序使用aws-iot-device-sdk 连接到 AWS IOT:

const client = awsIot.device({
    region: awsConfig.region,
    protocol: 'wss',
    accessKeyId: <accessKey>,
    secretKey: <secretKey>,
    sessionToken: <sessionToken>,
    port: 443,
    host: <iotEndpoint>
});

client.on('connect', res => {
    // ok
});

然后我向我的 API 发送请求,以在包含 IOT 主题 ID 的数据库表中创建一条记录。然后应用订阅这个topic id:

client.subscribe(topicId)

当客户端与 IOT 断开连接时,我想删除数据库中的记录。我该怎么做?我看到物联网中有一个disconnect event。但我不明白如何在 AWS lambda 中处理此事件。

【问题讨论】:

  • 您似乎已经完成了所有研究并了解要使用的物联网机制(尽管您也可以考虑使用 LWT 记录)。你的问题具体是什么?您是否只是在寻求帮助编写可以更新数据库记录的 Lambda 函数?
  • 我正在寻求帮助,在断开事件触发时运行 lambda 函数

标签: amazon-web-services aws-iot


【解决方案1】:

如果我理解正确,您是在询问如何在客户端断开连接时触发 Lambda 函数。

  1. 创建您希望由该事件触发的 Lambda 函数,并将其部署到 AWS。 (如果您被这部分卡住了,请打开另一个问题)。
  2. 进入 IoT 控制台并使用以下规则查询语句创建新规则:SELECT * FROM '$aws/events/presence/disconnected/#'

  3. 对于规则的操作,选择“调用 Lambda 函数”,然后选择您之前部署的 Lambda 函数。

【讨论】:

    猜你喜欢
    • 2018-07-28
    • 2018-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-01
    • 2016-02-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多