# 📖 Rate API + Telegram Notifier (PHP + SQLite)

Questa API gestisce le **rate condominiali** sincronizzate dal servizio Danea e notifica via **Bot Telegram**.

---

## 🚀 Funzionalità principali
- Connessione e importazione dati da **Danea Cloud (MioCondominio)**
- Salvataggio locale in **SQLite** (`Condominio.db`)
- Tabella `rate` con campi:
  - `id`, `num`, `data`, `descrizione`, `dovuto`, `saldo`, `scaduta`, `stato`, `tipo`
- Notifica automatica via **Telegram Bot API** (con pulsanti inline ✅❌)
- Generazione di una **pagina HTML statica** con stato aggiornato delle rate
- API REST con metodi `GET` e `POST`

---

## 🔹 Endpoint disponibili

### 1. GET `/api.php`
**Descrizione:** Restituisce tutte le rate salvate (eccetto quelle con `dovuto=0`).

```bash
curl -X GET "https://tuodominio.it/api.php"
```

📌 **Risposta esempio:**
```json
[
  {
    "id": 1,
    "num": 5,
    "data": "2025-01-31",
    "descrizione": "Rata gestione 2025",
    "dovuto": 150.00,
    "saldo": 150.00,
    "scaduta": 1,
    "stato": "DA PAGARE",
    "tipo": "[Condominio Alfa]"
  }
]
```

---

### 2. POST `/api.php?action=update`
**Descrizione:** Aggiorna lo stato di una rata (marcata come pagata).

```bash
curl -X POST "https://tuodominio.it/api.php" \
  -d "action=update" \
  -d "id=1"
```

📌 **Risposta esempio:**
```json
{
  "status": "ok",
  "message": "Rata aggiornata",
  "html": {
    "ok": true,
    "file": "/var/www/html/169752019.html",
    "bytes": 3456
  }
}
```

*(L’aggiornamento genera sempre una nuova pagina HTML aggiornata)*

---

### 3. POST `/api.php` (Importazione dati)
**Descrizione:** Avvia il processo di **login a Danea Cloud** → recupero condomini → esercizi → unità → import rate.

```bash
curl -X POST "https://tuodominio.it/api.php"
curl -X POST https://yana.iliadboxos.it/Condominio/api.php
```

📌 **Risposta esempio:**
```json
{
  "status": "ok",
  "message": "Dati aggiornati + notifiche inviate + pagina statica generata",
  "html": {
    "ok": true,
    "file": "/var/www/html/169752019.html",
    "bytes": 5789
  }
}
```

Durante l’import:
- Vengono inserite/aggiornate le rate nel database.
- Se una rata è **DA PAGARE**, il bot Telegram notifica l’utente.

---

## 🔹 Notifiche Telegram
Ogni rata "DA PAGARE" genera un messaggio come:
```
[Condominio Alfa] Rata gestione 2025 da pagare: €150
```
Con tastiera inline:
- ✅ Sì → segna la rata come pagata (`pay_yes_<id>`)
- ❌ No → segna la rata come non pagata (`pay_no_<id>`)

---

## 📂 Struttura progetto
```
.
├── api.php             # Script principale API REST + import da Danea
├── Condominio.db       # Database SQLite (tabella rate)
├── 169752019.html      # Pagina HTML statica generata
├── api_error.log       # Log errori PHP
└── README.md           # Questo file
```

---

## ⚠️ Note di sicurezza
- Proteggi le credenziali (`dbId`, `username`, `password`) → non committare mai su GitHub.
- Mantieni segreto il `botToken` Telegram.
- Usa **HTTPS** per tutte le chiamate API.

---

✍️ Autore: *[Il tuo nome qui]*

