Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I'm trying to set up the raspberry pi with my webcam as a motion detecting cctv that uploads the videos to google drive using Jeremy Blythe's script

I have motion working correctly and the python script runs when I test it from the terminal.

However the script doesn't run when I add it to the on_movie_end option in motion.conf.

The script I am using in the file is

On_Movie_End /etc/motion/uploader.py /etc/motion/uploader.cfg %f

I have also tried getting the on_movie_end to run a bash script that runs the python script and this doesn't work either. I am new to linux though so not entirely sure I have it correct.

The script is:

#!/bin/bash
VIDEO=$1 
/etc/motion/uploader.py /etc/motion/uploader.cfg VIDEO

In motion.conf /etc/motion/uploaderscript.sh %f

share|improve this question
    
Perhaps you should do /usr/bin/python /etc/motion/uploader.py /etc/motion/uploader.cfg VIDEO. Or check if python binary is installed in other directory and change the above line. –  Luis Dec 21 '12 at 11:20
1  
in bash you should have to use variable as /etc/motion/uploader.py /etc/motion/uploader.cfg $VIDEO –  Rahul Patil Dec 21 '12 at 11:22
    
neither of those solutions work but I suspect the on_movie_end is not being called as I tried to get it to just open leafpad to see if that was working and it didn't –  DanBrum Dec 21 '12 at 12:39
add comment

1 Answer

Check the following points:

  1. All the examples I saw use on_movie_end instead of On_Movie_End. So try using the lowercase version first.

  2. Check if both script have execution permission. If not add it:

    sudo chmod +x /etc/motion/uploader.py
    sudo chmod +x /etc/motion/uploaderscript.sh
    
  3. Redirect the stderr of the python script to a file. That can help to catch a error. Edit the .sh file to match this (note the $VIDEO: it is the correct way to reference a variable in bash):

    #!/bin/bash
    VIDEO=$1 
    /etc/motion/uploader.py /etc/motion/uploader.cfg $VIDEO &> /tmp/on_movie_end.log
    
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.