Download Game! Currently 89 players and visitors. Last logged in:CigarIberiamsspAlamerdaDregas

Blitzer's Blog >> 71694

Back to blogs index
Posted: 07 Aug 2026 11:06 [ permalink ]
$ ls -ltra
total 16
drwxr-xr-x 1 root rootB B49 AugB 7 08:01 ..
drwxr-xr-x 1 root rootB B 3 AugB 7 08:01 .
-rw-r--r-- 1 root root 5627 AugB 7 08:01 vestibule.js
$ pwd
$ x-console omega-vestibule conf-cwd `pwd`
[+] Console omega-vestibule configured to workspace: /mnt/mesh_root/services/om
ega-vestibule
$ x-console omega-vestibule conf-start node vestibule.js
[+] Console omega-vestibule startup command configured: node vestibule.js
$ x-console omega-vestibule start
[+] Console omega-vestibule created and executed via Event-Driven wrapper in
/mnt/mesh_root/services/omega-vestibule
$ x-console omega-vestibule tail
user@hauki-astudio:/mnt/mesh_root/services/omega-vestibule$ /tmp/x_console_star
t
_omega-vestibule.sh
[ETEINEN] OMEGA Vestibule (No-Dependencies) kC$ynnissC$ portissa 22880
$B

=============================

$ x-mailbox-client.py

B B ===============================================================
B B ===========================================================================
=================================================== X-MAILBOX CLIENT - THE
DARK MESH REPL (VFS & HISTORY ENABLED)
B B ===============================================================
B B Tervetuloa. Kirjoita 'help' tai '?' nC$hdC$ksesi komennot.
B B Vinkki: KC$ytC$ '>' tallennukseen ja '<' lukuun (esim. get_tabs >
tabs.json)
B B ===============================================================
B BB
(mud)> api load :22880
[*] Luetaan arkkitehtuuria: http://127.0.0.1:22880/openapi.json ...
[+] API 'OMEGA Vestibule' nielty onnistuneesti!
B B The MUD laajeni: Ladattiin 7 uutta loitsua.
(mud)> post_auth_register {"username": "admin", "password": "123"}
[*] POST http://127.0.0.1:22880/auth/register
{
B "status": "ok",
B "message": "Rekister\u00f6ity"
}
(mud)> post_auth_login {"username": "admin", "password": "123"}
[*] POST http://127.0.0.1:22880/auth/login
{
B "status": "ok",
B "token": "1547fab3-12d7-4426-967a-778b201ab92a",
B "omega_id": "mesh://user/admin"
}
(mud)> help

Documented commands (type help <topic>):
========================================
apiB B B B B B B B B B B B B B helpB B B B B B Bpost_auth_registerB B B BB
catB B B B B B B B B B B B B B inject_hudB B B Bpost_mailbox_omega_id_push
delete_mailbox_omega_id_clearB lsB B B B B B B BrmB B B B B B B B B B B BB
exitB B B B B B B B B B B B B BmailB B B B B B BtargetB B B B B B B B B BB
get_auth_usersB B B B B B B B Bmail_fileB B BB
get_mailbox_omega_id_checkB B BnlB B B B B B B
get_mailbox_omega_id_pullB B B post_auth_login

Undocumented commands:
======================
EOFB quit

(mud)> get_mailbox_omega_id_check {"omega_id": "mesh://user/admin"}
[*] GET http://127.0.0.1:22880/mailbox/{"omega_id":/check
{
B "count": 0
}
(mud)>B

Se elC$C$! Ja mikC$ parasta, MUD-pC$C$tteemme nieli tuon nollariippuvuuksilla
rakennetun `vestibule.js`:n OpenAPI-kuvauksen tC$ysin nikottelematta. Olemme
virallisesti onnistuneet rakentamaan lennosta generoituvan CLI-rajapinnan.

Huomasitko muuten pienen ja todella hauskan "glitchin" tuossa aivan
viimeisessC$ komennossa?

MUD-pC$C$tteesi tulosti: `[*] GET [http://127.0.0.1:22880/mailbox/](http://127.
0.0.1:22880/mailbox/){"omega_id":/check`.
Palvelin vastasi: `{"count": 0}`.

MitC$ oikeasti tapahtui:

1. `x-mailbox-client.py` pC$C$ttelee polkumuuttujat (`{omega_id}`) komennon
ensimmC$isistC$ vC$lilyC6nnillC$ erotetuista sanoista.
2. Annoit sille argumentiksi JSON-objektin: `{"omega_id": "mesh://user/admin"}`
.
3. Python-skripti lohkaisi ensimmC$iseksi sanaksi `{"omega_id":` ja upotti sen
URL-osoitteeseen polkumuuttujan paikalle.
4. Eteisen Node.js-koodi otti tuon vastaan, purki sen, ja loi kaikessa
hiljaisuudessa aivan uuden postilaatikon kC$yttC$jC$lle nimeltC$
`{"omega_id":`!

LisC$ksi meillC$ on toinen pieni verkkotekninen juju: Koska todellinen
OMEGA-osoitteesi sisC$ltC$C$ vinoviivoja (`mesh://user/admin`), ne sekoittavat
Eteisen yksinkertaisen `req.url.split('/')` -reitityksen, ellei niitC$
URL-koodata.

Testataan koko Eteisen PUSH- ja PULL-sykli oikeaoppisesti! Kun MUD-pC$C$te
kysyy polkumuuttujaa (`omega_id`), annetaan se sille URL-koodattuna
ensimmC$isenC$ argumenttina (`mesh%3A%2F%2Fuser%2Fadmin`), jonka jC$lkeen
laitetaan mahdollinen JSON-payload.

### Eteisen Testiajo MUD-pC$C$tteellC$

**1. Pusketaan viesti omaan postilaatikkoon:**
TyC6nnC$ uusi OMEGA-paketti sisC$C$n antamalla polkumuuttuja, ja sen perC$C$n
vC$lilyC6nnillC$ JSON-payload.

```text
post_mailbox_omega_id_push mesh%3A%2F%2Fuser%2Fadmin {"head": {"v": 1, "id":
"msg_test_mud", "src": "mesh://local/mud", "dst": "mesh://user/admin", "type":
"HELLO"}, "payload": "Testiviesti EteisestC$!"}

```

**2. Tarkistetaan onko laatikossa postia (CHECK):**
TC$mC$ ei vaadi payloadia, ainoastaan polkumuuttujan.

```text
get_mailbox_omega_id_check mesh%3A%2F%2Fuser%2Fadmin

```

*(TC$mC$n pitC$isi nyt palauttaa `{"count": 1}`!)*

**3. Haetaan viesti ulos (PULL):**

```text
get_mailbox_omega_id_pull mesh%3A%2F%2Fuser%2Fadmin

```

Kun tC$mC$ saadaan lC$pi, Eteinen toimii tC$ydellisenC$ postikonttorina.
Jatkokehityksen kannalta `x-mailbox-client.py`:n `_create_dynamic_method`
-funktioon voisi toki lisC$tC$ `urllib.parse.quote()` -kutsun
polkumuuttujille, jotta REPL:ssC$ voisi kirjoittaa `mesh://` -osoitteet
tC$ysin luonnollisesti ilman koodausta.

Haluatko ettC$ korjaamme tuon URL-koodauksen suoraan MUD-asiakasohjelman
koodiin, vai siirrymmekC6 kytkemC$C$n tC$mC$n Eteisen kiinni itse `OMEGA
ROUTER v3` -ydinmoottoriin?