# controlmyspajs

> Library for ControlMySpa API access

Latest version **0.1.17** (published 2024-09-16) · MIT license · 0 weekly downloads

## Install

```sh
npm install controlmyspajs
pnpm add controlmyspajs
yarn add controlmyspajs
bun add controlmyspajs
```

## Health

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

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.1.17 |
| Published | 2024-09-16 |
| First published | 2020-12-19 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >=13.11.0 |
| Dependencies | 1 |
| Unpacked size | 27.9 KB |
| Known vulnerabilities | 0 (+23 in 1 direct dependencies) |
| Install scripts | no |
| GitHub stars | 2 |
| Author | Victor Vlasák |
| Maintainers | vvlasy |
| Keywords | balboa, controlmyspa, api, control, my, spa |

## Links

- npm: https://www.npmjs.com/package/controlmyspajs
- Repository: https://github.com/VVlasy/controlmyspajs
- Homepage: https://github.com/VVlasy/controlmyspajs#readme
- Issues: https://github.com/VVlasy/controlmyspajs/issues
- npm.io page: https://npm.io/package/controlmyspajs

## Dependencies (1)

- [axios](https://npm.io/package/axios.md) ^0.21.0

## Recent versions

- 0.1.17 (latest) — 2024-09-16
- 0.1.15 — 2021-02-07
- 0.1.14 — 2020-12-21
- 0.1.13 — 2020-12-21
- 0.1.12 — 2020-12-20
- 0.1.11 — 2020-12-20
- 0.1.5 — 2020-12-19
- 0.1.3 — 2020-12-19
- 0.1.2 — 2020-12-19
- 0.1.1 — 2020-12-19
- 0.1.0 — 2020-12-19

## README

<p align="center">
<img src="https://gitlab.com/VVlasy/controlmyspajs/-/raw/001917116dd56dfbe79ee8aea1665f7ff0682ecd/graphics/logo-transparent.png" width="150">
</p>

<span align="center">

# ControlMySpaJs
</span>

A library to facilitate connection to ControlMySpa API by Balboa

### Examples:

```js
const ControlMySpa = require('controlmyspajs');


let spa = new ControlMySpa("email@mail.mail", "password"); // uses celsius
// let spaFahrenheit = new ControlMySpa("email@mail.mail", "password", false);

spa.init().then((result) => {
    if (result) {
        console.log("Spa init success.");
        spa.waitForResult = true;
        console.log(spa.currentSpa);


        // available function calls
        
        spa.getSpa(); //refresh values for spa
        spa.toggleHeaterMode();
        spa.setTemp(38.5);
        spa.setTempRangeHigh();
        spa.setTempRangeLow();
        spa.setTime("24/01/2024/", "23:11", true) // true for 24H time format, false for 12 hour clock, default true
        spa.lockPanel();
        spa.unlockPanel();
        spa.setJetState(0, "OFF"); // "OFF"/"HIGH"
        spa.setBlowerState(0, "HIGH"); // "OFF"/"HIGH"
        spa.setLightState(0, "HIGH"); // "OFF"/"HIGH"

        spa.setFilterCycleIntervalSchedule(0, spa.scheduleFilterIntervalEnum.i9hours30minutes, "20:00");         
    } else {
        console.log("Spa init failed.");
    };
});
```

### Supported features
    - get spa status
    - set temperature
    - set temperature range
    - set time
    - toggle heater mode
    - lock/unlock panel
    - Control Jets, Blowers and Lights
    - set filter cycle intervals

* additional feature support can be added, I added all features my spa supported, although for me to add features from your spa I will need login credentials to sniff the API calls. Or you can sniff them yourself and send me the logs

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