This started out as a learning exercise (hence the lousy name) and turned into something I think others might find useful.
Node-red-contrib-mytimeout is a countdown timer that can be triggered by sending it input. It can be turned off with an off, or a stop or a cancel input message. Any other input will cause the timer to trigger and if already running restart the timer with the existing timeout and warning values.
I've also posted a mytimeout example flow which should help with it's usage.
Any helpful comments would be appreciated. If you find any issues just open an issue on the issues page and I'll try to respond in a timely manner.