private async void OnPacketArrival(PacketDotNet.Ieee80211.ActionFrame actionFrame) { if (BufferMatchers.FindPatternEndsWith(actionFrame.PayloadData, this.settings.TogglePacket)) { var addressBytes = actionFrame.SourceAddress.GetAddressBytes(); var addressString = BitConverter .ToString(addressBytes) .Replace("-", ":") .ToLower(); var mappedTarget = this.settings.DeviceMap .SingleOrDefault(x => x.Mac == addressString); if (mappedTarget != default(DeviceMap)) { var message = new ManagedMqttApplicationMessage() { ApplicationMessage = new MQTTnet.MqttApplicationMessage { Topic = mappedTarget.Topic, Payload = Encoding.UTF8.GetBytes(mappedTarget.Message) } }; await this.managedMqttClient.PublishAsync(message); } } }
private void OnPacketArrival(PacketDotNet.Ieee80211.ActionFrame actionFrame) { if (BufferMatchers.FindPatternEndsWith(actionFrame.PayloadData, this.settings.TogglePacket)) { var addressBytes = actionFrame.SourceAddress.GetAddressBytes(); var addressString = BitConverter .ToString(addressBytes) .Replace("-", ":") .ToLower(); this.logger.LogInformation("Found potential Target: {0}", addressString); } }