2014-11-21 62 views
0

我有一个嵌入式设备,可以通过UDP控制JSON。我目前正在通过iOS应用程序执行此操作,并且一切正常。Azure物联网通信

我现在想要能够从远程位置控制我的设备。我希望使用Azure来执行此任务。我设想我将建立一个Azure网站,使我能够选择选项,然后将JSON发送到位于防火墙后面的设备。

我的问题是我应该关注哪些Azure服务?另外,将JSON数据包发送到防火墙后面的设备的最佳方式是什么(我不想使用端口转发)。

回答

2

一般情况下,为了避免你的局域网(其中有您的嵌入式设备)之外的攻击面,更好的解决办法是打开并从嵌入式设备到云输出连接并保持打开状态,以便它可以发送并接收数据/命令。 在这种情况下,在Azure上,您可以使用Service Bus(队列,主题/订阅或事件集线器)通过AMQP协议发送/接收,但它与您的设备和功能严格相关。你可以分享更多的信息吗?它是一台受限设备或具有高级别操作系统(Linux,Windows,...)的更多电源设备?

保罗Patierno

+0

设备运行的是RTOS和C的开发,但它有一个带UCP和TCP的TCP/IP堆栈,可用于创建HTTP数据包或其他数据包。您也可以获取MAC地址,并在本地网络上使用MDNS进行自我宣传。它是德州仪器的CC3200 MCU。 AMQP协议有多复杂,你可以使用建立在TCP或UDP之上的字符串轻松创建它吗? – Remixed123 2014-11-21 08:24:14

+0

在这种情况下,我认为最好的解决方案可能是MQTT,并在云中开发一个桥接到Service Bus。 AMQP比MQTT更复杂,并且不像MQTT那样轻量级。但是,使用情况取决于应用程序。 – ppatierno 2014-11-21 13:19:08

+0

谢谢,所以我假设在这个解决方案中,我的设备将轮询服务总线以查看是否有任何新数据要使用?这将是最好的服务总线选项使用;队列,主题或事件?另外,我的设备使用/使用JSON来启用其控制,因此哪种协议最适合与JSON数据一起使用? – Remixed123 2014-11-21 14:42:13

0

关于上运行的Android设备上使用AMQP是非常乏味的。 dalvik中的java实现缺少很多必需的API。

顺便说一句,你知道哪里可以找到相关的路径段信息在Azure中AMQP纯语法使用,与物联网,集线器端点进行交互。像队列例如,我们可以有:

amqps://:@ .servicebus.windows.net/

感谢