使用声音图标和条形成一个新通知

Modified on: Sat, 09 Jun 2018 07:42:53 +0800

可能这个问题已经在某个地方得到了回答,但我找不到了。

情况:我在笔记本电脑上使用Ubuntu 15.10
我有一个辅助蓝牙扬声器系统,我在其上重定向一些输出(主要是音乐)。

我可以用pactl

来控制音量

pactl -- set-sink-volume bluez_sink.00_18_91_65_D8_6D +5%
pactl -- set-sink-volume bluez_sink.00_18_91_65_D8_6D -5%

并将其与某些键盘快捷键相关联,我可以增加和减少它,就好像它是本地的一样。

这样可以正常工作,但与主输出(内部声卡)不同,使用此命令不会产生实际音量级别的通知。

那么,我如何使用更改图标和卷的栏来生成通知,就像Ubuntu一样?

我应该使用notify-send吗?用哪个参数?
它不应该是一个“正常”的通知,因为它必须在音量变化时“坚持”它并且只是调整吧...

作者:dadexix86

最佳答案

是的,应该是特别通知:

gdbus call --session --dest org.freedesktop.Notifications \
  --object-path /org/freedesktop/Notifications \
  --method org.freedesktop.Notifications.Notify \
    'gnome-settings-daemon' \
    0 \
    'notification-audio-volume-medium' \
    ' ' \
    '' \
    [] \
    "{'x-canonical-private-synchronous': <'volume'>, 'value': <24>}" \
    1
  1. 通过观看dbus-monitor找到:

    method call time=1447796042.858910 sender=:1.11 -> destination=:1.96 serial=216 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=Notify
       string "gnome-settings-daemon"
       uint32 0
       string "notification-audio-volume-medium"
       string " "
       string ""
       array [
       ]
       array [
          dict entry(
             string "x-canonical-private-synchronous"
             variant             string "volume"
          )
          dict entry(
             string "value"
             variant             int32 48
          )
       ]
       int32 -1
    
  2. 然后使用以下方式编写自己的电话:


  3. 可用的图标是:

    find /usr/share/notify-osd/icons/hicolor/scalable/status/ -name "notification-audio-volume-*" -exec basename {} .svg \;


    notification-audio-volume-low notification-audio-volume-off notification-audio-volume-medium notification-audio-volume-muted notification-audio-volume-high
  4. 醇>
作者:user.dz

相关问答

添加新评论