| 限定符和类型 | 方法和说明 |
|---|---|
Message |
DeviceMessageCodec.decode(Payload payload) |
Message |
MessageCodec.decode(Payload payload) |
| 限定符和类型 | 方法和说明 |
|---|---|
Class<Message> |
DeviceMessageCodec.forType() |
Class<Message> |
MessageCodec.forType() |
| 限定符和类型 | 方法和说明 |
|---|---|
Payload |
DeviceMessageCodec.encode(Message body) |
Payload |
MessageCodec.encode(Message body) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected <T extends DeviceMessageReply> |
DefaultDeviceMessageSender.convertReply(Message sent,
Object reply) |
| 限定符和类型 | 方法和说明 |
|---|---|
reactor.core.publisher.Flux<Message> |
StandaloneDeviceMessageBroker.handleSendToDeviceMessage(String serverId) |
| 限定符和类型 | 方法和说明 |
|---|---|
reactor.core.publisher.Mono<Integer> |
StandaloneDeviceMessageBroker.send(String serverId,
org.reactivestreams.Publisher<? extends Message> message) |
reactor.core.publisher.Mono<Integer> |
DeviceOperationBroker.send(String deviceGatewayServerId,
org.reactivestreams.Publisher<? extends Message> message)
发送设备消息到指定到服务
|
| 构造器和说明 |
|---|
StandaloneDeviceMessageBroker(reactor.core.publisher.FluxProcessor<Message,Message> processor) |
StandaloneDeviceMessageBroker(reactor.core.publisher.FluxProcessor<Message,Message> processor) |
| 限定符和类型 | 接口和说明 |
|---|---|
interface |
BroadcastMessage
广播消息
|
interface |
DeviceMessage |
interface |
DeviceMessageReply
设备消息回复
|
interface |
RepayableDeviceMessage<R extends DeviceMessageReply>
支持回复的消息
|
interface |
RepayableThingMessage<R extends ThingMessageReply>
支持回复的消息
|
interface |
ThingMessage
物消息
|
interface |
ThingMessageReply |
interface |
UpdateTingTagsMessage
更新物标签消息
|
| 限定符和类型 | 类和说明 |
|---|---|
class |
AcknowledgeDeviceMessage
应答消息,通常用于发送非可回复消息后的应答
|
class |
ChildDeviceMessage
发往子设备的消息,通常是通过网关设备接入平台的设备.
|
class |
ChildDeviceMessageReply
子设备消息
|
class |
CommonDeviceMessage |
class |
CommonDeviceMessageReply<ME extends CommonDeviceMessageReply> |
class |
CommonThingMessage<SELF extends CommonThingMessage<SELF>> |
class |
CommonThingMessageReply<SELF extends CommonThingMessageReply<SELF>> |
class |
DefaultBroadcastMessage |
class |
DefaultUpdateTingTagsMessage |
class |
DerivedMetadataMessage |
class |
DeviceLogMessage |
class |
DeviceOfflineMessage |
class |
DeviceOnlineMessage |
class |
DeviceRegisterMessage
设备注册消息,通常用于子设备连接,并自动与父设备进行绑定
|
class |
DeviceUnRegisterMessage
设备注销消息,与
DeviceRegisterMessage相反 |
class |
DirectDeviceMessage
透传设备消息
|
class |
DisconnectDeviceMessage |
class |
DisconnectDeviceMessageReply |
class |
UpdateTagMessage |
| 限定符和类型 | 方法和说明 |
|---|---|
<T extends Message> |
MessageType.convert(Map<String,Object> map) |
static <T extends Message> |
MessageType.convertMessage(Map<String,Object> map) |
| 限定符和类型 | 方法和说明 |
|---|---|
default <T> Message |
Message.addHeader(HeaderKey<T> header,
T value) |
Message |
Message.addHeader(String header,
Object value)
添加一个header
|
default <T> Message |
Message.addHeaderIfAbsent(HeaderKey<T> header,
T value) |
Message |
Message.addHeaderIfAbsent(String header,
Object value)
添加header,如果header已存在则放弃
|
default Message |
Message.copy() |
Message |
BroadcastMessage.getMessage() |
Message |
Message.removeHeader(String header)
删除一个header
|
| 限定符和类型 | 方法和说明 |
|---|---|
SELF |
CommonThingMessageReply.from(Message message) |
ThingMessageReply |
ThingMessageReply.from(@NotNull Message message) |
DeviceMessageReply |
DeviceMessageReply.from(@NotNull Message message) |
ME |
CommonDeviceMessageReply.from(Message message) |
| 限定符和类型 | 方法和说明 |
|---|---|
Message |
MessageEncodeContext.getMessage()
获取平台下发的给设备的消息指令,根据物模型中定义对应不同的消息类型.
|
| 限定符和类型 | 方法和说明 |
|---|---|
org.reactivestreams.Publisher<? extends Message> |
DeviceMessageDecoder.decode(MessageDecodeContext context)
在服务器收到设备或者网络组件中发来的消息时,会调用协议包中的此方法来进行解码,
将数据
EncodedMessage转为平台的统一消息DeviceMessage
//解码并返回一个消息
public Mono<DeviceMessage> decode(MessageDecodeContext context){
EncodedMessage message = context.getMessage();
byte[] payload = message.payloadAsBytes();//上报的数据
DeviceMessage message = doEncode(payload);
return Mono.just(message);
}
//解码并返回多个消息
public Flux<DeviceMessage> decode(MessageDecodeContext context){
EncodedMessage message = context.getMessage();
byte[] payload = message.payloadAsBytes();//上报的数据
List<DeviceMessage> messages = doEncode(payload);
return Flux.fromIterable(messages);
}
//解码,回复设备并返回一个消息
public Mono<DeviceMessage> decode(MessageDecodeContext context){
EncodedMessage message = context.getMessage();
byte[] payload = message.payloadAsBytes();//上报的数据
DeviceMessage message = doEncode(payload); //解码
FromDeviceMessageContext ctx = (FromDeviceMessageContext)context;
EncodedMessage msg = createReplyMessage(); //构造回复
return ctx
.getSession()
.send(msg) //发送回复
.thenReturn(message);
}
|
reactor.core.publisher.Flux<? extends Message> |
InterceptorDeviceMessageCodec.decode(MessageDecodeContext context) |
| 限定符和类型 | 方法和说明 |
|---|---|
default ToDeviceMessageContext |
ToDeviceMessageContext.mutate(Message anotherMessage,
DeviceOperator device)
使用新的消息和设备,转换为新上下文.
|
default MessageEncodeContext |
MessageEncodeContext.mutate(Message anotherMessage,
DeviceOperator device)
使用新的消息和设备,转换为新上下文
|
| 限定符和类型 | 接口和说明 |
|---|---|
interface |
ThingEventMessage
物事件消息
|
| 限定符和类型 | 类和说明 |
|---|---|
class |
DefaultEventMessage |
class |
EventMessage |
| 限定符和类型 | 类和说明 |
|---|---|
class |
ReadFirmwareMessage
读取设备固件信息
|
class |
ReadFirmwareMessageReply
读取固件信息回复.
|
class |
ReportFirmwareMessage
设备上报固件信息
|
class |
RequestFirmwareMessage
拉取固件更新请求
|
class |
RequestFirmwareMessageReply
拉取固件信息响应
|
class |
UpgradeFirmwareMessage
更新设备固件消息,平台->设备
|
class |
UpgradeFirmwareMessageReply
固件更新回复
|
class |
UpgradeFirmwareProgressMessage
上报固件更新进度
|
| 限定符和类型 | 接口和说明 |
|---|---|
interface |
ThingFunctionInvokeMessage<R extends ThingFunctionInvokeMessageReply>
物功能调用消息
|
interface |
ThingFunctionInvokeMessageReply
物功能调用回复,用于对物模型功能调用进行响应
|
| 限定符和类型 | 类和说明 |
|---|---|
class |
DefaultFunctionInvokeMessage |
class |
DefaultFunctionInvokeMessageReply |
class |
FunctionInvokeMessage |
class |
FunctionInvokeMessageReply |
| 限定符和类型 | 方法和说明 |
|---|---|
default <T extends Message,R extends T> |
DeviceMessageDecodeInterceptor.postDecode(MessageDecodeContext context,
R deviceMessage)
解码后执行
|
| 限定符和类型 | 接口和说明 |
|---|---|
interface |
ReadThingPropertyMessage<T extends ReadThingPropertyMessageReply>
读取设备属性消息, 方向: 平台->设备
下发指令后,设备需要回复指令
ReadPropertyMessageReply |
interface |
ReadThingPropertyMessageReply
读取设备属性消息回复, 方向: 设备->平台
在设备接收到
ReadPropertyMessage消息后,使用此消息进行回复,回复后,指令发起方将收到响应结果. |
interface |
ThingReportPropertyMessage
上报设备属性,通常由设备定时上报,方向: 设备->平台
|
interface |
WriteThingPropertyMessage<T extends WriteThingPropertyMessageReply>
读取设备属性消息, 方向: 平台->设备
下发指令后,设备需要回复指令
ReadPropertyMessageReply |
interface |
WriteThingPropertyMessageReply
读取设备属性消息回复, 方向: 设备->平台
在设备接收到
ReadPropertyMessage消息后,使用此消息进行回复,回复后,指令发起方将收到响应结果. |
| 限定符和类型 | 类和说明 |
|---|---|
class |
DefaultReadPropertyMessage
读取设备属性消息, 方向: 平台->设备
下发指令后,设备需要回复指令
ReadPropertyMessageReply |
class |
DefaultReadPropertyMessageReply
读取设备属性消息回复, 方向: 设备->平台
在设备接收到
ReadPropertyMessage消息后,使用此消息进行回复,回复后,指令发起方将收到响应结果. |
class |
DefaultReportPropertyMessage
上报物属性
|
class |
DefaultWritePropertyMessage
修改属性指令,方向: 平台->设备
用于修改设备属性,下发指令后,设备需要回复
WritePropertyMessageReply |
class |
DefaultWritePropertyMessageReply |
class |
ReadPropertyMessage
读取设备属性消息, 方向: 平台->设备
下发指令后,设备需要回复指令
ReadPropertyMessageReply,且getMessageId()值需要相同 |
class |
ReadPropertyMessageReply
读取设备属性消息回复, 方向: 设备->平台
在设备接收到
ReadPropertyMessage消息后,使用此消息进行回复,回复后,指令发起方将收到响应结果. |
class |
ReportPropertyMessage
上报设备属性,通常由设备定时上报,方向: 设备->平台
|
class |
WritePropertyMessage
修改属性指令,方向: 平台->设备
用于修改设备属性,下发指令后,设备需要回复
WritePropertyMessageReply |
class |
WritePropertyMessageReply |
| 限定符和类型 | 类和说明 |
|---|---|
class |
DeviceStateCheckMessage
设备状态检查消息,通常用于子设备的状态检查。
|
class |
DeviceStateCheckMessageReply
设备状态检查回复,如果设备存在则回复
DeviceStateCheckMessageReply.success(byte) |
| 限定符和类型 | 方法和说明 |
|---|---|
reactor.core.publisher.Flux<Message> |
MessageHandler.handleSendToDeviceMessage(String serverId)
监听发往设备的指令
|
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
DeviceMessageTracer.trace(Message message,
String name) |
static void |
DeviceMessageTracer.trace(Message message,
String name,
Object value) |
Copyright © 2019–2022. All rights reserved.