播放通知声音以确认已触发睡眠

播放通知声音以确认已触发睡眠

由于这个问题间歇性 - Dell XPS 9310,22.04 无法在盖子关闭的情况下关闭(盖子开关没有触发)我希望在睡眠开始时得到反馈。

是否可以挂接到盖子开关并在盖子关闭时和/或触发睡眠时播放通知声音?

编辑:我在下面提供了部分答案。但是,声音播放不起作用。还有其他人可以提供包括声音播放在内的答案吗?

答案1

感谢 Jos 和 Tracy 的回答:从暂停状态恢复时执行脚本的正确方法我走了一段路。然后我发现https://bbs.archlinux.org/viewtopic.php?id=246264

完整解决方案:首先记下您的用户名(例如sam)和您的用户 ID:

id -u sam

假设你的用户 ID 是1000。在 Ubuntu 22.04 LTS 上,将包含此内容的文件放入/lib/systemd/system-sleep/(使用你的用户名sam和 ID 1000):

#!/bin/sh

PATH=/sbin:/usr/sbin:/bin:/usr/bin

case "$1" in
    pre)
    #code execution BEFORE sleeping/hibernating/suspending
    /usr/bin/sudo -u sam bash -c "export XDG_RUNTIME_DIR=/run/user/1000;  /usr/bin/ogg123 -q /usr/share/sounds/Yaru/stereo/desktop-logoff.oga"
    /usr/bin/date >> SOMEDIR/logs/sleep-monitor/pre.log
    ;;
    post)
    #code execution AFTER resuming
    # same code as above would work here.
    ;;
esac

exit 0

查看:

  • 日志和回放应该手动进行调用(sudo script.sh pre)。
  • 该脚本应该在系统暂停时工作,因为日志文件pre.log会按预期更新。如果没有发生这种情况,请检查暂停服务(请参阅上面的链接):
sudo systemctl status sleep.target suspend.target hibernate.target hybrid-sleep.target

最后说明:根据您的设置等,笔记本电脑可能需要一点时间才能真正挂起。因此,只有在笔记本电脑盖关闭一段时间后,您才会听到声音。

相关内容