示例#1
0
        public ushort Discover(ulong address)
        {
            string text = CONSTANTS.DISCOVER;

            byte[] data_bytes = Encoding.UTF8.GetBytes(text);
            byte[] bytes      = this.relay.TranmissionFormatter.FormatDataBytes(address, data_bytes);
            relay.SendBytes(bytes);
            //
            EmissionDescriptor             desc     = this.emissionProcessor.WaitForEmission(EmissionTypes.ExtendedTransmitStatus, 1000);
            ExtendedTransmitStatusEmission response = new ExtendedTransmitStatusEmission();

            response.Unpack(desc.Data);
            if (response.DeliveryStatus != 0)
            {
                throw new Exception($"Error while discovering full address for {address}");
            }
            return(response.Address);
        }