通过Web控制无法切换MotionEye运动检测状态求助
信息
我使用树莓派4搭载64位Raspberry Pi OS Lite(Debian Bullseye移植版),并按照官方指南安装了Motion Eye。由于系统是64位,安装时改用了对应arm64架构的motion 4.5.1软件包。目前C922 Pro Stream网络摄像头连接后整体运行正常。
目标
通过命令行切换摄像头1的运动检测状态。
尝试操作
参考motion官方Web控制文档,尝试用HTTP请求控制运动检测状态:
- 查看检测状态的命令:
sudo wget -q -O - "http://raspberrypi:7999/1/detection/status" | grep Camera | sed -e "s/<[^>]*>//g" -e "s/.*Camera/Camera/"
执行后输出:
Camera 1 Detection status PAUSE
在Web界面开启运动检测并点击应用后,重新执行上述状态查询命令,输出:
Camera 1 Detection status ACTIVE
- 尝试从暂停状态开启检测的命令:
sudo wget -q -O - "http://raspberrypi:7999/1/detection/start" | grep Camera | sed -e "s/<[^>]*>//g" -e "s/.*Camera/Camera/"
响应结果为:
Camera 1 Detection resumed
再次执行状态查询命令,输出显示:
Camera 1 Detection status ACTIVE
主要问题
执行开启检测的命令后,返回Web界面刷新,运动检测切换开关仍显示为关闭状态,且实际无法检测运动。尝试重启摄像头1和树莓派后,开关依然显示关闭。推测可能存在权限问题,但命令执行返回了成功响应,却未实现预期效果。
配置文件
/etc/motioneye/motion.conf 当前内容
# @enabled on # credentials have been removed webcontrol_interface 2 webcontrol_port 7999 setup_mode off webcontrol_parms 2 webcontrol_localhost off camera camera-1.conf
/etc/motioneye/motioneye.conf 当前内容
# path to the configuration directory (must be writable by motionEye) conf_path /etc/motioneye # path to the directory where pid files go (must be writable by motionEye) run_path /var/run # path to the directory where log files go (must be writable by motionEye) log_path /var/log # default output path for media files (must be writable by motionEye) media_path /var/lib/motioneye # the log level (use quiet, error, warning, info or debug) log_level debug # the IP address to listen on # (0.0.0.0 for all interfaces, 127.0.0.1 for localhost) listen 0.0.0.0 # the TCP port to listen on port 8765 # path to the motion binary to use (automatically detected if commented) #motion_binary /usr/bin/motion # whether motion HTTP control interface listens on # localhost or on all interfaces motion_control_localhost true # the TCP port that motion HTTP control interface listens on motion_control_port 7999 # interval in seconds at which motionEye checks if motion is running motion_check_interval 10 # whether to restart the motion daemon when an error occurs while communicating with it motion_restart_on_errors false # interval in seconds at which motionEye checks the SMB mounts mount_check_interval 300 # interval in seconds at which the janitor is called # to remove old pictures and movies cleanup_interval 43200 # timeout in seconds to wait for response from a remote motionEye server remote_request_timeout 10 # timeout in seconds to wait for mjpg data from the motion daemon mjpg_client_timeout 10 # timeout in seconds after which an idle mjpg client is removed # (set to 0 to disable) mjpg_client_idle_timeout 10 # enable SMB shares (requires motionEye to run as root) smb_shares false # the directory where the SMB mount points will be created smb_mount_root /media # path to the wpa_supplicant.conf file # (enable this to configure wifi settings from the UI) #wpa_supplicant_conf /etc/wpa_supplicant.conf # path to the localtime file # (enable this to configure the system time zone from the UI) #local_time_file /etc/localtime # enables shutdown and rebooting after changing system settings # (such as wifi settings or time zone) enable_reboot false # timeout in seconds to use when talking to the SMTP server smtp_timeout 60 # timeout in seconds to wait for media files list list_media_timeout 120 # timeout in seconds to wait for media files list, when sending emails list_media_timeout_email 10 # timeout in seconds to wait for zip file creation zip_timeout 500 # timeout in seconds to wait for timelapse creation timelapse_timeout 500 # enable adding and removing cameras from UI add_remove_cameras true # enables HTTP basic authentication scheme (in addition to, not instead of the signature mechanism) http_basic_auth false # overrides the hostname (useful if motionEye runs behind a reverse proxy) # server_name motionEye
内容的提问来源于stack exchange,提问作者Mark Lewis
相关产品推荐
相关产品推荐

