= Linux で Physical Web のビーコン = Linux に Bluetooth な USBドングルを挿して、[http://physical-web.org/ Physical Web]のビーコンにする。 必要な物: * Linuxマシン(Ubuntu使いました) * BLEをしゃべれるBluetoothドングル(なんか適当なやつ) * Node.js * [https://github.com/don/node-uri-beacon node-uri-beacon] == 事前準備 == Ubuntu についてる Node.js が、「コマンド名が他とぶつかりそうだからnodejsに変更しといたよ」っていう困ったちゃんなので、自前でインストールする。 [http://nodejs.org/download/ nodejs.orgのダウンロードページ]から最新版をダウンロードしてビルドする。 このページのLinux用バイナリってのをもらってきてもいいのかも。 {{{ % wget http://nodejs.org/dist/v0.10.33/node-v0.10.33.tar.gz % tar xvzf node-v0.10.33.tar.gz % cd node-v0.10.33 % ./configure % make % make test % sudo make install }}} 「`node`」コマンドが「`/usr/local/bin`」にインストールされるはず。 自分のシェルのサーチパスが、「`/usr/local/bin`」が「`/usr/bin`」よりも前にあることを確認しておく。 あと必要そうな物をインストールしておく。 {{{ % sudo apt-get install libbluetooth-dev % sudo apt-get install bluez }}} 「`libbluetooth-dev`」は、このあと「`npm install`」する中で使われるもよう。 == node-uri-beaconをインストール == {{{ % git clone https://github.com/don/node-uri-beacon.git % cd node-uri-beacon/ % npm install }}} 途中、「`bleno`」というツールのインストールのところで数分待たされる。 == 実行 == スマートフォンに[https://play.google.com/store/apps/details?id=physical_web.org.physicalweb Physical Webアプリ]をインストールしておく。 {{{ % cd examples % sudo node simpleBeacon.js }}} Phsical Webアプリを起動すると、ビーコンが見えるはず。 広告するURLは、この「`simpleBeacon.js`」の中に書いてある。 適当に変更してOK。あまり長いURLはダメらしい。 [[Image(1.png, 300px)]] [[Image(2.png, 300px)]] ---- 2014/11/2