Start program in response to system events (like ip address changes, etc.)? I want to start a program in response to system events, such as:


IP address changes
WIFI connectivity changes (whether I'm connected, and/or which network I'm connected to)
Volume (as in disk) changes
User logs on or off
System shuts down or restarts


Is there anything built in to do this, or is there a 3rd party tool that can do this for me?
ControlPlane has many of the functions you're looking for, though I don't think it has any rules for connected users.  I've been using it for a few months on my work MBP to switch between home and office and it's been quite good.