准备
1. 树莓派
2. 音响
3. 树莓派与手机在一个局域网中
思路
利用回家时手机会自动连接wifi实现
设置路由器 将自己手机的物理地址和ip绑定
我明天差不多19:00-19:30到家,编写程序19:00开始 半小时结束监听
开始
编写脚本:
import os
import sys
import time
ip = sys.argv[1]#第一个参数为文件名 第二个参数为第一个参数
start_time = (int)(time.time())
while True:
result =os.system("ping -q -c 4 %s"%ip)#ping自己提前设置好ip -c 为次数,-q为只显示结果
if result == 0:
os.system("killall mplayer ")#关闭之前的播放操作,避免意外情况
os.system("mplayer /home/pi/play_music/gohome.mp3")#播放音乐,gohome为提前下载好的音乐
break
else:
now_time = ( (int)(time.time()) )
print(now_time - start_time)
if( now_time - start_time > 1800 ):
break#监听半小时还没ping通,则退出程序
#print("error")
编写定时任务:
crontab -e
定时任务的规则为 时间 + 动作* * * * * do
:分、时、日、月、周 执行的任务
其中时间可以用如下格式表示
- * 取值范围内的所有数字
- / 每过多少个数字
- - 从X到Z
- ,散列数字
按照我的需求编写如下:00 19 * * 1-5 python3 /home/pi/play_music/play_music_after_work.py 192.168.199.211
每周一到周五19:00执行 python3 /home/pi/play_music/play_music_after_work.py 192.168.199.211
很是舒服了,每次回家都有高中放学的音乐