- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
本文整理了Java中com.zsmartsystems.zigbee.zcl.ZclCommand
类的一些代码示例,展示了ZclCommand
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZclCommand
类的具体详情如下:
包路径:com.zsmartsystems.zigbee.zcl.ZclCommand
类名称:ZclCommand
[英]Base class for value object classes holding ZCL commands, extended from ZigBeeCommand.
[中]包含ZCL命令的值对象类的基类,从ZigBeeCommand扩展而来。
代码示例来源:origin: openhab/org.openhab.binding.zigbee
public boolean matchesCommand(ZclCommand command) {
boolean commandIdMatches = command.getCommandId().intValue() == commandId;
boolean commandParameterMatches = commandParameterName == null || commandParameterValue == null
|| matchesParameter(command);
return commandIdMatches && commandParameterMatches;
}
代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee
if (!command.getSourceAddress().equals(getEndpointAddress())) {
return;
ZclCluster cluster = getReceiveCluster(command.getClusterId(), command.getCommandDirection());
if (cluster == null) {
logger.debug("{}: Cluster {} not found for attribute response", getEndpointAddress(),
command.getClusterId());
return;
if (!command.isGenericCommand()) {
cluster.handleCommand(command);
代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee
@Override
public boolean isTransactionMatch(ZigBeeCommand request, ZigBeeCommand response) {
if (!request.getDestinationAddress().equals(response.getSourceAddress())) {
return false;
}
if (response instanceof ZclCommand && ((ZclCommand) request).getTransactionId() != null) {
final int transactionId = ((ZclCommand) request).getTransactionId();
return Integer.valueOf(transactionId).equals(((ZclCommand) response).getTransactionId());
} else {
return false;
}
}
}
代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee
private ZigBeeCommand receiveZclCommand(final ZclFieldDeserializer fieldDeserializer,
final ZigBeeApsFrame apsFrame) {
// Process the ZCL header
ZclHeader zclHeader = new ZclHeader(fieldDeserializer);
logger.debug("RX ZCL: {}", zclHeader);
// Get the command type
ZclCommandType commandType = null;
if (zclHeader.getFrameType() == ZclFrameType.ENTIRE_PROFILE_COMMAND) {
commandType = ZclCommandType.getGeneric(zclHeader.getCommandId());
} else {
commandType = ZclCommandType.getCommandType(apsFrame.getCluster(), zclHeader.getCommandId(),
zclHeader.getDirection());
}
if (commandType == null) {
logger.debug("No command type found for {}, cluster={}, command={}, direction={}", zclHeader.getFrameType(),
apsFrame.getCluster(), zclHeader.getCommandId(), zclHeader.getDirection());
return null;
}
ZclCommand command = commandType.instantiateCommand();
if (command == null) {
logger.debug("No command found for {}, cluster={}, command={}", zclHeader.getFrameType(),
apsFrame.getCluster(), zclHeader.getCommandId());
return null;
}
command.setCommandDirection(zclHeader.getDirection());
command.deserialize(fieldDeserializer);
command.setClusterId(apsFrame.getCluster());
command.setTransactionId(zclHeader.getSequenceNumber());
return command;
}
代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee
@Test
public void testMatch() {
ZclTransactionMatcher matcher = new ZclTransactionMatcher();
ZclCommand zclCommand = new OnCommand();
zclCommand.setDestinationAddress(new ZigBeeEndpointAddress(1234, 5));
ZclCommand zclResponse = new DefaultResponse();
zclResponse.setSourceAddress(new ZigBeeEndpointAddress(1234, 5));
assertFalse(matcher.isTransactionMatch(zclCommand, zclResponse));
zclCommand.setTransactionId(22);
zclResponse.setTransactionId(22);
assertTrue(matcher.isTransactionMatch(zclCommand, zclResponse));
zclResponse.setTransactionId(222);
assertFalse(matcher.isTransactionMatch(zclCommand, zclResponse));
ZdoCommand zdoResponse = new DeviceAnnounce();
assertFalse(matcher.isTransactionMatch(zclCommand, zdoResponse));
zclResponse.setTransactionId(22);
assertTrue(matcher.isTransactionMatch(zclCommand, zclResponse));
zclResponse.setSourceAddress(new ZigBeeEndpointAddress(1234, 6));
assertFalse(matcher.isTransactionMatch(zclCommand, zclResponse));
}
}
代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee
zclHeader.setFrameType(zclCommand.isGenericCommand() ? ZclFrameType.ENTIRE_PROFILE_COMMAND
: ZclFrameType.CLUSTER_SPECIFIC_COMMAND);
zclHeader.setCommandId(zclCommand.getCommandId());
zclHeader.setSequenceNumber(command.getTransactionId());
zclHeader.setDirection(zclCommand.getCommandDirection());
代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee
@Override
public void commandReceived(ZigBeeCommand command) {
// This gets called for all received commands
// Check if it's our address
if (command.getSourceAddress().getAddress() != networkAddress) {
return;
}
if (!(command instanceof ZclCommand)) {
return;
}
logger.trace("{}: ZigBeeEndpoint.commandReceived({})", ieeeAddress, command);
ZclCommand zclCommand = (ZclCommand) command;
ZigBeeEndpointAddress endpointAddress = (ZigBeeEndpointAddress) zclCommand.getSourceAddress();
ZigBeeEndpoint endpoint = endpoints.get(endpointAddress.getEndpoint());
if (endpoint != null) {
endpoint.commandReceived(zclCommand);
}
}
代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee
Mockito.when(invalidSourceAddress.getEndpoint()).thenReturn(1);
ZclCommand zigbeeCommand = Mockito.mock(ZclCommand.class);
Mockito.when(zigbeeCommand.getSourceAddress()).thenReturn(invalidSourceAddress);
node.commandReceived(zigbeeCommand);
Mockito.verify(endpoint1, Mockito.times(0)).commandReceived(ArgumentMatchers.any(ZclCommand.class));
Mockito.when(unicastDestination.getAddress()).thenReturn(123);
Mockito.when(unicastDestination.getEndpoint()).thenReturn(1);
Mockito.when(unicast.getSourceAddress()).thenReturn(sourceAddress);
Mockito.when(unicast.getDestinationAddress()).thenReturn(unicastDestination);
代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee
/**
* Sends {@link ZclCommand} command to {@link ZigBeeAddress}.
*
* @param destination the destination
* @param command the {@link ZclCommand}
* @return the command result future
*/
public Future<CommandResult> send(ZigBeeAddress destination, ZclCommand command) {
command.setDestinationAddress(destination);
if (destination.isGroup()) {
return broadcast(command);
} else {
final ZigBeeTransactionMatcher responseMatcher = new ZclTransactionMatcher();
return sendTransaction(command, responseMatcher);
}
}
代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee
@Override
public String toString() {
Integer resolvedClusterId = getClusterId();
final StringBuilder builder = new StringBuilder();
builder.append(ZclClusterType.getValueById(resolvedClusterId).getLabel());
builder.append(": ");
builder.append(super.toString());
return builder.toString();
}
}
代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee
@Override
public void commandReceived(final ZigBeeCommand command) {
// ZCL command received from remote node. Perform discovery if it is not yet known.
if (command instanceof ZclCommand) {
final ZclCommand zclCommand = (ZclCommand) command;
if (networkManager.getNode(zclCommand.getSourceAddress().getAddress()) == null) {
// TODO: Protect against group address?
ZigBeeEndpointAddress address = (ZigBeeEndpointAddress) zclCommand.getSourceAddress();
startNodeDiscovery(address.getAddress());
}
return;
}
// Node has been announced.
if (command instanceof DeviceAnnounce) {
final DeviceAnnounce announce = (DeviceAnnounce) command;
logger.debug("{}: Device announce received. NWK={}", announce.getIeeeAddr(),
announce.getNwkAddrOfInterest());
addNode(announce.getIeeeAddr(), announce.getNwkAddrOfInterest());
}
}
代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee
@Test
public void testNodeAddressUpdate() {
IeeeAddress ieeeAddress = new IeeeAddress("123456890ABCDEF");
ZigBeeNode node = Mockito.mock(ZigBeeNode.class);// new ZigBeeNode(networkManager, ieeeAddress);
Mockito.doReturn(node).when(networkManager).getNode(ArgumentMatchers.any(IeeeAddress.class));
DeviceAnnounce announce = new DeviceAnnounce();
announce.setIeeeAddr(ieeeAddress);
announce.setNwkAddrOfInterest(12345);
ZigBeeNetworkDiscoverer discoverer = new ZigBeeNetworkDiscoverer(networkManager);
discoverer.setRetryPeriod(0);
discoverer.setRequeryPeriod(0);
discoverer.setRetryCount(0);
discoverer.commandReceived(announce);
Mockito.verify(node, Mockito.times(1)).setNetworkAddress(ArgumentMatchers.anyInt());
ZigBeeEndpointAddress address = Mockito.mock(ZigBeeEndpointAddress.class);
Mockito.when(address.getAddress()).thenReturn(12345);
ZclCommand zclCommand = Mockito.mock(ZclCommand.class);
Mockito.when(zclCommand.getSourceAddress()).thenReturn(address);
discoverer.commandReceived(zclCommand);
}
}
Zigbee 和 Zigbee PRO 之间有什么区别(如果有)? 我在维基百科和 official Zigbee site 上找不到任何具体内容这一切都归结为一些优化。 实际使用上有什么区别吗? 最
是否可以使用 XBee PRO S2B 与 ZigBee HA(家庭自动化)配置文件传感器进行通信?如果可以,如何进行通信?有谁知道我在哪里可以找到有关 ZigBee HA 配置文件的规范? 非常感谢
我已经有一段时间不了解 ZigBee 了。谁拥有最成熟的 Zigbee 堆栈?是 Microchip、Chipcon 还是 Atmel? 是否有价格低于 10 美元的 RF 模块? 我记得不久前某些堆
我之前的经验是能够接收我的温度/湿度zigbee传感器发送的数据。此外,我还可以发送命令来控制 zigbee 功率计/开关。 我购买了一个运动检测传感器,其中包含一行 IAS 数据包的文档。我知道这是
我之前的经验是能够接收我的温度/湿度zigbee传感器发送的数据。此外,我还可以发送命令来控制 zigbee 功率计/开关。 我购买了一个运动检测传感器,其中包含一行 IAS 数据包的文档。我知道这是
我目前正在研究 ZigBee,我遇到了以下问题: 每个 ZigBee 设备都有一个 16 位短地址,这意味着我最多可以连接 2^16=65536 个不同的设备(当然减去一些保留地址)。现在每个设备最多
关于这个问题,我询问了一些从事ZigBee应用开发的开发人员。他们告诉我,一个 radio 模块(对我来说,这是指一个节点,同一件事)在形成网络时只能有一个配置文件。 但是,当我阅读“Drew Gis
智能家居连接,不仅仅只有 Wi-Fi 和蓝牙这些大家熟悉的技术,还有一些更加符合智能家居应用的行业专有协议,比如Zigbee,Z-Wave 和 Thread等等。 当谈到家庭自动化时
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeApsFrame类的一些代码示例,展示了ZigBeeApsFrame类的具体用法。这些代码示例主要来源于Github/
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeEndpointAddress类的一些代码示例,展示了ZigBeeEndpointAddress类的具体用法。这些代码
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeChannel类的一些代码示例,展示了ZigBeeChannel类的具体用法。这些代码示例主要来源于Github/St
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeNetworkManager类的一些代码示例,展示了ZigBeeNetworkManager类的具体用法。这些代码示例
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeEndpoint类的一些代码示例,展示了ZigBeeEndpoint类的具体用法。这些代码示例主要来源于Github/
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeNode类的一些代码示例,展示了ZigBeeNode类的具体用法。这些代码示例主要来源于Github/Stackove
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeProfileType类的一些代码示例,展示了ZigBeeProfileType类的具体用法。这些代码示例主要来源于G
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeAddress类的一些代码示例,展示了ZigBeeAddress类的具体用法。这些代码示例主要来源于Github/St
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeGroupAddress类的一些代码示例,展示了ZigBeeGroupAddress类的具体用法。这些代码示例主要来源
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeCommand类的一些代码示例,展示了ZigBeeCommand类的具体用法。这些代码示例主要来源于Github/St
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeNetworkNodeListener类的一些代码示例,展示了ZigBeeNetworkNodeListener类的具
本文整理了Java中com.zsmartsystems.zigbee.ZigBeeBroadcastDestination类的一些代码示例,展示了ZigBeeBroadcastDestination类
我是一名优秀的程序员,十分优秀!