feature:
你只需要在 model.json 里定义一个描述文件,具体以含义看注释,
然后配置 mqtt ,mysql 连接信息在 bridge.yml,
运行 release/bin/server 启动项目
就可以自动根据描述文件解析mqtt消息并存进数据库内。
[
{
"name": "user", //"动态生成的类名”
"topic": "user_topic",
"clientId": "user_client",
"cleanSession": true,
"qos": 1,
"storeType": "mysql",
"fields": [{
"name": "id",
"type": "long", //"存数据库字段的类型"
"index": 1,
"lenght": 8, //"截取多少个字节"
"offset": 2,
"idType": "auto" //”如果是auto就是用数据库的自增,否则是截取到的数据“
},
{
"name": "loginLength",
"type": "int",
"index": 2,
"lenght": 2,
"isTransient": true //"不持久化到数据库内"
},
{
"name": "login",
"type": "byte[]",
"index": 3,
"dependsOn": 2 //"根据指定index的字段的值作为长度“
}
]
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/mqtt_test
username:
password:
jdbc:
template:
prefix: t_
suffix: _test
insertGetId: false
logging:
config: logback.xml
bridge:
modelPath: model.json
mqtts:
- url: tcp://localhost:1883
username:
password:
keepAlive: 20
retained: false
reconnectAttemptsMax: -1
reconnectDelay: 10
models:
- user
写在这里也是作为自己的笔记 环境ubuntu16.04 ros kinetic 注意该环境所用到pip均为pip 不是pip3否则会有很多坑等着你来掉 前提条件 安装mqtt_bridge并且实现本机内的通讯功能 https://github.com/aws-robotics/aws-iot-bridge-example 这里是官方给的代码示例,真的很难用。不建议使用,不过对文档中所写到的内容可以
iot-mqtt,由 java 和 netty 实现的 MQTT 代理,支持持久性。 本项目完全借鉴 jmqtt 项目 https://github.com/Cicizz/jmqtt 目前只是对部分代码进行了梳理重构,去除了集群部分, 修正了一些 bug,并加入简单的 $SYS/实现,后期会加入原创的集群的实现。 现在已对 mqtt3.1.1 协议有完整的实现。 本项目默认采用 rocksdb 做
这个组件提供了一个服务器,它能处理远程MQTT客户端连接,通信和信息交换。 它的API提供了,当接受到客户端发送的raw protocol消息时相应的事件和提供一些发送信息到客户端的功能。 它不是一个功能齐全的MQTT broker,但可以用来建立类似的东西或者协议转换。 使用MQTT服务器 要使用Vert.x MQTT服务器,增加以下依赖到构建描述符中 Maven (in your pom.xm
null 对于谷歌来说,我们已经发现控制流与Azure和AWS相比是不同的。 对于Google来说,在等待接收消息之前,我们需要每次订阅和取消订阅给定的主题,而对于AWS和Azure来说,我们需要在打开MQTT连接时订阅一次。 问题: 有时5秒的设备超时发生,因为它无法从谷歌MQTT桥接收订阅主题的消息。添加多次重试来克服超时问题是不成功的,因为问题仍然存在,因为设备在开机后的设备操作45-60秒
null 有人帮忙吗? 谢谢,拉胡尔
我一直在考虑MQTT协议,但我不想让一个外部服务器运行MQTT代理,而且我找不到Win IoT的代理。Windows IOT Core是否存在MQTT代理?如果没有,你会推荐什么通信协议?