会社でGoogleが昨年2015/7に発表したEddystone URLの話を聞いたので、 Raspberry Pi3からURLを送信してiPhoneで受信できるまでを試してみた。
Raspberry Pi3でURLを送信する
Eddystoneを使用するためのライブラリをGoogleがGithubで公開している。 その中でPythonで書かれたPyBeaconを使用する。
PyBeaconをインストール
pi@raspberrypi:~ $ sudo pip install PyBeacon Downloading/unpacking PyBeacon Downloading PyBeacon-0.2.5.tar.gz Running setup.py (path:/tmp/pip-build-vvZnpN/PyBeacon/setup.py) egg_info for package PyBeacon Installing collected packages: PyBeacon Running setup.py install for PyBeacon Installing PyBeacon script to /usr/local/bin Successfully installed PyBeacon Cleaning up... pi@raspberrypi:~ $ pi@raspberrypi:~ $ PyBeacon -v PyBeacon 0.2.5beta
9/17時点のバージョンは、0.2.5betaでした。
URLを短縮化する
Beaconで送信できるサイズの制限があるため、URL短縮化サービスでURLしておきます。 Google URL ShortenerでAmazonを短縮化します。 https://www.amazon.co.jp/ → https://goo.gl/w38awN
この際、Chromeのセキュリティ制限と思われますが、元のURLはhttpsである必要があるようです。 httpの場合、Chromeが表示してくれません。
URLを配信する
たった1コマンドで出来ます。
pi@raspberrypi:~ $ PyBeacon -u https://goo.gl/w38awN
Advertising: https://goo.gl/w38awN
pi@raspberrypi:~ $
iPhone6Sで受信する
Chromeをインストール
Chromeが必要なため、Chromeをインストールします。 私は普段Safariですが、予備でインストールしていました。
Bluetoothをオンにする
コントロールセンターからBluetoothをオンにします。
通知センターにChromeを追加する
編集からChromeを追加します。
通知センターを見る
Chrome欄を見るとフィジカルウェブを検索したのち
Amazonが表示されることが確認できます。
当然、クリックするとAmazonに遷移します。
試す分には簡単に出来ました。
Chromeでできるのは簡単ですが、 普及するには、OSで対応するなりメジャーなクライアントアプリが出るなどしないと ちょっと難しいのかなと思う。 ただ、面白そうなのでもう少し触ってみようと思う。