gpt4 book ai didi

com.zsmartsystems.zigbee.ZigBeeEndpointAddress类的使用及代码示例

转载 作者:知者 更新时间:2024-03-15 06:39:31 29 4
gpt4 key购买 nike

本文整理了Java中com.zsmartsystems.zigbee.ZigBeeEndpointAddress类的一些代码示例,展示了ZigBeeEndpointAddress类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZigBeeEndpointAddress类的具体详情如下:
包路径:com.zsmartsystems.zigbee.ZigBeeEndpointAddress
类名称:ZigBeeEndpointAddress

ZigBeeEndpointAddress介绍

[英]Defines a unicast ZigBee device address - extends ZigBeeAddress.

The ZigBeeEndpointAddress is defined by the 16 bit network address and the endpoint Id
[中]定义单播ZigBee设备地址-扩展ZigBee地址。
端点地址由16位网络地址和端点Id定义

代码示例

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

/**
 * Gets the endpoint address
 *
 * @return the {@link ZigBeeEndpointAddress}
 */
public ZigBeeEndpointAddress getEndpointAddress() {
  return new ZigBeeEndpointAddress(node.getNetworkAddress(), endpointId);
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Test
public void testConstructor() {
  ZigBeeEndpointAddress address = new ZigBeeEndpointAddress(25000, 33);
  assertEquals(25000, address.getAddress());
  assertEquals(33, address.getEndpoint());
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Test
public void testToString() {
  String stringAddress = "25000/44";
  ZigBeeEndpointAddress address = new ZigBeeEndpointAddress(stringAddress);
  assertEquals(stringAddress, address.toString());
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Override
public int compareTo(ZigBeeAddress that) {
  if (this == that) {
    return 0;
  }
  ZigBeeEndpointAddress thatAddr = (ZigBeeEndpointAddress) that;
  if (thatAddr.getAddress() == getAddress() && thatAddr.getEndpoint() == getEndpoint()) {
    return 0;
  }
  if (thatAddr.getAddress() == getAddress()) {
    return getEndpoint() - thatAddr.getEndpoint();
  }
  return getAddress() - thatAddr.getAddress();
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Test
public void testEquals() {
  ZigBeeEndpointAddress address1 = new ZigBeeEndpointAddress("25000/33");
  ZigBeeEndpointAddress address2 = new ZigBeeEndpointAddress("25000/33");
  assertTrue(address1.equals(address2));
  ZigBeeEndpointAddress address3 = new ZigBeeEndpointAddress("25001/33");
  assertFalse(address1.equals(address3));
  ZigBeeEndpointAddress address4 = new ZigBeeEndpointAddress(25000, 33);
  assertTrue(address1.equals(address4));
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Test
public void testCompareToZdo() {
  ZigBeeEndpointAddress address1 = new ZigBeeEndpointAddress(25000);
  ZigBeeEndpointAddress address2 = new ZigBeeEndpointAddress(25000);
  assertEquals(0, address1.compareTo(address2));
  ZigBeeEndpointAddress address3 = new ZigBeeEndpointAddress("25001");
  assertEquals(-1, address1.compareTo(address3));
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

command.setTcSignificance(true);
command.setDestinationAddress(destination);
command.setSourceAddress(new ZigBeeEndpointAddress(0));
if (ZigBeeBroadcastDestination.getBroadcastDestination(destination.getAddress()) != null) {
  command = new ManagementPermitJoiningRequest();
  command.setPermitDuration(duration);
  command.setTcSignificance(true);
  command.setDestinationAddress(new ZigBeeEndpointAddress(0));
  command.setSourceAddress(new ZigBeeEndpointAddress(0));

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Test
public void testIsGroup() {
  ZigBeeEndpointAddress address = new ZigBeeEndpointAddress("25000/33");
  assertFalse(address.isGroup());
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

ConBeeQuerySendDataResponse(final int[] response) {
  super(response);
  if (deserializeUInt8() != APS_DATA_CONFIRM) {
    throw new IllegalArgumentException();
  }
  sequence = deserializeUInt8();
  deserializeUInt8();
  deserializeUInt16();
  deserializeUInt16();
  state = deserializeDeviceState();
  requestId = deserializeUInt8();
  destinationAddressMode = deserializeAddressMode();
  switch (destinationAddressMode) {
    case GROUP:
      destinationAddress = new ZigBeeGroupAddress(deserializeUInt16());
      break;
    case NWK:
      destinationAddress = new ZigBeeEndpointAddress(deserializeUInt16());
      break;
    case IEEE:
      destinationIeeeAddress = new IeeeAddress(Arrays.copyOfRange(buffer, length, length + 8));
      break;
    default:
      break;
  }
  destinationEndpoint = deserializeUInt8();
  if (destinationAddressMode == ConBeeAddressMode.NWK) {
    ((ZigBeeEndpointAddress) destinationAddress).setEndpoint(destinationEndpoint);
  }
}

代码示例来源: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

@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);
  }
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Override
  public String toString() {
    return "ZigBeeEndpoint [networkAddress=" + getEndpointAddress().toString() + ", profileId="
        + String.format("%04X", profileId) + ", deviceId=" + deviceId + ", deviceVersion=" + deviceVersion
        + ", inputClusterIds=" + getInputClusterIds().toString() + ", outputClusterIds="
        + getOutputClusterIds().toString() + "]";
  }
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Override
public boolean equals(Object obj) {
  if (obj == null) {
    return false;
  }
  if (!ZigBeeEndpointAddress.class.isAssignableFrom(obj.getClass())) {
    return false;
  }
  final ZigBeeEndpointAddress other = (ZigBeeEndpointAddress) obj;
  return (other.getAddress() == getAddress() && other.getEndpoint() == getEndpoint());
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

/**
 * Adds a binding from the cluster to the destination {@link ZigBeeEndpoint}.
 *
 * @param address the destination {@link IeeeAddress}
 * @param endpointId the destination endpoint ID
 * @return Command future
 */
public Future<CommandResult> bind(IeeeAddress address, int endpointId) {
  final BindRequest command = new BindRequest();
  command.setDestinationAddress(new ZigBeeEndpointAddress(zigbeeEndpoint.getEndpointAddress().getAddress()));
  command.setSrcAddress(zigbeeEndpoint.getIeeeAddress());
  command.setSrcEndpoint(zigbeeEndpoint.getEndpointId());
  command.setBindCluster(clusterId);
  command.setDstAddrMode(3); // 64 bit addressing
  command.setDstAddress(address);
  command.setDstEndpoint(endpointId);
  return zigbeeEndpoint.sendTransaction(command, new BindRequest());
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Test
public void testCompareTo() {
  ZigBeeEndpointAddress address1 = new ZigBeeEndpointAddress("25000/33");
  ZigBeeEndpointAddress address2 = new ZigBeeEndpointAddress("25000/33");
  assertEquals(0, address1.compareTo(address2));
  ZigBeeEndpointAddress address3 = new ZigBeeEndpointAddress("25001/33");
  assertTrue(address1.compareTo(address3) < 0);
  ZigBeeEndpointAddress address4 = new ZigBeeEndpointAddress("24999/33");
  assertTrue(address1.compareTo(address4) > 0);
  ZigBeeEndpointAddress address5 = new ZigBeeEndpointAddress("25000/30");
  assertTrue(address1.compareTo(address5) > 0);
  ZigBeeEndpointAddress address6 = new ZigBeeEndpointAddress("25000/36");
  assertTrue(address1.compareTo(address6) < 0);
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

case IEEE:
  serializeUInt8Array(destinationIeeeAddress.getValue());
  serializeUInt8(((ZigBeeEndpointAddress) destinationAddress).getEndpoint());
  break;
case NWK:
  serializeUInt16(destinationAddress.getAddress());
  serializeUInt8(((ZigBeeEndpointAddress) destinationAddress).getEndpoint());
  break;
default:

代码示例来源: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

/**
 * Enables or disables devices to join the whole network.
 * <p>
 * Devices can only join the network when joining is enabled. It is not advised to leave joining enabled permanently
 * since it allows devices to join the network without the installer knowing.
 *
 * @param duration sets the duration of the join enable. Setting this to 0 disables joining. As per ZigBee 3, a
 *            value of 255 is not permitted and will be ignored.
 * @return {@link ZigBeeStatus} with the status of function
 */
public ZigBeeStatus permitJoin(final int duration) {
  return permitJoin(new ZigBeeEndpointAddress(ZigBeeBroadcastDestination.BROADCAST_ROUTERS_AND_COORD.getKey()),
      duration);
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Test
public void testStringConstructorZdo() {
  ZigBeeEndpointAddress address = new ZigBeeEndpointAddress("25000");
  assertEquals(25000, address.getAddress());
  assertEquals(0, address.getEndpoint());
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

/**
 * Switches destination on.
 *
 * @param destination the {@link ZigBeeAddress}
 * @return the command result future.
 */
public Future<CommandResult> on(final ZigBeeAddress destination) {
  if (!(destination instanceof ZigBeeEndpointAddress)) {
    return null;
  }
  ZigBeeEndpointAddress endpointAddress = (ZigBeeEndpointAddress) destination;
  ZigBeeEndpoint endpoint = networkManager.getNode(endpointAddress.getAddress())
      .getEndpoint(endpointAddress.getEndpoint());
  if (endpoint == null) {
    return null;
  }
  ZclOnOffCluster cluster = (ZclOnOffCluster) endpoint.getInputCluster(ZclOnOffCluster.CLUSTER_ID);
  return cluster.onCommand();
}

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com