Emqx-lwm2m:修订间差异
跳转到导航
跳转到搜索
(→说明) |
|||
(未显示同一用户的1个中间版本) | |||
第144行: | 第144行: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
*** {?ObjectInstanceID}:数值, | *** {?ObjectInstanceID}:数值,对象实例ID。 | ||
|- | |- | ||
|<code>lwm2m/{?EndpointName}/up/resp</code> | |<code>lwm2m/{?EndpointName}/up/resp</code> | ||
第201行: | 第201行: | ||
|} | |} | ||
=== | === 订阅 (信息上报接口-订阅/取消订阅) === | ||
{| class="wikitable" | {| class="wikitable" | ||
|+ | |+ | ||
第219行: | 第219行: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| | |此MQTT消息主要用于向LwM2M客户端下发订阅/取消订阅命令。 | ||
* {?EndpointName}:字符串,LwM2M客户端名称 | * {?EndpointName}:字符串,LwM2M客户端名称 | ||
* {?ReqID}:整数,请求ID,与响应相匹配。 | * {?ReqID}:整数,请求ID,与响应相匹配。 | ||
* {?MsgType}:字符串,消息类型。observe= | * {?MsgType}:字符串,消息类型。observe=订阅,cancel-observe=取消订阅 | ||
* {?ResourcePath}:字符串,资源路径。 | * {?ResourcePath}:字符串,资源路径。 | ||
|- | |- | ||
第247行: | 第247行: | ||
* {?EndpointName}:字符串,LwM2M客户端名称 | * {?EndpointName}:字符串,LwM2M客户端名称 | ||
* {?MsgType}:字符串,消息类型。observe= | * {?MsgType}:字符串,消息类型。observe=订阅,cancel-observe=取消订阅,ack=空响应。 | ||
|} | |} | ||
2023年2月17日 (五) 05:59的最新版本
源代码
https://github.com/emqx/emqx-lwm2m
说明
emqx的LwM2M网关插件。此插件通常不需要从源代码安装,直接在EMQX的dashboard的插件页面启用emqx_lwm2m(也可使用源代码ReadMe.md中方式命令启用)。
LwM2M与MQTT 的映射
对与MQTT的应用而言,最主要的部分便是主题(Topic)与负载消息(Payload)。
因此,对于LwM2M网关而言,所有的LwM2M操作均将转换到MQTT的主题与负载消息中。最终用户通过发布MQTT消息下发LwM2M命令、订阅MQTT消息获取LwM2M客户端的上行数据。
注意:下列说明中,{}中的内容为变量,会根据实际情况变化。
主题 | 说明 |
---|---|
lwm2m/{?EndpointName}/up/resp
|
用于LwM2M客户端的上行数据,其中{?EndpointName}为LwM2M客户端名称
|
lwm2m/{?EndpointName}/dn
|
用于向LwM2M客户端发送下行数据,其中{?EndpointName}为LwM2M客户端名称
|
lwm2m/{?EndpiontName}/up/notify
|
用于LwM2M客户端的通知数据,其中{?EndpointName}为LwM2M客户端名称
|
LwM2M网关转换的MQTT消息的负载消息部分通常采用Json格式。
注册/更新 (LwM2M客户端注册接口)
主题 | 负载消息 | 说明 |
---|---|---|
lwm2m/{?EndpointName}/up/resp
|
{
"msgType": {?MsgType},
"data": {
"ep": {?EndpointName},
"lt": {?LifeTime},
"sms": {?MSISDN},
"lwm2m": {?Lwm2mVersion},
"b": {?Binding},
"alternatePath": {?AlternatePath},
"objectList": {?ObjectList}
}
}
|
|
下行命令与上行响应 (设备管理与服务启用接口)
主题 | 负载消息 | 说明 |
---|---|---|
lwm2m/{?EndpointName}/dn
|
{
"reqID": {?ReqID},
"msgType": {?MsgType},
"data": {?Data}
}
|
此MQTT消息主要用于向LwM2M客户端下发命令。
|
lwm2m/{?EndpointName}/up/resp
|
{
"reqID": {?ReqID},
"imei": {?IMEI},
"imsi": {?IMSI},
"msgType": {?MsgType},
"data": {?Data}
}
|
此MQTT消息主要用于LwM2M客户端的响应数据。
|
订阅 (信息上报接口-订阅/取消订阅)
主题 | 负载消息 | 说明 |
---|---|---|
lwm2m/{?EndpointName}/dn
|
{
"reqID": {?ReqID},
"msgType": {?MsgType},
"data": {
"path": {?ResourcePath}
}
}
|
此MQTT消息主要用于向LwM2M客户端下发订阅/取消订阅命令。
|
lwm2m/{?EndpointName}/up/resp
|
{
"reqID": {?ReqID},
"msgType": {?MsgType},
"data": {
"code": {?StatusCode},
"codeMsg": {?CodeMsg},
"reqPath": {?RequestPath},
"content": [
{
"path": {?ResourcePath},
"value": {?Value}
}
]
}
}
|
此MQTT消息主要用于LwM2M客户端的响应数据。
|
通知 (信息上报接口 - 通知)
主题 | 负载消息 | 说明 |
---|---|---|
lwm2m/{?EndpiontName}/up/notify
|
{
"reqID": {?ReqID},
"msgType": {?MsgType},
"seqNum": {?ObserveSeqNum},
"data": {
"code": {?StatusCode},
"codeMsg": {?CodeMsg},
"reqPath": {?RequestPath},
"content": [
{
"path": {?ResourcePath},
"value": {?Value}
}
]
}
}
|
此MQTT消息主要用于LwM2M客户端通知消息。
|