我有一个运行Windows IOT Core的Raspberry Pi,它正在运行我的家庭自动化应用程序。现在我需要在RB饼和ESP8266之间建立通信。
我一直在考虑MQTT协议,但我不想让外部服务器运行MQTT代理,我找不到Win IOT的代理。 Windows IOT Core是否存在MQTT代理?如果没有,您会为此目的推荐什么样的通信协议?
答案 0 :(得分:3)
Antonio在Windows IoT Core上有几个选项
如果您使用Node.js构建应用程序 Mosca (http://www.mosca.io)
如果您使用Python构建应用程序,可以查看 hbmqtt (https://github.com/beerfactory/hbmqtt)
当然,对于.NET应用程序,您可以搜索Nuget。 GnattMQ (www.nuget.org/packages/GnatMQ)似乎是非常受欢迎的.NET库
答案 1 :(得分:2)
是GnatMQTT是用C#编写的,所以我想应该建立在Window IoT上
答案 2 :(得分:1)
可能存在一些MQTT lib或其他协议。但我假设以下情况并建议解决方案:
<强>假设:强>
<强>解决方案:强>
示例邮件格式:
消息可以是字符串(ASCII编码)。
ABBBEEECCCDDDD.....DDD
A: Start Header
BBB: Sender ID
EEE: Receiver ID
CCC: Payload Byte Count
D..: Payload
OR
A|BBB|EEE|DDDDD..DDDDDD|F
A: Start Header
|: Seperator
BBB: Sender ID
EEE: Receiver ID
D..: DATA payload
F: End Header.
此配置允许您使用DHCP,而不是记录客户端的任何IP地址,并且实施起来很便宜(根据资源ram,cpu等)。 注意:我不知道MQTT如何使用资源。
答案 3 :(得分:-2)
有ton of MQTT brokers可用。 ActiveMQ是使用Java构建的,可以安装在任何支持Java的平台上。 Mosquitto和RabbitMQ具有适用于Windows的安装程序。
但是,如果你想要比MQTT更轻量级的东西,你可能还想看看CoAP。