# ham-cluster

> An event-based TypeScript module for accessing ham radio spot clusters.

Latest version **1.0.7** (published 2022-03-05) · ISC license · 0 weekly downloads

## Install

```sh
npm install ham-cluster
pnpm add ham-cluster
yarn add ham-cluster
bun add ham-cluster
```

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; no vulnerabilities; high quality score.

Warnings: low downloads; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.7 |
| Published | 2022-03-05 |
| First published | 2022-03-04 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 5.7 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 1 |
| Author | Ben Eastwood |
| Maintainers | k4ben |

## Links

- npm: https://www.npmjs.com/package/ham-cluster
- Repository: https://github.com/k4ben/ham-cluster
- Homepage: https://github.com/k4ben/ham-cluster#readme
- Issues: https://github.com/k4ben/ham-cluster/issues
- npm.io page: https://npm.io/package/ham-cluster

## Recent versions

- 1.0.7 (latest) — 2022-03-05
- 1.0.6 — 2022-03-05
- 1.0.5 — 2022-03-05
- 1.0.4 — 2022-03-04
- 1.0.3 — 2022-03-04
- 1.0.2 — 2022-03-04
- 1.0.1 — 2022-03-04
- 1.0.0 — 2022-03-04

## README

# HamCluster
An event-based TypeScript module for accessing ham radio spot clusters.
## Installation 
```sh
npm install ham-cluster --save
```
## Usage
```javascript
const HamCluster = require('ham-cluster');

const rbnCluster = new HamCluster(callsign, {
  hostname: "telnet.reversebeacon.net",
  port: 7000,
  type: "rbn"
});

// const plainCluster = new HamCluster(callsign, {
//   hostname: "w3lpl.net",
//   port: 7373
// });

rbnCluster.on('connected', ()=> {
  console.log("Connected!");
});
rbnCluster.on('spot', spot => {
  console.log(spot);
});
rbnCluster.on('error', error => {
  console.error(error);
});
```

# TODO
* Add automatic detection for comment fields from RBN, FT8, N1MM, etc.
* Use inheritance for easy implementation ([RBNSpot, FT8Spot, N1MMSpot] extends Spot).
* Improve edge cases and error handling.
* Use "signed-in" event for timeout/retry.

---
_Source: https://npm.io/package/ham-cluster · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
