如何处理 AWS IOT 中的断开连接事件?
How to handle disconnect event in AWS IOT?
我正在我的网络应用程序中进行实时更新。该应用程序使用 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 发送请求,要求在数据库 table 中创建一条包含 IOT 主题 ID 的记录。然后申请订阅这个话题id:
client.subscribe(topicId)
我想在客户端与 IOT 断开连接时删除数据库中的记录。我该怎么做?我看到物联网中有一个disconnect event。但是我不明白如何在 AWS lambda 中处理这个事件。
如果我没理解错的话,你问的是客户端断开连接时如何触发Lambda函数。
- 创建您希望由此事件触发的 Lambda 函数,并将其部署到 AWS。 (如果你卡在这部分,请打开另一个问题)。
进入 IoT 控制台并使用以下规则查询语句创建新规则:SELECT * FROM '$aws/events/presence/disconnected/#'
对于规则的操作,select "Invoke Lambda Function" 然后 select 您之前部署的 Lambda 函数。
我正在我的网络应用程序中进行实时更新。该应用程序使用 aws-iot-device-sdk:
连接到 AWS IOTconst client = awsIot.device({
region: awsConfig.region,
protocol: 'wss',
accessKeyId: <accessKey>,
secretKey: <secretKey>,
sessionToken: <sessionToken>,
port: 443,
host: <iotEndpoint>
});
client.on('connect', res => {
// ok
});
然后我向我的 API 发送请求,要求在数据库 table 中创建一条包含 IOT 主题 ID 的记录。然后申请订阅这个话题id:
client.subscribe(topicId)
我想在客户端与 IOT 断开连接时删除数据库中的记录。我该怎么做?我看到物联网中有一个disconnect event。但是我不明白如何在 AWS lambda 中处理这个事件。
如果我没理解错的话,你问的是客户端断开连接时如何触发Lambda函数。
- 创建您希望由此事件触发的 Lambda 函数,并将其部署到 AWS。 (如果你卡在这部分,请打开另一个问题)。
进入 IoT 控制台并使用以下规则查询语句创建新规则:
SELECT * FROM '$aws/events/presence/disconnected/#'
对于规则的操作,select "Invoke Lambda Function" 然后 select 您之前部署的 Lambda 函数。