6

コンピューターが 10 分間使用されなくなるまで待機するプロセスを NodeJS のバックグラウンドで実行したいと考えています。ユーザーがキーボードやマウスに触れないことを意味します。

つまり、任意のウィンドウでキーボードとマウスのイベントをリッスンし、発生したときにアプリに通知したいと考えています。

このミッションでは、プレーン ノード、nw.js、electron を使用できます。

C++、ネイティブ モジュール、および DLL を使用する必要があると思います。しかし、より良いシンプルな解決策があることを願っています。

ありますか?

4

4 に答える 4

0

ioreg この前の回答を使用して、OSX でユーザーのアイドル時間を取得できました。

var child_process = require('child_process');

function idleTime(callback) {
    var command = `ioreg -c IOHIDSystem | awk '/HIDIdleTime/ {print $NF/1000000000; exit}'`;
    child_process.exec(command, function(err, stdout, stderr) {
        return err ? callback(err) : callback(null, stdout.trim());
    });
}

setInterval(function() {
    idleTime(function(err, duration) {
        console.log(`idle for ${Math.round(duration)} seconds`)
    })
}, 1000);
于 2016-08-02T04:58:48.770 に答える