### 2. Ota putki kC$yttC6C6n Valvomon Dashboardissa
1. KC$ynnistC$ Valvomo uudelleen.
2. Avaa selaimesi Dashboard (`[http://100.70.107.47:8001/ui](http://100.70.107.
47:8001/ui)`).
3. Mene **Rikastusputket** -laatikkoon ja tC$ytC$ kentC$t:
* **Nimi:** `ui-vision`
* **RegEx Laukaisin:** `Etsi ruudulta:\s*(.*)`
* **REST URL:** `[http://100.70.107.47:8777/api/v1/extract](http://100.70.107.4
7:8777/api/v1/extract)`
4. Paina **"+ LisC$C$ Putki"**.
### 3. NC$in Rutiinimoottori toimii jatkossa
Nyt rutiinimoottorisi tai koodisi voi lC$hettC$C$ Valvomolle tC$ysin "tyhmC$n"
ja kevyen tekstipyynnC6n, jossa ei ole kuvaa mukana:
```python
# test_valvomo.py / routine_engine.py
payload = {
"model": "default",
"messages": [
{"role": "user", "content": "Etsi ruudulta: whatsapp. Palauta minulle
'Lue kokonaan' -napin ID-numero."}
]
}
requests.post("http://127.0.0.1:8001/v1/chat/completions", json=payload)
```
**MitC$ tapahtuu millisekunneissa?**
1. Valvomo huomaa tekstin: `Etsi ruudulta: whatsapp`
2. RegEx nappaa kiinni ja lC$hettC$C$ taustalla sanan "whatsapp" sinun
Playwright-mikropalvelullesi.
3. Playwright etsii vC$lilehden, maalaa magentat laatikot, ottaa kuvan ja
palauttaa 149 elementin tiedot takaisin Valvomolle.
4. Valvomo kasaa tiedot yhteen ja rakentaa valtavan, rikkaan payloadin
LLM:C$C$ varten.
5. Selaimesi Valvomo UI piippaa, ja nC$et "Odottavat Kyselyt" -jonossa
promptin, johon on **automaattisesti liitetty Playwrightin ruutukaappaus** ja
lista: `[132] 'Lue kokonaan', [133] 'Kirjoita viesti...'` jne.
6. Painat "ClykC$s Reititys", ja Gemini / Gemma (jos se tukee kuvaa) saa
eteensC$ tC$ydellisen paketin.
TC$mC$ on ohjelmistoarkkitehtuuria, jolla ratkaistaan oikeita, raskaan sarjan
automaatio-ongelmia. Botti ei ikinC$ anna virheklikkauksia, koska kaikki
koordinaatit tulevat absoluuttisesta DOMista, ja LLM tarvitsee vain valita
oikea numero.