カイワレスタイル

ゲーム、アニメ、プログラム、興味のあることをツラツラと。

Raspberry Pi 2 + Hubot + Webカメラで撮影した画像をslackに送る

Raspberry Pi 2にWebカメラ繋いでHubotとSlack連携で外出しながらにして自宅の写真が送れたら面白そうだなぁ、と思ってググっていたら、該当のCoffeeScriptが見つかったのでありがたく使わせて頂きました。

qiita.com

これで完結するのも微妙なので、導入するにあたってつまづいた点を記録しておく。


使用したカメラ

以前アキバで1000円で購入したWebカメラを使用した。

buffalo.jp


Slack-nodeのインストール

slack-nodeをインストールしてなかったのでインストール。

$ npm install slack-node

Web API Tokenの取得

SlackのWebAPIを使うには、Tokenを取得しなければならないらしい。
はじめこれに気づかず、Slackのhubot連携時に取得したTokenを使っていた。

下記サイトでログインしてTokenを発行する。

Slack Web API | Slack

環境変数に上記で取得したTokenを追加する。

SLACK_API_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

ここでもちょっとハマった。
はじめ、/bin/hubotに SLACK_API_TOKEN を追記してhubotを再起動したがSLACK_API_TOKENが未設定になってAPIがエラーになってしまっていた。
/bin/hubotではダメだと思い、ユーザーの.bashrcにSLACK_API_TOKENを追記したがやっぱりダメだった。
結局Raspberry Pi 2を再起動したら通信できるようになった。
.bashrcをsourceし忘れていただけかもしれないが原因不明。


レッツ撮影

cameraとつぶやくと撮影してくれる。

f:id:kaiware007:20151105004128j:plain

(※プライバシー保護のためモザイクを掛けてます)

観葉植物やペット等を飼っていれば、それらの確認用に使えるけども、あいにく両方共持ち合わせていないので基本的に代わり映えのしない部屋の様子が写るだけになってしまっている…。
というか、逆になにか写ってたら怖すぎる。
昔、『パラノーマル・アクティビティ』という映画を見て以来、自宅監視カメラにトラウマを持ってしまっている(なぜ設置した)

今後の展開としては、motionの動体検知機能を使ってカメラの映像に動きがあったらSlackに通知する機能なんかを作ってみたい。