kontaktio / kontakt-ios-sdk

This SDK makes it easy for you to configure, monitor, and securely update Kontakt.io Beacons through our Kontakt.io API.
http://developer.kontakt.io
Other
48 stars 9 forks source link

Kontakt iOS Management App #14

Closed jcyu0208 closed 8 years ago

jcyu0208 commented 8 years ago

Hi,

In the iOS management application, once an Eddystone beacon is detected, the application is able to display its name. However, going through the KTKEddystone, I can't seem to find that property anywhere. How do we access those properties? Do we need to query the Rest API for that?

EDIT: As I understand, the KTKNearbyDevice is the one accessed in the management app. Is there any way to get the KTKEddystoneUUID from the a KTKNearbyDevice?

stoprocent commented 8 years ago

@jcyu0208 KTKNearbyDevice is a result of KTKDevicesManager scan. KTKDevicesManager was created to scan for nearby devices which can be managed (change configuration etc.).

When you are using KTKEddystoneManager you will get KTKEddystone object. It does not contain name as name is not a part of Eddystone specification.

Name is included in scan response and it's a bad practice to rely on scan response. Eddystones can be set to non-connectable mode and they would not respond to scan requests from the central.

stoprocent commented 8 years ago

Also when using Secure Shuffling name is not even included in scan response.

jcyu0208 commented 8 years ago

Okay thanks for clearing that up.

One more thing, why doesn't KTKNearbyDevice include any of the Eddystone Frames? Is it because in this mode, any configurable device (even those not belonging to our organization) can be detected?

stoprocent commented 8 years ago

@jcyu0208 Because KTKNearbyDevice is an object not related to any profile. You can access Eddystone properties for KTKNearbyDevice by connecting and reading its configuration.

As I stated before you should never rely on any devices name as this is a bad practice.