Example #1
0
        void locationMgr_DidRangeBeacons(object sender, CLRegionBeaconsRangedEventArgs e)
        {
            if (EnteredRange != null)
            {
                if (e.Beacons.Length > 0)
                {

                    IBRangeEventArgs iba = new IBRangeEventArgs();
                    iba.Region = new IBRegion(e.Region.Major, e.Region.Minor, e.Region.ProximityUuid.ToString(), e.Region.Identifier);
                    iba.Beacons = new List<IBBeacon>();
                    foreach (CLBeacon b in e.Beacons)
                    {
                        int proximity = 0;
                        switch(b.Proximity)
                        {
                            case CLProximity.Immediate:
                                proximity = (int)IBProximityType.Immediate;
                                break;
                            case CLProximity.Near:
                                proximity = (int)IBProximityType.Near;
                                break;
                            case CLProximity.Far:
                                proximity = (int)IBProximityType.Far;
                                break;
                            case CLProximity.Unknown:
                                proximity = (int)IBProximityType.Unknown;
                                break;
                        }

                        iba.Beacons.Add(new IBBeacon()
                        {
                            Accuracy = b.Accuracy,
                            Major = (int)b.Major,
                            Minor = (int)b.Minor,
                            Proximity = proximity,
                            ProximityUuid = b.ProximityUuid.ToString(),
                            Rssi = b.Rssi
                        });
                    }

                    EnteredRange(sender, iba);
                }
            }
        }
Example #2
0
        void EnteredRangeHandler(object sender, RangeEventArgs e)
        {
            if (EnteredRange != null)
            {
                IBRangeEventArgs iba = new IBRangeEventArgs();
                iba.Region = new IBRegion(e.Region.Major, e.Region.Minor, e.Region.ProximityUuid, e.Region.UniqueId);
                iba.Beacons = new List<IBBeacon>();
                foreach (IBeacon b in e.Beacons)
                {
                    iba.Beacons.Add(new IBBeacon()
                    {
                        Accuracy = b.Accuracy,
                        Major = b.Major,
                        Minor = b.Minor,
                        Proximity = b.Proximity,
                        ProximityUuid = b.ProximityUuid,
                        Rssi = b.Rssi
                    });
                }

                EnteredRange(sender, iba);
            }
        }