Alex White (wu)

NAME

Wubot::Plugin::OsxIdle - monitor idle time on OS X

VERSION

version 0.2.004

SYNOPSIS

  ~/wubot/config/plugins/OsxIdle/myhost.yaml

  ---
  delay: 1m

DESCRIPTION

Monitor user idle time on OS X. Runs the command:

  ioreg -c IOHIDSystem

in order to determine the amount of time since the last input on any keyboard or mouse.

Any time there has been more than 10 minutes of no activity, you will be considered idle.

Each time your state changes between idle and active, a message will be sent informing you the amount of time you spent in the previous state.

Also each hour you are idle or active, a message will be sent telling you the amount of time you have spent in that state. This can be useful to remind you to stretch or take a break after a certain amount of time being active.

This plugin is designed to be run every 60 seconds.

If anyone is aware of a command that can be run for other operating systems to provide idle time, please let me know.

GRAPHING

If you want to build graphs of the amount of time you are spending active/idle, then you could use the following rule in the reactor:

  - name: OS X Idle
    condition: key matches ^OsxIdle
    rules:
      - name: add active_min and idle_min to rrd
        plugin: RRD
        last_rule: 1
        config:
          base_dir: /usr/home/wu/wubot/rrd
          fields:
            idle_min: GAUGE
            active_min: GAUGE
          period:
            - day
            - week
          graph_options:
            lower_limit: 0
            upper_limit: 60
            rigid: ""
            sources:
              - active_min
              - idle_min
            source_colors:
              - FF9933
              - 9933FF
            source_drawtypes:
              - AREA
              - AREA
            right-axis: 1:0
            width: 375

See some example graphs here:

  - http://www.geekfarm.org/wu/wubot/OsxIdle-navi-daily.png
  - http://www.geekfarm.org/wu/wubot/OsxIdle-navi-weekly.png

SEE ALSO

If you use this plugin, you may also be interested in Wubot::Plugin::WorkHours.

SUBROUTINES/METHODS

check( $inputs )

The standard monitor check() method.