Exemplo n.º 1
0
        public ScanResults(IScanResult result)
        {
            IsRunning = false;
            IsVisible = false;
            Device    = result.Device;
            Uuid      = Device.Uuid;

            try
            {
                Name = Device.Name;
                Rssi = result.Rssi;

                IAdvertisementData ad = result.AdvertisementData;
                ServiceCount     = ad.ServiceUuids?.Length ?? 0;
                IsConnectable    = ad.IsConnectable;
                LocalName        = ad.LocalName;
                TxPower          = ad.TxPower;
                ManufacturerData = ad.ManufacturerData == null
                    ? null
                    : BitConverter.ToString(ad.ManufacturerData);

                GuiName = Name ?? "Name is not supported";
                GuiRssi = Rssi.ToString() ?? "RSSI is not supported";
                GuiUuid = Uuid.ToString() ?? "UUID is not supported";
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.ToString());
            }
        }
Exemplo n.º 2
0
        protected ScanResult ToScanResult(BluetoothDevice native, int rssi, IAdvertisementData ad)
        {
            var dev    = this.GetDevice(native);
            var result = new ScanResult(dev, rssi, ad);

            return(result);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Gets a value indicating whether the device supports the service with the given id
        /// </summary>
        /// <param name="serviceGuid">The id of the service</param>
        /// <param name="advertisementData">The advertisement data from the bluetooth device</param>
        /// <returns>True if the device does host the service</returns>
        public static bool HostsService(Guid serviceGuid, IAdvertisementData advertisementData)
        {
            List <Guid> serviceIds = new List <Guid>();

            if (advertisementData.ServiceUuids != null)
            {
                serviceIds = advertisementData.ServiceUuids.ToList();
            }

            return(serviceIds.Contains(serviceGuid));
        }
Exemplo n.º 4
0
        public async void WhenDeviceFound(BLEScanResult result)
        {
            Device.BeginInvokeOnMainThread(delegate {
                StatusText.Text = "Dispositivo Encontrado.";
            });

            Console.WriteLine("Device found!");

            BLEDevice          device = result.Device;
            int                Rssi   = result.Rssi;
            IAdvertisementData data   = result.AdvertisementData;

            await Task.Delay(1500);

            Windesheart.StopScanning();
            try
            {
                device.Connect(OnConnectionFinished);
            }
            catch (Exception e1)
            {
                Console.WriteLine("ERRO - - - -" + e1);
            }
        }
Exemplo n.º 5
0
 public ScanResult(IPeripheral peripheral, int rssi, IAdvertisementData adData)
 {
     this.Peripheral        = peripheral;
     this.Rssi              = rssi;
     this.AdvertisementData = adData;
 }
Exemplo n.º 6
0
 public ScanResult(IDevice device, int rssi, IAdvertisementData adData)
 {
     this.Device            = device;
     this.Rssi              = rssi;
     this.AdvertisementData = adData;
 }
Exemplo n.º 7
0
 public BLEScanResult(BLEDevice device, int rssi, IAdvertisementData advertisementData)
 {
     Device            = device;
     Rssi              = rssi;
     AdvertisementData = advertisementData;
 }