如何与用户链接设备?


9

我正在尝试使用Arduino和Amazon的服务菜单(Alexa Skill Kit,AWS Lambda和AWS IoT)来学习IoT开发。我已经走了很长一段路,但是当我考虑将其实现为一系列设备时,我不知道该如何解决这个问题:

对于无头设备,如何将客户的设备与该客户链接?

每当用户调用您的Alexa技能时,您都可以轻松地从Alexa获取用户ID,并且可以将数据库中的用户ID与客户进行匹配,并可以将其与向该客户注册的设备进行匹配-但是如何向客户注册设备?是否一定要让客户在某个地方的UI中输入序列号?我曾想过,您可能会使用OAUTH从例如客户的Amazon帐户中获取令牌,然后将其发送到设备,然后让该设备向您的数据库同时显示令牌和其自身的标识符。这样,您至少在他们的关联帐户和设备之间具有链接。

这听起来像是一种合理的方法吗?关于将特定设备连接到特定客户帐户的信息,我找不到很多,因此非常欢迎提供更多信息的任何链接。

Answers:


4

许多公司“让客户在某个地方的UI中输入序列号”。购买设备时,说明通常会要求客户访问公司网站,创建帐户并输入设备的序列号和/或MAC地址。您创建的同一帐户就是您与该设备连接的任何智能手机应用程序(通常是公司制造的专有应用程序)所使用的帐户。将无头设备链接到家庭ISP网络是另一个问题。如果通过wifi连接,则通常该设备以接入点模式出厂,并会广播自己的wifi网络,并带有SSID名称,例如“ NewThermostat_12345”。客户连接到该wifi网络,如果他们打开浏览器,专属门户通常会将他们直接带到管理页面,在这里他们可以输入家庭wifi网络的SSID名称和密码。然后,设备关闭接入点模式(NewThermostat网络消失),打开客户端模式,然后连接到您的家庭wifi网络。


谢谢!进一步考虑一下,我认为使用专有应用程序也会有所帮助,因为它会从设备上分担很多处理工作,这可能会对硬件要求产生重大影响。让设备在wifi上显示令牌/证书比通过初始身份验证过程要轻得多。此外,该应用程序还可以充当GUI来处理初始的wifi设置,因此您已经用一块石头杀死了两只鸟。
user5468

2

除了两种最常见的方法:

  1. 客户将设备上打印的序列号输入公司门户。
  2. 设备公开WiFi AP进行初始注册。

是不常见的第三种方法:

  1. 设备响应物理触发形成接近连接。

触发条件可能是将磁铁带到附近,敲击设备,将红外灯照到窗口中或移开一次性标签。无论触发器是什么,它都将导致设备进入调试或注册模式,从而使其对某种形式的短距离通信做出响应。通常是蓝牙,但可以是NFC或WiFi。该设备通过此临时通信通道与客户的智能手机或计算机配对,从而自动通知其唯一标识,以便客户完成设备注册过程。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.