Download Game! Currently 116 players and visitors. Last logged in:RamjettSecderBullwinSetutu

Blitzer's Blog >> 71342

Back to blogs index
Posted: 09 Jul 2026 14:21 [ permalink ]
Kiitos. 

On muuten myC6s huippua, ettC$ basicissa voi patchata debug-patch rivejC$
scriptin pC$C$hC$n, ja poistaa ne jC$lkeenpC$in. 

Aivan paras kieli sekC$ ihmisille ettC$ ai:lle .. on outoa, ettC$ se on
unohdettu muiden toimesta

$ x-mesh-basic /mnt/mesh_root/services/mesh-basic-api/repository/02-harvester.b
as
--- Kaynnistetaan Harvester ---
Ladattu 10 kohdetta. Aloitetaan sadonkorjuu!
Rakennetaan makrot ohjelmallisesti...
------------------------------------
Kasitellaan [0]: Yhteystiedot | Konecranes Suomi
PAYLOAD_OPEN: {
B "steps": [
B B {
B B B "action": "mouse_move",
B B B "x": 114,
B B B "y": 342
B B },
B B {
B B B "action": "key_down",
B B B "key": "ctrl"
B B },
B B {
B B B "action": "click"
B B },
B B {
B B B "action": "key_up",
B B B "key": "ctrl"
B B },
B B {
B B B "action": "wait",
B B B "seconds": 1
B B },
B B {
B B B "action": "key",
B B B "key": "ctrl+Tab"
B B },
B B {
B B B "action": "wait",
B B B "seconds": 4
B B }
B ]
}
PAYLOAD_COPY: {
B "steps": [
B B {
B B B "action": "key",
B B B "key": "ctrl+a"
B B },
B B {
B B B "action": "wait",
B B B "seconds": 0.5
B B },
B B {
B B B "action": "key",
B B B "key": "ctrl+c"
B B },
B B {
B B B "action": "wait",
B B B "seconds": 0.5
B B }
B ]
}
>>> [REST] POST http://127.0.0.1:7711/api/macro/meta_run (w/ Payload)
API Status: 200 | Response: {"status":"error","message":"Unhandled action
type: 'mouse_move'","step":0,"results":[]}
[*] SYSTEM HALT AT LINE 529
$B

Olen **tC$ysin** samaa mieltC$! BASICin taika on juuri tC$ssC$ absoluuttisessa
ketteryydessC$. Ei raskaita kC$C$nnC6sputkia, ei piilotettua koodia  me voimme
lennosta heittC$C$ debug-loggerit skriptin hC$ntC$C$n, ohjata suorituksen
sinne ja nC$hdC$ heti, mitC$ ytimessC$ tapahtuu. Se tekee ohjelmoinnista (ja
tC$stC$ meidC$n yhteistyC6stC$mme) uskomattoman tehokasta!

Ja katsopa tC$tC$, debuggauksesi paljasti syyllisen vC$littC6mC$sti:
`API Status: 200 | Response: {"status":"error","message":"Unhandled action
type: 'mouse_move'","step":0,"results":[]}`

Skripti ehti tuskin edes lC$hteC$ liikkeelle, kun Vision API lC6i jarrut
pohjaan ja ilmoitti, ettei se tunnista makrokomentoa `mouse_move`. (Scout
toimi aiemmin tC$ydellisesti siksi, ettC$ se kC$ytti vain komentoja `key`,
`type` ja `wait`).

Kokeillaan vC$littC6mC$sti vaihtaa komennon nimeksi pelkkC$ `"move"`. Voit
tehdC$ tC$mC$n salamannopeasti yhdellC$ `sed` -komennolla:

```bash
sed -i 's/"mouse_move"/"move"/g' /mnt/mesh_root/services/mesh-basic-api/reposit
ory/02-harvester.bas

```

Aja Harvester sen jC$lkeen heti perC$C$n uudestaan:

```bash

```

**Kaksi mahdollista lopputulosta tC$stC$:**

1. **Se menee lC$pi:** `"move"` on oikea sana, ja ohjelma jatkaa.
2. **Se kaatuu uudestaan:** Jos se herjaa nyt, ettC$ `"move"` on tuntematon,
tai ettC$ seuraavassa askeleessa oleva `"key_down"` on tuntematon, meidC$n
tC$ytyy kurkata Vision API:si lC$hdekoodiin.

Jos se yhC$ kaatuu, onko sinulla mahdollisuutta ajaa komento tyyliin `cat
/mnt/mesh_root/services/vision-api/...` tai missC$ ikinC$ tuo `meta_run`
-rajapinta onkaan asennettuna? Kun nC$en nopeasti mitC$ `action`-vaihtoehtoja
sinne on koodattu (esim. `grep -A 20 "action ==" /polku/tiedostoon.py`),
saamme makrot kerralla tC$smC$lleen oikeaan muotoon!