Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/madchicken/comelit-client
Simple CLI to interact with Comelit HUB, Vedo and Comelit Serial Bus
https://github.com/madchicken/comelit-client
Last synced: 2 months ago
JSON representation
Simple CLI to interact with Comelit HUB, Vedo and Comelit Serial Bus
- Host: GitHub
- URL: https://github.com/madchicken/comelit-client
- Owner: madchicken
- License: apache-2.0
- Created: 2020-03-13T18:29:47.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-03-24T14:31:03.000Z (9 months ago)
- Last Synced: 2024-10-17T03:11:54.872Z (2 months ago)
- Language: TypeScript
- Size: 725 KB
- Stars: 23
- Watchers: 5
- Forks: 6
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![CircleCI](https://circleci.com/gh/madchicken/comelit-client.svg?style=shield)](https://circleci.com/gh/madchicken/comelit-client)
[![npm version](https://badge.fury.io/js/comelit-client.svg)](https://badge.fury.io/js/comelit-client)# Comelit CLI
A simple command line tool to interact with the Comelit HUB, Comelit Serial Bridge and Vedo Alarm.The package contains three different tools:
1. comelit - a CLI to interact with the Comelit HUB (https://pro.comelitgroup.com/product/20003150)
2. vedo - a CLI to interact with Comelit Vedo Alarm
3. comelit-sb - a CLI to interact with comelit Serial Bridge (https://pro.comelitgroup.com/product/20003101)## Installation
To install this tool use the command:
`npm install -g comelit-client@latest`
## Comelit CLI
## Vedo Alarm CLI
This is the CLI to interact with VEDO alarm. Vedo has is own WEB UI that could be different from the serial bridge one.
This is why is a separate tool.### Basic usage
When using the tool, you always have to pass the host and the port of the VEDO UI. Port is not mandatory,
the default is 80.To get the description of configured areas, use the `area` along with `--desc` option:
vedo -h VEDO_IP -p PORT area --desc --code
To get the status of all areas, use the `area` along with `--status` option:
vedo -h VEDO_IP -p PORT area --status --code
To get the active areas, use `--active` parameter:
vedo -h VEDO_IP -p PORT area --active --code
To arm the system, use `--arm` parameter followed by the area number (32 means all the system):
vedo -h VEDO_IP -p PORT area --arm 32 --code
To arm a specific shortcut, use `--arm` parameter followed by the area number (32 means all the system):
vedo -h VEDO_IP -p PORT area --arm 32 --shortcut p1 --code
To disarm the system, use `--disarm` parameter followed by the area number (32 means all the system):
vedo -h VEDO_IP -p PORT area --disarm 32 --code
To get the description of configured zones, use the `zone` along with `--desc` option:
vedo -h VEDO_IP -p PORT zone --desc --code
To get the status of area use the `area` along with `--status` option:
vedo -h VEDO_IP -p PORT zone --status --code
## Comelit Serial Bridge
This is a CLI to interact with the old serial bridge. This model uses polling to update status on external systems.
### Basic usage
When using the tool, you always have to pass the host and the port of the serial bridge. Port is not mandatory,
the default is 80.comelit-sb -h SERIAL_BRIDGE_IP -p PORT
You can query the system and ask to show the current configuration of the house by using one of the following
commands in conjunction to the parameter `--list`:* rooms - prints the list of rooms in the house
* lights - prints the list of lights in the house
* shutters - prints out the list of shutters/blinds
* clima - prints out the list of thermostats/dehumidifiers in the house### Rooms
Rooms only support `list` action:comelit-sb -h SERIAL_BRIDGE_IP -p PORT rooms --list
```text
GEN#PL#0 - root
GEN#PL#1 - Living room
GEN#PL#2 - Kitchen
GEN#PL#3 - Hallway
GEN#PL#4 - Room 1
GEN#PL#5 - Room 2
GEN#PL#6 - Bedroom
GEN#PL#7 - Bathroom 1
GEN#PL#8 - Bathroom 2
GEN#PL#9 - Terrace
```### Lights
As with `rooms` you can get the list of the house lights by using the `lights` command:
comelit-sb -h SERIAL_BRIDGE_IP -p PORT lights --list
```text
0 - Entrance spotlights (status ON)
1 - Main entrance (status OFF)
2 - Kitchen (status OFF)
3 - Main living room (status OFF)
4 - Spotlights living room (status OFF)
5 - Bedroom left (status OFF)
6 - Bedroom right (status OFF)
7 - Bathroom 1 (status OFF)
8 - Bathroom 2 (status OFF)
9 - Terrace (status OFF)
```Then, with the number printed in the list, you can interact with the specific light and turn it on and off:
comelit-sb -h SERIAL_BRIDGE_IP -p PORT lights --toggle 3
The above command should toggle light number 3 of the list.
### Shutters
Shutters work in the same way of lights. Use:
comelit-sb -h SERIAL_BRIDGE_IP -p PORT shutters --list
to get a list of shutters in the house. Then use:
comelit-sb -h SERIAL_BRIDGE_IP -p PORT shutters --toggle 0
to open/close the shutter number 0 in the list
### Outlets / Other devices
Outlets work in the same way of lights. Use:
comelit-sb -h SERIAL_BRIDGE_IP -p PORT outlets --list
to get a list of outlets in the house. Then use:
comelit-sb -h SERIAL_BRIDGE_IP -p PORT outlets --toggle 0
to turn on/off the outlet number 0 in the list
### Thermostats and dehumidifiers
To get a list of thermostats in the house use the command
comelit-sb -h SERIAL_BRIDGE_IP -p PORT clima --list
Then, to turn on and off a specific thermostat, use
comelit-sb -h SERIAL_BRIDGE_IP -p PORT clima --toggle 0
To change the temperature for a specific thermostat, use the `--temp` parameter:
comelit-sb -h SERIAL_BRIDGE_IP -p PORT clima --toggle 0 --temp 21.5
The above command will set the temperature of thermostat 0 to 21.5 Celsius degrees.
To change the season for a specific thermostat, use the `--season` parameter:
comelit-sb -h SERIAL_BRIDGE_IP -p PORT clima --toggle 0 --season [summer|winter]
## Comelit HUB
This is a CLI to interact with the new HUB. This model uses MQTT to update status on external systems.
### Basic usage
When using the tool, you can pass the host of the HUB. If you don't specify them, the CLI will try
to find it on your network automatically.comelit -h HUB_IP
You can query the system and ask to show the current configuration of the house by using one of the following
commands in conjunction to the parameter `--list`:* rooms - prints the list of rooms in the house
* lights - prints the list of lights in the house
* shutters - prints out the list of shutters/blinds
* clima - prints out the list of thermostats/dehumidifiers in the house
* others - prints out the list of uncategorized (others) devices in the house### Rooms
Rooms only support `list` action:comelit rooms --list
```text
GEN#PL#0 - root
GEN#PL#1 - Living room
GEN#PL#2 - Kitchen
GEN#PL#3 - Hallway
GEN#PL#4 - Room 1
GEN#PL#5 - Room 2
GEN#PL#6 - Bedroom
GEN#PL#7 - Bathroom 1
GEN#PL#8 - Bathroom 2
GEN#PL#9 - Terrace
```### Lights
As with `rooms` you can get the list of the house lights by using the `lights` command:
comelit lights --list
```text
DOM#LT#0 - Entrance spotlights (status ON)
DOM#LT#1 - Main entrance (status OFF)
DOM#LT#2 - Kitchen (status OFF)
DOM#LT#3 - Main living room (status OFF)
DOM#LT#4 - Spotlights living room (status OFF)
DOM#LT#5 - Bedroom left (status OFF)
DOM#LT#6 - Bedroom right (status OFF)
DOM#LT#7 - Bathroom 1 (status OFF)
DOM#LT#8 - Bathroom 2 (status OFF)
DOM#LT#9 - Terrace (status OFF)
```Then, with the ID printed in the list, you can interact with the specific light and turn it on and off:
comelit lights --toggle DOM#LT#3
The above command should toggle light with ID `DOM#LT#3` of the list.
### Shutters
Shutters work in the same way of lights. Use:
comelit shutters --list
to get a list of shutters in the house. Then use:
comelit shutters --toggle DOM#BL#0
to open/close the shutter with ID `DOM#BL#0` in the list
### Outlets devices
Outlets work in the same way of lights. Use:
comelit outlets --list
to get a list of outlets in the house. Then use:
comelit outlets --toggle DOM#LC#0
to turn on/off the outlet with ID `DOM#LC#0` in the list
### Thermostats and dehumidifiers
To get a list of thermostats in the house use the command
comelit clima --list
Then, to turn on and off a specific thermostat, use
comelit clima --toggle DOM#CL#0
To change the temperature for a specific thermostat, use the `--temp` parameter:
comelit clima --toggle DOM#CL#0 --temp 21.5
The above command will set the temperature of thermostat `DOM#CL#0` to 21.5 Celsius degrees.
To change the season for a specific thermostat, use the `--season` parameter:
comelit clima --toggle DOM#CL#0 --season [summer|winter]
## ICONA Manager CLI - alpha support
Please note that ICONA integration is in very alpha stage.
To use ICONA integration you need to get the secret token by following [this guide](https://github.com/madchicken/comelit-client/wiki/Get-your-user-token-for-ICONA-communication).
Once you have the token, you can request the configuration of the system using this call:icona -t SECRET_TOKEN -h BRIDGE_HOST -p BRIDGE_PORT get-config all
if you have the Comelit HUB, BRIDGE_HOST is the hub ip while BRIDGE_PORT is 64100.
To get the list of doors/gates you can manage use this commandicona -t SECRET_TOKEN -h BRIDGE_HOST -p BRIDGE_PORT list-doors
You should get an output like this:
```
[INFO] out - Available doors:
[INFO] out - -
id: 0
name: CANCELLO
apt-address: '00000100'
output-index: 2
secure-mode: false[INFO] out - Available actuators:
[INFO] out - -
id: 0
name: Actuator
apt-address: SBIO0255
module-index: 255
output-index: 1```
Now you can use the following command to open the door:icona -t SECRET_TOKEN -h BRIDGE_HOST -p BRIDGE_PORT open-door CANCELLO
If it doesn't work, please repeat the command adding option `-d` and open an issue with the output you get.
To open actuators you need to add the actuator name and `--type actuator` parameter:
icona -t SECRET_TOKEN -h BRIDGE_HOST -p BRIDGE_PORT open-door Actuator --type actuator