0

经过几天的搜索,我决定在这里寻求帮助。我想发布一个可以控制一些电动机的 Alexa Skill。

当前状态:
- 1 个用户
- 1 个 Alexa
- 1 个本地网络
- 1 个 Raspberry Pi
如果用户调用将 json 请求发送到 Lambda 函数的技能。该函数向 Raspberry Pi(运行本地网络服务器)发送一个 http 请求(使用 DDNS,我“知道”将请求转发到 Raspberry Pi 的路由器的 IP 地址)。这个本地网络服务器现在通过串行接口向电动机发送指令。

我的问题:
如果我添加第 2 个或第 3 个或第 1000 个本地网络(见图),我无法在 Lambda 函数中的这些网络之间再有区别。我如何知道哪个用户属于哪个树莓派?

我即将实现 openHAB、AWS IoT 或 Pubnub,所以我不必担心特定 Raspberry Pi 和 Lambda 函数之间的通信。在此实现之后,Lambda 函数如何仍然不知道用户的意思是哪个 Raspberry Pi?!

啊和用户只能控制自己在同一个本地网络中的树莓派。

基本架构

4

1 回答 1

0

您可以在 JSON 请求中指定唯一的用户 ID 。在您的 Lambda 函数中,您可以在特定于单个 Raspberry Pi 的通道上发布 PubNub 。您的每个 Pis 都可以在其各自的频道上订阅 PubNub 。

在此处获取永久免费的API 密钥

在此处输入图像描述

没有 SDK 的 PubNub 发布:

GET request to: 
http://pubsub.pubnub.com/publish/your_publish_key/your_subscribe_key/0/channel_name/0/{"your_json":"data_here"}
于 2018-06-22T16:21:44.580 回答