bridge nel repo: sorgenti, unit systemd e istruzioni per i tester
- bridge/ con aira_bridge.py, setup_creds.py, aira_probe.py, test offline - percorsi di configurazione via AIRA_CONFIG_DIR (default invariato) - README del bridge in inglese: installazione, servizio, firewall, sicurezza - README principale aggiornato (il bridge non è più 'fuori dal repo')
This commit is contained in:
@@ -18,22 +18,26 @@ l'app è un client sottile che parla HTTP/1.1 + JSON. Effetto collaterale
|
||||
gradito: credenziali e token non stanno mai sul telefono.
|
||||
|
||||
```
|
||||
Jolla (QML/C++ Qt 5.6) --HTTP/1.1 + JSON--> bridge sul server --gRPC--> cloud Aira
|
||||
(~/workspace/Carlo/Aira/
|
||||
aira_bridge.py)
|
||||
Jolla (QML/C++ Qt 5.6) --HTTP/1.1 + JSON--> bridge (Linux in LAN) --gRPC--> cloud Aira
|
||||
bridge/aira_bridge.py
|
||||
```
|
||||
|
||||
## Il bridge
|
||||
|
||||
Vive in `~/workspace/Carlo/Aira/` (fuori da questo repo: contiene dati
|
||||
personali e non va pubblicato).
|
||||
Il codice sta in [`bridge/`](bridge/): istruzioni complete in
|
||||
[bridge/README.md](bridge/README.md) (in inglese, perché è la parte che serve a
|
||||
chi prova l'app su un altro impianto).
|
||||
|
||||
```sh
|
||||
cd ~/workspace/Carlo/Aira
|
||||
.venv/bin/python aira_bridge.py --port 8790 # ascolta su 0.0.0.0:8790
|
||||
cd bridge
|
||||
python3 -m venv .venv && . .venv/bin/activate
|
||||
pip install -r requirements.txt
|
||||
export AIRA_CONFIG_DIR="$HOME/.config/aira"
|
||||
python setup_creds.py # email e password Aira: salvate in un file 600
|
||||
python aira_bridge.py --port 8790
|
||||
```
|
||||
|
||||
Al primo avvio genera il token in `~/.hermes/profiles/carlo/aira_bridge.json`
|
||||
Al primo avvio il bridge genera un token in `$AIRA_CONFIG_DIR/aira_bridge.json`
|
||||
(permessi 600): è il valore da incollare nelle impostazioni dell'app.
|
||||
API completa in [docs/PROTOCOL.md](docs/PROTOCOL.md).
|
||||
|
||||
@@ -53,8 +57,10 @@ sfdk build # RPM in RPMS/
|
||||
sfdk deploy # sul dispositivo collegato
|
||||
```
|
||||
|
||||
Sorgenti dal tarball: `tar xzf harbour-aira-0.2.1.tar.gz` e compilare in una
|
||||
Sorgenti dal tarball: `tar xzf harbour-aira-0.3.0.tar.gz` e compilare in una
|
||||
cartella nuova (mai sopra una estrazione precedente: i Makefile restano stale).
|
||||
Il log dell'app inizia con `harbour-aira v<versione> build <data>`: serve a
|
||||
distinguere una build nuova da una stale senza indovinare.
|
||||
|
||||
### Verifica locale, senza SDK
|
||||
|
||||
@@ -82,6 +88,12 @@ qml/pages/SettingsPage.qml
|
||||
qml/components/InfoRow.qml
|
||||
qml/components/ActionButton.qml pulsante di comando, con conferma opzionale
|
||||
tests/core_test.cpp verifiche del nucleo (headless)
|
||||
bridge/aira_bridge.py servizio HTTP/1.1 + JSON verso il cloud (gRPC)
|
||||
bridge/setup_creds.py salva le credenziali Aira (file 600)
|
||||
bridge/aira_probe.py sonda di sola lettura: login + stato impianto
|
||||
bridge/test_bridge_commands.py verifiche offline dei comandi (27 controlli)
|
||||
bridge/harbour-aira-bridge.service unit systemd utente
|
||||
bridge/README.md istruzioni di installazione del bridge (inglese)
|
||||
docs/PIANO.md piano di progetto e scelte
|
||||
docs/PROTOCOL.md API del bridge
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user