hackist_navyBlue

iBeaconが届いたのでいろいろ調べてみた

iBeacon

みなさん、こんにちは。
リアル連動大好き一階です。
 
随分前に発注したEstimote社のBeaconがやっと来ました。
ちょっと遅くなりましたが、いろいろ軽く調べた事をメモがてらつらつら書いていきます。


まず、使い方。
パッケージには使い方などが一切入っていません。
どうやって電源を入れるのか?どうやってBeaconの情報(後述)を書き換えるのか?
いろいろと分かりません。

とりあえず電源を入れないことには始まらないので、まずは電源の調査から。
いろいろこねくり回したけど分からないので、さくっと割りました!
iBeacon中身
電池は工場出荷時から既にセットされていてすぐ使える状態でした。
OFFにしたり電池を交換するときは割って中身を取り出さないと駄目なようです。
・・・試験品のくせに面倒くさい。

次はBeaconの情報
Estimate社のHPからサンプルアプリのプロジェクトがDL出来るようになっているので、落としていろいろ見てみました。
BeaconはEstimoteが提供しているライブラリ(サンプルアプリのプロジェクトから取り出して利用)を組み込むことで利用可能になり、情報はESTBeaconというクラスに格納されます。

/////////////////////////////////////////////////////
// bluetooth beacon available when used with
// startEstimoteBeaconsDiscoveryForRegion:
@property (nonatomic, strong)   CBPeripheral*           peripheral;
@property (nonatomic, strong)   NSString*               macAddress;
@property (nonatomic, strong)   NSNumber*               measuredPower;
@property (nonatomic, strong)   NSNumber*               major;
@property (nonatomic, strong)   NSNumber*               minor;
@property (nonatomic, strong)   NSNumber*               rssi;

/////////////////////////////////////////////////////
// properties filled when read characteristic
@property (nonatomic, strong)   NSNumber*               power;
@property (nonatomic, strong)   NSNumber*               frequency;
@property (nonatomic, strong)   NSNumber*               batteryLevel;
@property (nonatomic, strong)   NSString*               hardwareVersion;
@property (nonatomic, strong)   NSString*               firmwareVersion;

/////////////////////////////////////////////////////
// core location properties
@property (nonatomic, strong)   CLBeacon*               ibeacon;
@property (nonatomic, readonly)   BOOL                  isConnected;

ちなみにこのクラスのメンバにCLBeaconがあったので、普通のやり方で直接扱えるのではないかと思って試してみたら、扱えました。
なので、特にEstimote社のライブラリを利用しなくても動きます。

実際の動かし方などは次回以降で。