根据Semtech公司2015年7月发布的1.0版本翻译
yq原创翻译,转载请注明来自万联社区。
=============
1. 版本历史
2. LoRa服务器接口图表
3. 接口列表
参与方 | 协议 | 传输的JSON对象(A到B) | 传输的JSON对象(B到A) |
网关(A) | GWMP | rxpk,stat | txpk |
网络服务器(A) | TCP | app.userdata, | app.userdata, |
应用服务器(A) | TCP | app.userdata | app.userdata, |
网络服务器(A) | TCP | maccmd, | app.maccmd.transmit.cancel |
任一服务器(A) | UDP | command, ackreq, ack | command, ackreq, ack |
任一服务器(A) | TCP | ip.whichport | ip.publishedport |
4. 传输协议
JSON无论是以GWMP传输或者直接以UDP传输,JSON消息应占有全部负载。尾端的单字节零值(Hex 0x00)可以有但不必须。
JSON以TCP传输时,连续的顶层JSON对象应该以单字节零值分开(Hex 0x00)。
5. JSON对象
JSON对象是。。。。(定义略)
当JSON消息包括BASE64值时,发送方不应发送垫字符。如果有发送,接收方应接受。
16进制值应使用字母a-f来表示大于9的数字。连接符(如‘-’)不应传输。
6. 常规说明
NS和AS之间的用户数据是加密的。
AS和CS之间的所有通讯都是未加密的。
所有数字以base10形式发送,除非特别规定为base16形式。
16进制(base16)数值应以字符串形式传输。‘a-f’(大小写不限)表示10-16。“0x”可能前缀,但并不必须。
有符号正值可以也可以不前缀“+”
负值应前缀“-”
7. JSON对象描述
7.1 Key
[member] 表示对象的数组,类型为member。如果数组只有一个元素,就不必非要发送数组。
斜体属性 表示此对象不是必须的。
7.2 树状图
译者注:其他部分为JSON接口的定义,开发可参照原文。