Gépünkön a Microsoft ügynökei

A mesterséges intelligencia első egyszerű, felhasználóknak szánt megnyilvánulásaként született, s a több mint tízezer forintos ár miatt halt meg Prody Parrot, a beszélő, mozgó, gondolatolvasó, ám csak a virtuális térben létező papagáj. Akik találkoztak vele, butának, vagy ennivalóan aranyosnak tartották - s valójában talán mindkettő illett is rá. A tamagotchi őrület utóhatásaként megjelent kis tollas most újra életre kelt - igaz, ezúttal a Microsoft termékeként, Peedy Parrot néven, ám ugyanolyan ostobán, mint amilyenek a tamagotchik általában.

Persze nem is várhatunk egy bábutól többet, minthogy bábuként viselkedjen - A Microsoft Agent figurák (http://msdn.microsoft.com/workshop/imedia/agent) önmagukban csak tétlenül mosolyogni, és értetlenül gagyogni képesek a monitoron, persze csak addig, amíg valaki el nem szánja magát, hogy lelket öntsön beléjük.

Nézzük, miként épül fel a képernyőnkön cikázó élőlénycsoport! Először is van egy 600kb-os alap, ami lehetővé teszi az egész rendszer használatát. A Windows 2000 felhasználóknak ez már alapbeállításként a gépükön van, ami igazán meglepő tekintetbe véve azt, hogy mire is használható ez a pár DLL fájl. A következő lépés egy Agent, azaz egy nekünk tetsző figura letöltése. A figurák többnyire arra jók, hogy jóhiszeműen bambuljanak a képernyőnkön, s a későbbiekben majd a parancsainknak megfelelően mászkáljanak, beszéljenek, tevékenykedjenek rajta, vagy éppen tűnjenek el róla minél hamarabb. Opcionális kiegészítőként letölthető egy 1 MB hosszú program, amely a beszédgenerálásért felelős - segítségével gyönyörű angol kiejtéssel ruházhatjuk fel Agentünket -, illetve egy 6 Mb hosszú "Speech Recognition", amely a beszédfelismerésért felel. Mentségére legyen mondva, ez a méret már majdnem a maximum, az általunk mondott szavakat ugyanis a megszokottal ellentétben nem kell előmondani: ha írott szöveggel megadjuk a figyelendő kifejezéseket, s megfelelő angol kiejtéssel beszélünk, akkor nagyon ügyesen felismeri, hogy mit akarunk tőle.

Itt jöhetnek a képbe azok az emberek, akik úgy gondolják, hogy ügyesebbnek az eddigi tama-programozóknál, s kellő elhivatottságot éreznek egy virtuális életforma lelki világának elkészítéséhez. A bábukat vezérlő kéz szerepében különböző programnyelvek tetszelegnek, közülük a legfigyelemreméltóbb a mIRC 5.7 nyújtotta mIRCscript környezet, amely minden bizonnyal nagyot taszít majd az Agent-ek népszerűségén, hiszen ez az első elterjedt szoftver, ami támogatja a technológiát. A http://www.msagentring.org/index_agentchars.html címen lévő bemutató például VBScript segítségével távolról vezérli a kedveseinket, ami nem csak biztonság szempontjából vet fel kérdéseket, hanem annak a lehetőségét is elénk tárja, hogy kedves kis figuránk hirtelen saját életre kel, s mi csak ámuldozunk a valójában távoli script által irányított "paranormális jelenségen".

Az Agent figura mIRC-ben a GLOAD [Agentnek szánt név] [fájlnév] parancs segítségével kelthető életre. A fájlnév helyett egy számot is írhatunk - ekkor az N. felinstallált Agent fog felbukkanni -, ha pedig elhagyjuk ezt a paramétert, akkor az alapértelmezett figurával találkozunk. A GUNLOAD parancs paraméterezése már egyszerőbb - itt csak a kívánt Agent nevét kell a parancs után írni.

A két legfontosabb parancs a GPLAY és a GTALK. A GPLAY [Agent neve] [animáció neve|N] segítségével tetszőleges animációt választhatunk ki a meglévők közül - ezeket érdemes végignézni programozás előtt, hogy tudjuk, hogy miket használhatunk -, a GTALK pedig a beszédért felelős (illetve a -k paraméter használatakor a gondolkodásért). Beszéd közben egy tetszőleges WAV formátumú állomány is lejátszható, illetve különböző tag-ek segítségével több kis apróságot megadhatunk, mint például:

\spd=n\ a beszéd sebessége

\pit=n\ a hangszín

\vol=n\ a hangerő

\chr="text"\ a beszéd fajtája (normal, monotone vagy whisper)

\pau=n\ szünet a beszédben (n)

Agentünk helyzetét a GSHOW [név] [x y] paranccsal történő megjelenítés után a GMOVE [név] [x] [y] [sebesség] segítségével változtathatjuk, majd ha meguntuk őt, a GHIDE [név] paranccsal el is tüntethetjük.

Érdekes, bár kevésbé használatos parancs a GPOINT [név] [X] [Y], aminek hatására figuránk többé-kevésbé a képernyő megadott pontjára mutat, ill. a GSIZE [név] [X] [Y], amely megváltoztatja az Agent méretét.

Fontos ellenben a GSTOP [név] parancs, ami leállít minden tevékenységet (illetve -c kapcsoló esetén csak az aktuálist, ami utána jön, azokat lejátssza). A talk és a play paraméterek megadásával külön-külön is rendelkezhetünk a beszédről és az animációról.

A GOPS csak néhány apró beállításért felelős: a -b-vel a szövegbuborékokat tudjuk ki-be kapcsolni (on/off), a -i-vel az idle effekteket (azaz azt, hogy amikor nincs kiadva feladat neki, akkor elszórakoztassa magát), -e-vel pedig a hangeffektusokat.

Ahhoz, hogy kiderítsük, hogy mit csinál éppen a kis tamagotchi-nk, függvényeket kell használnunk. Az $agentver a verziószámát mondja meg (0, ha nincs installálva Agent), az $agentstat pedig arról ad információt hogy szabad (1), vagy épp elfoglalt-e (0) kicsinyünk. Az $agent(N).char az N. karakter fájlnevét adja vissza (0 esetén pedig a karakterek számát), de az $agent(név)-vel további információkat is nyerhetünk:

visible Az eredmény $true, ha épp látható.

x,y,w,h aktuális pozíció

ow, oh eredeti méret

speed beszédsebesség

pitch hangszín

A fentiek önmagukban persze nem sokat érnek - interaktivitást csak akkor tudunk elérni, ha mindezt összekapcsoljuk a Mi mIRC-ünk sorozatban már ismertetett eseménykezelőkkel, illetve a mIRC 5.7-es verziójától támogatott Microsoft Speech Recognition-nel. Ez utóbbi kezelése senkinek nem ütközhet nehézségekbe: először bekapcsoljuk a beszéd figyelését a vcmd -c on paranccsal, majd megadjuk a figyelendő szavakat (pl. vcadd Part Channel, Disconnect), s végül elhelyezzük a megfelelő eseménykezelőket:

on 1:vcmd:part channel:*:if ($active ischan) part $active

on 1:vcmd:disconnect:*:quit

Az egyedüli dolog, amire figyelnünk kell, az, hogy ne válasszunk túl rövid, s túlságosan egyforma szavakat - ezekből ugyanis nagy gondok lehetnek a későbbiekben. J

A kevésbé alkotó lelkületű emberek az msagentring.org címről indulva már kész programokat is igénybe vehetnek Agent-ük mozgatásához - ilyen például az Outlook Express-hez letölthető kiegészítő, amellyel felolvastathatjuk magunknak angol nyelvű leveleinket, vagy a WinAmp Agent kiegészítője, amiről ugyan el nem tudom képzelni, hogy mi jót csinálhat, de biztos nagyon érdekes. :-)

Varga Gábor