X-Serverベースのシステムでは、xprintidleユーティリティはユーザーがアイドル状態であった時間(ミリ秒)を返します。 Waylandにも同様の機能はありますか?
私は自分のコンピュータをどのように使用しているか、生産性などを測定する方法で一日中アプリケーションの集中を記録する小さなプログラムを書こうとしています。
コンピュータがアイドル状態のときにプログラムがアクティビティを記録したくありません。 xprintidleを使用すると、X-Serverセッションでユーザーがアイドル状態になっている期間を簡単に確認できますが、このユーティリティは維持されていないように見え、Waylandでは機能しません。
DistrosはWaylandに移動しているようです。たとえば、すぐにリリースされるUbuntu 17.10はデフォルトでWaylandを使用しているため、xprintidleはもはや実行可能なソリューションではありません。
ウェイランドには、キーボードやマウスの活動に対する継続的なポーリングなどの非効率的なメカニズムがないため、ユーザーがアイドル状態であることを確認するメカニズムはありますか?
ベストアンサー1
普遍的な方法があるかどうかはわかりませんが、gnomeシステムの場合は、次のdbus呼び出しを使用できます。
dbus-send --print-reply --dest=org.gnome.Mutter.IdleMonitor /org/gnome/Mutter/IdleMonitor/Core org.gnome.Mutter.IdleMonitor.GetIdletime