blob: 75f64b346b4b1b248a6223ad246a22b35c3de718 [file] [log] [blame] [view]
# Google Home UI Automator
Google Home Automator can help you automating your Google Home App.
## Getting Started
### Prerequisites
#### Python 3
You need a python 3 environment to run the script.
Google Home UI Automator requires python 3.9 or newer.
#### Android phone
1. turn on ***User Debugging*** mode on your android phone.
1. connect your android phone to computer.
#### Google Home App
1. You need to install Google Home App on your Android phone.
1. Login to your Google Home App.
1. Make sure the Google Home App's version is between `3.1.1.14` and `3.7.1.4`.
### Installation
1. clone this repo.
2. `cd` to the folder.
3. Run `pip install .`
## Usage
### Commissioning Matter device
```shell
$ ui-automator --commission DEVICE_NAME,PAIRING_CODE,ROOM_NAME
```
* `DEVICE_NAME`: desired Matter device, e.g. `m5stack`
* `PAIRING_CODE`: pairing code of your Matter device, e.g. `34970112332`
* `ROOM_NAME`: room that is going to be assigned, e.g. `Office`
### Decommissioning Matter device
```shell
$ ui-automator --decommission DEVICE_NAME
```
* `DEVICE_NAME`: display name of commissioned Matter device on GHA, e.g. `m5stack`
### Regression Test
```shell
$ ui-automator --commission DEVICE_NAME,PAIRING_CODE,ROOM_NAME --reg-test [--repeat <REPEAT_TIMES>]
```
* flag `--reg-test` is required
* regression test need to be used with flag `--commission`
* regression test now only supports commissioning/decommissioning cycle
* defaultly, regression test will run until users use keyboard interrupt to
stop the process
* add `--repeat` to run regression test in limited times
* `REPEAT_TIMES`: repeated times for regression test
## Roadmap
- [x] Commissioning Matter device
- [x] Decommissioning Matter device
- [x] Regression test of cycling commissioning/decommissioning
- [ ] Support regression test for devices that need additionally manual
operations after decommissioning to recover to BLE commissioning mode
- [ ] Share Fabric
- [ ] Get pairing code when sharing fabric
## Notice
## Report issue
- Click
[here](https://issuetracker.google.com/issues/new?component=655104&template=1694023)
to report any encountered issues.