お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2019-05-22 01:24:38

RF135
新しいメンバ
登録日: 2019-05-22

motion+mutt+Gmailで監視カメラシステム構築

こんにちは。
タイトルのとおり、motion+mutt+Gmailを使って、motionが撮った動画をGmailのアドレスに自動で送信させたいのですが、最終設定がうまくいきません。

motionはインストール、設定済みで、正常に作動します。

muttも設定済みで、メールも届きます。

問題なのは、motionが動体察知して作動したとき、メールは届くのですが、メールにmotionが撮影した動画が添付されてこないことです。
シェルスクリプトの書き方と、それをmotionに組み込む段階でエラーが生じていると思われるのですが、原因がわかりません。

スクリプトは’/home/mitx’に保存されており、中身は以下のとおりです。

 

コード:

#!/bin/sh
echo "video=$1">/home/mitx/video.tmp
AVI_PATH=$1
AVI_DIR=`dirname $AVI_PATH`

EMAIL_TO==motionalerte60@gmail.com

EMAIL_SUB="camerasurveillance"
EMAIL_BODY="capte un mouvement"
MUTT_CONF=/home/mitx/mutt.conf

# send email by mutt & gmail
echo $EMAIL_BODY | mutt -F $MUTT_CONF -s $EMAIL_SUB $EMAIL_TO

muttの設定ファイル'mutt.conf'も '/home/mitx'に保存されており、中身は以下のとおりです。

 

コード:

set charset="utf-8"

set from = "motionalerte60@gmail.com"
set realname = "Alerte Motion"

set smtp_url = "smtp://自分のメールアドレス@smtp.gmail.com:587/"
set smtp_pass = "自分のパスワード"

motionの設定’motion.conf'には以下の一行を足しました。

 

コード:

on_movie_end bash /home/mitx/motion_on_movie_end.sh

motionで撮影された動画はavi形式で、’home/mitx/motion'ファイルに保存されています。


どのように設定したらメールで動画を受け取れるでしょうか?

ご教示お願いいたします。

オフライン

 

#2 2019-05-22 07:45:18

ry
メンバ
登録日: 2008-07-30

Re: motion+mutt+Gmailで監視カメラシステム構築

スクリプトを見る限りはエラーが生じているのではなく、そもそもがメールを送る際に動画を添付していません。
軽くググってみたところ以下の Web ページを見つけました。

ラズパイで多機能監視カメラを作る(3) | <urouro>

これによると motion.conf の on_movie_end で %f を指定することで動画ファイルのパスが渡されるようです。
今の設定だと、スクリプトには何ら引数が与えられてないみたいなので、スクリプトの $1 は空のままだと思います。
ですからまずは motion.conf の on_movie_end を以下のように修正します。

コード:

on_movie_end bash /home/mitx/motion_on_movie_end.sh


コード:

on_movie_end bash /home/mitx/motion_on_movie_end.sh $f

この修正でスクリプト内で AVI_PATH に動画ファイルのパスが設定されます。
また以下の Web ページによると mutt で添付ファイルを送るには -a オプションを使うみたいです。

muttを使って添付ファイルを送信: 気の向くままに・・・

あとはこれに従って以下のように修正すればよさそうです。

コード:

# send email by mutt & gmail
echo $EMAIL_BODY | mutt -F $MUTT_CONF -s $EMAIL_SUB $EMAIL_TO


コード:

# send email by mutt & gmail
echo $EMAIL_BODY | mutt -F $MUTT_CONF -s $EMAIL_SUB $EMAIL_TO -a $AVI_PATH

※ググった結果だけで書いているので実際に動作するかは未検証です。また、他にも突っ込みどころがありますが、最小限の修正に留めました。

オフライン

 

Board footer

Powered by FluxBB