web-dev-qa-db-ja.com

notify-sendは宛先の指定に失敗し、通知が画面に表示されません。どうして?

Konversationのようなアプリケーションからのさまざまな通知が示すように、libnotifyを介した通知はicewmの下で機能するようです。しかし、notify-sendコマンドを使用してコマンドラインから機能させることはできません。試してみると、画面に通知がまったく表示されません。

どうすればicewmの下で動作させることができますか?

編集1:dbus-monitorを試しました。 notify-sendに問題があるようです。宛先を指定していませんが、たとえばkonversationではknotifyを宛先として指定しています。多分これが問題の原因ですか?

編集2:クエリを再現するためにd-feetも試しました:( http://dropcanvas.com/521xc/を参照) 97 )、まだ何もありません。

私が再現しようとしたクエリは次のとおりです。

method call sender=:1.14 -> dest=org.kde.knotify serial=1024 path=/Notify; interface=org.kde.KNotify; member=event  
   string "queryMessage"  
   string "konversation"  
   array [  
   ]  
   string ""  
   string "<html>&lt;ychaouche|ghost&gt; hello</html>"  
   array [  
   ]  
   array [  
   ]  
   int32 -1  
   int64 33554870  
method return sender=:1.8 -> dest=:1.14 reply_serial=1024  
   int32 1072  

これは、dbus-monitorを使用してキャプチャされ、PMを自分から自分に(xchat、konversation、および2つのニックネームを使用して)受信したときにkonversationから送信されました。

2
ychaouche

これはコマンドラインから機能するはずです。

notify-send -u normal -t 60 -a cli "test notification" "This is simply a notification"

この文字列は、notify-send --help情報から直接読み取って作成しました。

もちろん、manページにはより詳細な情報が記載されています。

1
vgoff

dbus-sendそこで提案 :を介してソリューションを試すことができます。

dbus-send --session --type=method_call --reply-timeout=10000 \
  --dest=org.freedesktop.Notifications \
  /org/freedesktop/Notifications  org.freedesktop.Notifications.Notify \
  string:"app_name" \
  uint32:0 \
  string:'app_icon' \
  string:"summary" \
  string:"body" \
  array:string:"" \
  dict:string:string:"",""\
  int32:10000

notify-sendは、実際にはこのコマンドのラッパーです。

1