LoginSignup
16
15

More than 5 years have passed since last update.

たった2行!最も簡単にeddystoneでURLを送信する方法

Last updated at Posted at 2015-07-29

なんか新しいeddystoneってのが出たみたいだし試してみるか…
でもどうやってそもそも電波飛ばしたらいいんだ?

というわけで、Macを使って最も簡単にeddystoneのEddystone-URLを飛ばしてみたいと思います。

環境

  • Bluetooth Low Energy(BLE, Bluetooth4.0)が搭載されたMac製品
    • Macbook Pro, Macbook Pro Retina, Macbook Airなどなど
    • 最近の製品なら大抵OK
  • node.js v0.12.0 (筆者の動作確認環境)

準備

Macでnode.jsとnpmを使えるようにする必要があります。
http://nodejs.org/
から"INSTALL"をクリックしpkgファイルをダウンロードし、インストールします。

その後、無ければ適当にディレクトリを作成しましょう。
ここでは~/eddystoneを作成します。

mkdir ~/eddystone

これで準備は完了です!

Eddystone-URLを飛ばしてみる

この表現があっているのかわかりませんが…。

node-eddystone-beaconを使用します。
ちなみに、今回はEddystone-URLを飛ばそうとしていますが、Eddystone-UIDも飛ばすことが出来ます。
node-eddystone-beaconをnpm installしましょう

cd ~/eddystone
npm install eddystone-beacon

その後、適当にjsを書きます。下記をコピペでも構いません。

app.js
EB = require('eddystone-beacon');
EB.advertiseUrl('http://goo.gl/uagFfW');

これで準備は完了です。
実際に実行してみましょう。

node ~/eddystone/app.js

特にエラーがでなければ成功です。
iOS版Chrome(44以上)のToday Extensionで手軽に確認できます。

よくあるエラー

$ node app.js 
/.../eddystone/node_modules/eddystone-beacon/node_modules/eddystone-url-encoding/lib/encode.js:16
    throw new Error([
          ^
Error: Encoded URL (http://3.141592653589793238462643383279502884197169399375105820974944592.com/) is too long (max 18 bytes): 67 bytes
    at module.exports (/.../eddystone/node_modules/eddystone-beacon/node_modules/eddystone-url-encoding/lib/encode.js:16:11)
    at Object.makeUrlBuffer (/.../eddystone/node_modules/eddystone-beacon/lib/advertisement.js:31:19)
    at Object.advertiseUrl (/.../eddystone/node_modules/eddystone-beacon/lib/beacon.js:10:43)
    at Object.<anonymous> (/.../eddystone/app.js:2:4)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Function.Module.runMain (module.js:501:10)
    at startup (node.js:129:16)

指定しているURLが長すぎます。
URL短縮サービスなどを使用してURLを短くしてみましょう。

16
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
15