Raspberry Pi に node.js v6.9.1 がインストールされてる環境で試してます。インストールまではこんな感じ。
$ sudo apt-get install -y nodejs npm $ node --version v0.10.29 $ sudo npm cache clean $ sudo npm install n -g /usr/local/bin/n -> /usr/local/lib/node_modules/n/bin/n n@2.1.4 /usr/local/lib/node_modules/n $ sudo n 6.9.1 $ node --version v6.9.1 $ sudo apt-get install libpcap-dev
いったん環境は整いました。
Dash Button for Node をインストールします。基本的にサイトに則って、
npm init
で適当にパッケージを作成し、
npm install --save dash-button
ってやってインストール完了。
$ sudo npm run scan
ってやると同一ネットワーク上のボタンを探しに行きます。
pi@raspberrypi:~/adb $ sudo npm run scan > adb@0.0.0 scan /home/pi/adb > dash-button scan Scanning for DHCP requests and ARP probes on wlan0... Detected a DHCP request or ARP probe from xx:xx:xx:xx:xx:xx Detected a DHCP request or ARP probe from xx:xx:xx:xx:xx:xx
ボタンを押すと、ボタンがLANに接続しに行った結果、MacアドレスがLANを流れます。上記のようになれば、環境としては完成っぽいですね。
$ cat index.js const DashButton = require('dash-button'); const DASH_BUTTON_MAC_ADDRESS = 'xx:xx:xx:xx:xx:xx'; // 小文字で。 let button = new DashButton(DASH_BUTTON_MAC_ADDRESS); console.log('listen...'); let subscription = button.addListener( () => { console.log('Clicked..'+ new Date()); }); $ sudo node index.js
ボタンのクリックでコンソールに文字が表示されるサンプルです。
この記事は
現在のアクセス:3508