http://qiita.com/kinpira/items/bf1df2c1983ba79ba455
で引き続き。。
どうやら、このFilesに上がった画像をPin(Share)しないと投稿はされない様です。。。から。
(ここから続き!!ちと疲れたな・・)
Pinする
pinする為には、対象となるfile情報が必要になります。
pinする為には、対象となるfile情報が必要になります。
チャンネル指定して、UploadとPinを行う必要があるらしい。
(下記の、’C0G0XXXXX’の部分を、
>>> slacker.channels.list().body
で見て、
>>> slacker.channels.list().body
{u’channels’: [{u’name’: u’general’, u’id’: u’C0G0XXXXX’….}, ….
のid部分を書かないとアップされないらしい。。。面倒やな・・)
>>> slacker.channels.list().body
で見て、
>>> slacker.channels.list().body
{u’channels’: [{u’name’: u’general’, u’id’: u’C0G0XXXXX’….}, ….
のid部分を書かないとアップされないらしい。。。面倒やな・・)
(図1)
>>> result = slacker.files.upload(‘/var/lib/motion/01-20151206004057-02.jpg’, channels=[‘C0G0XXXXX’])
>>> slacker.pins.add(channel=’C0G0XXXXX’, file_=result.body[‘file’][‘id’])
<slacker.Response object at 0xb64ee6b0>
できました!(私も!)
>>> slacker.pins.add(channel=’C0G0XXXXX’, file_=result.body[‘file’][‘id’])
<slacker.Response object at 0xb64ee6b0>
できました!(私も!)
これで、APIの確認は完了したので、いよいよmotionと連携。
■motion連携
次にmotionで検知したら、slackに投稿するために、motion側にイベント処理を指定していきます。
どうやって指定するかというと、motionにはイベント時に意図したスクリプトを指定し、実行させる為の下記optionが存在します。
次にmotionで検知したら、slackに投稿するために、motion側にイベント処理を指定していきます。
どうやって指定するかというと、motionにはイベント時に意図したスクリプトを指定し、実行させる為の下記optionが存在します。
on_event_start
動体検知時に起動するスクリプトを指定できます
on_event_end
動体検知終了時に起動するスクリプトを指定できます
on_picture_save
写真をsaveする度に起動するスクリプトを指定できます
on_movie_start
動画の撮影開始時に起動するスクリプトを指定できます
on_movie_end
動画の撮影終了時に起動するスクリプトを指定できます
動体検知時に起動するスクリプトを指定できます
on_event_end
動体検知終了時に起動するスクリプトを指定できます
on_picture_save
写真をsaveする度に起動するスクリプトを指定できます
on_movie_start
動画の撮影開始時に起動するスクリプトを指定できます
on_movie_end
動画の撮影終了時に起動するスクリプトを指定できます
今回はon_picture_saveを利用して、Slackに投稿させる事にします。。。かあ。。
オレにできるかな??
オレにできるかな??
ちなみにどうやって、ファイルパスを指定するのか調べたところ、
こちらのサイトに引数でファイル情報が渡されるとありました。
こちらのサイトに引数でファイル情報が渡されるとありました。
ちなみにon_picture_saveの場合、引数には撮影したファイルのpathが渡されます。
それをふまえて、Pythonスクリプトを作成。
(そのまま、、、、ですみません。。。。。)
それをふまえて、Pythonスクリプトを作成。
(そのまま、、、、ですみません。。。。。)
★★★・・・・この辺りから変数、ディレクトリ、、ファイル名、、、など心配。そのままコピーで大丈夫かしら????★★★
ではconfに指定。(そのまま・・・)
$ sudo vi /etc/motion/motion.conf
$ sudo vi /etc/motion/motion.conf
ではconfに指定します。
# Command to be executed when a picture (.ppm|.jpg) is saved (default: none)
# To give the filename as an argument to a command append it with %f
#; on_picture_save value
on_picture_save python /home/pi/slackbot/slack_bot.py %f
# Command to be executed when a picture (.ppm|.jpg) is saved (default: none)
# To give the filename as an argument to a command append it with %f
#; on_picture_save value
on_picture_save python /home/pi/slackbot/slack_bot.py %f
次に実行権限の付与を忘れずに。
$ chmod a+x slackbot/slack_bot.py
$ chmod a+x slackbot/slack_bot.py
ではmotionを起動します!
$ sudo motion
ううーーーん。
/var/lib/motion
には貯まるけど、、、スマホ(slack)には転送蓄積されない。。。。
/var/lib/motion
には貯まるけど、、、スマホ(slack)には転送蓄積されない。。。。
TOKEN = ”
xoxp-169850188932-170503111255-169851330916-e8dfbff8d7561bf686f4fc656083ed2f”
を入れてみるか。。
xoxp-169850188932-170503111255-169851330916-e8dfbff8d7561bf686f4fc656083ed2f”
を入れてみるか。。
ダメ・・・・「写真がsaveされていく。」にならない。。。
今日はここまで。。。。残念
★★引継ぎ書★★
★★pythonがまだエラーあり、修正必要★★
$ sudo motion
で走らせると、まだエラーが出る。一応動きを検知したら、
/var/lib/motion
にjpgファイルが格納はされている。
修正すべきpythonコードは、
/home/pi/slackbot/slack_bot.py
/home/pi/slackbot/slack_bot.py1,/home/pi/slackbot/slack_bot.py2
はバックアップ。
★★★★★★★★★★★★★★★★★★★★
★★pythonがまだエラーあり、修正必要★★
$ sudo motion
で走らせると、まだエラーが出る。一応動きを検知したら、
/var/lib/motion
にjpgファイルが格納はされている。
修正すべきpythonコードは、
/home/pi/slackbot/slack_bot.py
/home/pi/slackbot/slack_bot.py1,/home/pi/slackbot/slack_bot.py2
はバックアップ。
★★★★★★★★★★★★★★★★★★★★