DIY远程移动图像监测(tiny6410+USB摄像头+motion+yeelink+curl)
看到有博客上采用motion搭建移动图像监测系统,感觉很强大,但大多缺少远程监测能力,大多局限于局域网。OK,笔者手头刚好有一个30W像素的USB摄像头,那么借用yeelink服务,也来DIY一把,哈哈。
1 #!/bin/sh 2 3 #在单引号中填入yeelink给你的API KEY 4 YL_ApiKey=‘xxxxx‘ 5 YL_URL=http://api.yeelink.net/v1.0/device/7376/sensor/11703/photos 6 7 while : 8 do 9 # 查找/dev/shm/motion_pic文件夹下最旧的1个以 motion.jpg 结尾的文件,并获取其文件名 10 PIC=$(find /dev/shm/motion_pic -name "*motion.jpg" | xargs ls -rt | head -n 1) 11 echo $PIC > /dev/shm/motion_name 12 grep -q "motion.jpg" /dev/shm/motion_name && status=yes || status=no 13 echo $status 14 if [ $status = yes ]; 15 then 16 upcmd="curl --request POST --data-binary @"$PIC" --header U-ApiKey:$YL_ApiKey --verbose $YL_URL" 17 echo $upcmd|sh 18 rm $PIC 19 sleep 15 # 延时15s 因为yeelink上传数据要求最小间隔10s,否则报错 20 echo "upload motion picture finish" 21 else 22 echo "no motion" 23 break 24 fi 25 done
1 #!/bin/sh 2 3 #在单引号中填入yeelink给你的API KEY 4 5 YL_ApiKey=‘xxxxx‘ 6 YL_URL=http://api.yeelink.net/v1.0/device/7376/sensor/11703/photos 7 PIC=/dev/shm/motion_pic/snapshot.jpg 8 9 upcmd="curl --request POST --data-binary @"$PIC" --header U-ApiKey:$YL_ApiKey --verbose $YL_URL" 10 11 echo $upcmd|sh
1 /** 2 * @file readme.txt 3 * @brief 基于tiny6410、USB摄像头、motion、curl的远程移动图像监测实现说明 4 * @details 5 * @version V1.0.0 6 * @author Richard.hmm 7 * @date 2014-2-9 8 */ 9 10 1、拷贝motion所需的动态库到tiny6410开发板系统的/lib/下 11 cp /sdcard/motion_lib/* /lib/ 12 13 2、拷贝motion到usr/sbin/下 14 cp /sdcard/motion /usr/sbin/ 15 16 3、拷贝curl到usr/bin/下 17 cp /sdcard/curl /usr/bin/ 18 19 4、拷贝脚本文件到tiny6410的内存文件系统/dev/shm中 20 cp /sdcard/post_timelapse.sh /dev/shm/ 21 cp /sdcard/post_motion.sh /dev/shm/ 22 cp /sdcard/motion_alarm.sh /dev/shm/ 23 24 5、配置crontab 25 [root@FriendlyARM crontabs]# crontab -e 26 */10 * * * * /dev/shm/post_timelapse.sh // 新增任务 27 */1 * * * * /dev/shm/post_motion.sh // 新增任务 28 [root@FriendlyARM crontabs]# crond& // 开启crond 29 30 6、拷贝配置文件到/etc下 31 cp /sdcard/motion.conf /etc/motion/ 32 33 7、后台运行motion 34 motion -c /etc/motion/motion.conf &
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。