83 lines
2.3 KiB
Markdown
83 lines
2.3 KiB
Markdown
# WATCHDOG
|
|
|
|
[](https://github.com/huan/watchdog/actions/workflows/npm.yml)
|
|
[](https://badge.fury.io/js/watchdog)
|
|
[](https://npmjs.org/package/watchdog)
|
|
[](https://www.typescriptlang.org/)
|
|
[](https://github.com/Chatie/tsconfig/issues/16)
|
|
|
|
A Timer used to Detect and Recover from Malfunctions.
|
|
|
|

|
|
> Picture Credit: [Using Watchdog Timer](https://www.logicsupply.com/explore/io-hub/tutorial-using-beaglebone-black-watchdog-timer/)
|
|
|
|
## USAGE
|
|
|
|
```shell
|
|
$ npm install watchdog
|
|
...
|
|
```
|
|
|
|
```ts
|
|
import { Watchdog } from 'watchdog'
|
|
|
|
const TIMEOUT = 1 * 1000 // 1 second
|
|
const dog = new watchdog(TIMEOUT)
|
|
|
|
const food = { data: 'delicious' }
|
|
|
|
dog.on('reset', () => console.log('reset-ed'))
|
|
dog.on('feed', () => console.log('feed-ed'))
|
|
|
|
dog.feed(food)
|
|
// Output: feed-ed
|
|
|
|
setTimeout(function() {
|
|
dog.sleep()
|
|
console.log('dog sleep-ed. Demo over.')
|
|
}, TIMEOUT + 1)
|
|
// Output: reset-ed.
|
|
// Output: dog sleep-ed. Demo over.
|
|
```
|
|
|
|
## DOCUMENT
|
|
|
|
See [auto generated docs](https://huan.github.io/watchdog)
|
|
|
|
## HISTORY
|
|
|
|
### master
|
|
|
|
In developing ...
|
|
|
|
### v0.8 Jul 2018
|
|
|
|
- Support browser ([#31](https://github.com/huan/watchdog/issues/31))
|
|
|
|
### v0.0.1 Oct 2017
|
|
|
|
- Init watchdog
|
|
|
|
## SEE ALSO
|
|
|
|
- [Wikipedia: Watchdog timer](https://en.wikipedia.org/wiki/Watchdog_timer)
|
|
- [Yet Another watchdog timer for node.js (and browserify)](https://github.com/andrew-filonenko/ya-watchdog)
|
|
|
|
## THANKS
|
|
|
|
Thanks to Damon Oehlman (<https://github.com/DamonOehlman>)
|
|
who owned the `watchdog` name of NPM module.
|
|
He is so kind and nice that passed this name over to me after my request.
|
|
|
|
## AUTHOR
|
|
|
|
[Huan LI](https://github.com/huan) ([李卓桓](http://linkedin.com/in/zixia)) zixia@zixia.net
|
|
|
|
[](https://stackexchange.com/users/265499)
|
|
|
|
## COPYRIGHT & LICENSE
|
|
|
|
- Code & Docs © 2017-now Huan LI \<zixia@zixia.net\>
|
|
- Code released under the Apache-2.0 License
|
|
- Docs released under Creative Commons
|