forked from github.com/eufy_robovac
Adjust order of readme and edit for clarity.
This commit is contained in:
150
README.md
150
README.md
@@ -1,33 +1,102 @@
|
||||
# Table of Contents <!-- omit in toc -->
|
||||
|
||||
- [Requirements](#requirements)
|
||||
- [Compiling](#compiling)
|
||||
- [Requirements](#requirements)
|
||||
- [Instructions](#instructions)
|
||||
- [Configuration](#configuration)
|
||||
- [Examples](#examples)
|
||||
- [Command-line](#command-line)
|
||||
- [Config file](#config-file)
|
||||
- [Usage](#usage)
|
||||
- [Obtaining device credentials](#obtaining-device-credentials)
|
||||
- [tl;dr](#tldr)
|
||||
- [Instructions:](#instructions)
|
||||
- [Instructions:](#instructions-1)
|
||||
- [With docker](#with-docker)
|
||||
- [1. Enter a shell within an ubuntu docker container](#1-enter-a-shell-within-an-ubuntu-docker-container)
|
||||
- [2. Set up your environment](#2-set-up-your-environment)
|
||||
- [3. Clone the repo](#3-clone-the-repo)
|
||||
- [4. Install requirements](#4-install-requirements)
|
||||
- [5. Get your credentials](#5-get-your-credentials)
|
||||
- [Configuration](#configuration)
|
||||
- [Examples](#examples)
|
||||
- [Command-line](#command-line)
|
||||
- [Config file](#config-file)
|
||||
- [Usage](#usage)
|
||||
|
||||
|
||||
# eufy_robovac <!-- omit in toc -->
|
||||
|
||||
This is a cli script adapted from [Richard Mitchell's work](https://github.com/mitchellrj/eufy_robovac_). It abandons all the code for integrating with homeassistant in lieu of creating a portable binary to control the thing - either manually or with cron job.
|
||||
|
||||
# Requirements
|
||||
# Compiling
|
||||
|
||||
This python script can be compiled to a single executable binary.
|
||||
|
||||
## Requirements
|
||||
|
||||
- linux machine
|
||||
- git
|
||||
- python 3.12 or higher
|
||||
- python-cryptography package
|
||||
- docker to compile (alternatively: pipenv and pyinstaller)
|
||||
- device credentials
|
||||
- docker
|
||||
|
||||
## Instructions
|
||||
|
||||
```
|
||||
git clone https://gitea.raer.me/freyjagp/eufy_robovac.git
|
||||
cd eufy_robovac
|
||||
chmod +x compile
|
||||
./compile
|
||||
```
|
||||
|
||||
This will create a docker image then use it to compile an executable binary to `eufy_robovac/dist/vac`.
|
||||
|
||||
# Configuration
|
||||
|
||||
The device ID, ip address, and local code are required for this to work. They may be passed as arguments, or through a config file. The defalt path for the config file is `/etc/robovac.conf`. This can be altered with the `-c` or `--config` flags.
|
||||
|
||||
## Examples
|
||||
|
||||
### Command-line
|
||||
|
||||
Set config file to any arbitrary location:
|
||||
|
||||
```
|
||||
robovac --config=/home/user/robovac.conf
|
||||
```
|
||||
|
||||
Provide credentials inline:
|
||||
|
||||
```
|
||||
robovac --device_id=DEVICE_ID --ip=192.168.1.1 --local_code=LOCAL_CODE
|
||||
```
|
||||
|
||||
### Config file
|
||||
|
||||
```
|
||||
[robovac]
|
||||
device_id=DEVICE_ID
|
||||
ip=192.168.1.1
|
||||
local_code=LOCAL_CODE
|
||||
```
|
||||
|
||||
[see here](config/robovac.conf.example)
|
||||
|
||||
# Usage
|
||||
|
||||
```
|
||||
usage: vac [-h] [-c CONFIG] [--device_id DEVICE_ID] [--ip IP] [--local_code LOCAL_CODE] [--time TIME] [--pause] [--home] [--debug] [--verbose] [--quiet]
|
||||
|
||||
Control a Robovac device.
|
||||
|
||||
options:
|
||||
-h, --help show this help message and exit
|
||||
-c CONFIG, --config CONFIG
|
||||
Path to config file
|
||||
--device_id DEVICE_ID
|
||||
Device ID
|
||||
--ip IP Device IP address
|
||||
--local_code LOCAL_CODE
|
||||
Secret key obtained from eufy
|
||||
--time TIME, -t TIME Cleaning time in minutes
|
||||
--pause, -p Pause vacuum
|
||||
--home, -b Go home
|
||||
--debug, -d Enter debugging mode (won't send commands to vacuum)
|
||||
--verbose, -v Enable verbose logs
|
||||
--quiet, -q Quiet logs
|
||||
```
|
||||
|
||||
# Obtaining device credentials
|
||||
|
||||
@@ -91,58 +160,3 @@ Output:
|
||||
Home: <home ID>
|
||||
Device: RoboVac, device ID <DEVICE_ID>, local key <LOCAL_KEY>
|
||||
```
|
||||
|
||||
# Configuration
|
||||
|
||||
The device ID, ip address, and local code are required for this to work. They may be passed as arguments, or through a config file. The defalt path for the config file is `/etc/robovac.conf`. This can be altered with the `-c` or `--config` flags.
|
||||
|
||||
## Examples
|
||||
|
||||
### Command-line
|
||||
|
||||
Set config file to any arbitrary location:
|
||||
|
||||
```
|
||||
robovac --config=/home/user/robovac.conf
|
||||
```
|
||||
|
||||
Provide credentials inline:
|
||||
|
||||
```
|
||||
robovac --device_id=DEVICE_ID --ip=192.168.1.1 --local_code=LOCAL_CODE
|
||||
```
|
||||
|
||||
### Config file
|
||||
|
||||
```
|
||||
[robovac]
|
||||
device_id=DEVICE_ID
|
||||
ip=192.168.1.1
|
||||
local_code=LOCAL_CODE
|
||||
```
|
||||
|
||||
[see here](config/robovac.conf.example)
|
||||
|
||||
# Usage
|
||||
|
||||
```
|
||||
usage: vac [-h] [-c CONFIG] [--device_id DEVICE_ID] [--ip IP] [--local_code LOCAL_CODE] [--time TIME] [--pause] [--home] [--debug] [--verbose] [--quiet]
|
||||
|
||||
Control a Robovac device.
|
||||
|
||||
options:
|
||||
-h, --help show this help message and exit
|
||||
-c CONFIG, --config CONFIG
|
||||
Path to config file
|
||||
--device_id DEVICE_ID
|
||||
Device ID
|
||||
--ip IP Device IP address
|
||||
--local_code LOCAL_CODE
|
||||
Secret key obtained from eufy
|
||||
--time TIME, -t TIME Cleaning time in minutes
|
||||
--pause, -p Pause vacuum
|
||||
--home, -b Go home
|
||||
--debug, -d Enter debugging mode (won't send commands to vacuum)
|
||||
--verbose, -v Enable verbose logs
|
||||
--quiet, -q Quiet logs
|
||||
```
|
||||
Reference in New Issue
Block a user