https://github.com/mybuilder/network-status
Monitoring for network status and for re-connect
https://github.com/mybuilder/network-status
Last synced: 4 months ago
JSON representation
Monitoring for network status and for re-connect
- Host: GitHub
- URL: https://github.com/mybuilder/network-status
- Owner: mybuilder
- License: mit
- Created: 2015-12-08T14:18:06.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2024-12-05T04:15:19.000Z (over 1 year ago)
- Last Synced: 2025-09-26T14:43:35.304Z (9 months ago)
- Language: JavaScript
- Size: 15.6 KB
- Stars: 1
- Watchers: 12
- Forks: 1
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Network status
--------------
Allows checking the network status and re-connect.
Requires ES6 Promises
[](https://travis-ci.org/mybuilder/network-status)
## Install from npm
```
npm install network-status --save
```
## Network status
From network `networkStatus` returns the current network state by giving a uri to ping e.g. `favicon.ico`.
```javascript
networkStatus('/favicon.ico')
.then(isReachable)
.catch(notReachable);
```
If the network connection is lost you can create a monitor for re-connection.
```javascript
let networkStatusFavicon = () => networkStatus('/favicon.ico');
networkStatusFaviconIco()
.then(isReachable)
.catch(error => {
// update the UI to notify the user about lost network connection
return monitorForReConnect({
networkStatus: networkStatusFavicon,
maxRetries: 100});
})
.then(() => {
// update the UI, connection has been restored
})
.catch(error => {
// maximum retries reached
});
```
* `networkStatus` must be a function without arguments
* `maxRetries` if is set to 0 or `undefined` it will try forever (default: `undefined`)
* `delay` how long should be between network pings in milliseconds (default: `2000`)