Raspberry PiのIPアドレスをTwitterで通知してみた

Raspberry Piを無線LANに接続してのipアドレスをTwitterで通知してみた

はい。タイトル通りです。
あんまり長いタイトルだとあとでめんどくさいのでエントリ自体のタイトルはちょっと短めにしてあります。

セットアップ

初期設定

RaspberryPiの初期設定(raspi-config)に関しては省略します。
そのあと、フォントのインストールとzsh、vimのインストール。

$ sudo apt-get intall ttf-kochi-gothic xfonts-intl-japanese xfonts-intl-japanese-big xfonts-kaname zsh vim

.vimrcをお気に入りの設定に変えておくとイライラしません。

無線LANに接続

まずはエディタで

$ sudo vim /etc/network/interfaces

/etc/network/interfaces を以下のように編集

auto lo
iface lo inet loopback

auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
        wpa-ssid [SSID]
        wpa-psk [PASSWORD]

有線LANも使うならば、以下のように。

auto lo
iface lo inet loopback

auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid [SSID]
wpa-psk [PASSWORD]

auto eth0
iface eth0 inet dhcp

eth0も有効にしてると起動が遅いです。ipアドレスの通知まで時間がかかります。

ipアドレスの通知

StewGate Uを使います。
httpから投稿できるので、OAth認証を済ませてしまえばマイコンなど非力なデバイスからも簡単にツイートできます。便利です。
StewGate Uに登録し、ダッシュボードに移動するとトークンが表示されます。

sudo vim /etc/rc.local

/etc/rc.localの内容は起動時に実行されるので、以下の内容を書き加えて編集。(18行目)

wget --post-data="_t=****************************&msg=@******** Running RPi on $_IP" http://stewgate-u.appspot.com/api/post/ -O result -nv

_t=****************************の部分には先ほどダッシュボードで表示されたトークンを、msg=@********のところには通知するTwitterアカウントを設定します。

    #!/bin/sh -e
    #
    # rc.local
    #
    # This script is executed at the end of each multiuser runlevel.
    # Make sure that the script will "exit 0" on success or any other
    # value on error.
    #
    # In order to enable or disable this script just change the execution
    # bits.
    #
    # By default this script does nothing.
    
    # Print the IP address
    _IP=$(hostname -I) || true
    if [ "$_IP" ]; then
      printf "My IP address is %s\n" "$_IP"
      wget --post-data="_t=****************************&msg=@******** Running RPi on $_IP" http://stewgate-u.appspot.com/api/post/ -O result -nv
    fi
    
    exit 0

あとは

sudo reboot

するだけ!!
こんな感じで通知が来ます!
20130908152855_IMG_0182
これでモバブ+RaspberryPiだけで外でも作業が捗りますね。

コメント