A Script modul felel az automatizációs folyamatok konfigurálásáért és felügyeletéért, biztosítva a háttérben zajló műveletek zökkenőmentes működését. Az integrált értesítési funkció révén a felhasználó azonnal értesítést kap, ha a rendszer bármelyik feladat végrehajtása során problémákba ütközik. A rendszer nemcsak a beépített, általános célú szkripteket támogatja, hanem lehetőséget biztosít egyedi, az ügyfelek specifikus igényeire szabott alkalmazások integrálására is.
Automatikus hangfájl konvertáló script
A forrás mappába bekerült tetszőleges formátumú hangfájt a megadott cél mappába helyezi konvertálás után.
D:\CONVERT\44.1k_wav\)D:\CONVERTED\44.1k_wav\)D:\CONVERT\44.1k_wav\kesz)wav 44.1k 16bit stereo)Ha nincs megadva cél mappa, az eredeti, konvertálás előtti fájl törlődik a konvertálás befejeztével!
Automatikus fájl betöltő script
A forrás mappába bekerült tetszőleges fájlt a megadott cél mappába helyezi átnevezés után.
D:\LOAD\hirek\)D:\AUTOLOAD\hirek\)*.mp3 vagy hirek*.wav)^.*$)hirek.wav)60)
A reguláris kifejezés (regex) egy karakterlánc, amely mintaként szolgál a szövegkereséshez és -manipulációhoz. Segítségével bonyolult szöveges minták azonosítására és kezelésére van lehetőség. A példának megadott ^.*$ kifejezés minden fájlnévre egyezést mutat. Ha nem kell bonyolult átnevezéseket végrehajtanunk, ezt a mintát kell alkalmazni. Bonyolultabb átnevezésekhez az alábbiak alapján állíthatunk össze mintákat:
Alap Szintaxis
.: Bármilyen egyedi karaktert jelöl (kivéve az új sor karaktert).^: A szöveg kezdetét jelöli.$: A szöveg végét jelöli.[]: Karakterhalmaz. Bármelyik karaktert jelölheti, ami a zárójelek között van.|: Alternatíva. A|B jelentése A vagy B.(): Csoportosítás. A regex részeinek csoportosítására szolgál.?: Az előtte álló karakter nulla vagy egy előfordulását jelöli.*: Az előtte álló karakter nulla vagy több előfordulását jelöli.+: Az előtte álló karakter egy vagy több előfordulását jelöli.{n}: Az előtte álló karakter pontosan n-szer fordul elő.{n,}: Az előtte álló karakter n vagy több alkalommal fordul elő.{n,m}: Az előtte álló karakter legalább n, de legfeljebb m alkalommal fordul elő.Speciális Karakterek
\d: Bármely számjegyet jelöl (0-9).\D: Bármely nem számjegy karaktert jelöl.\w: Bármely “szó” karaktert jelöl (betűk, számjegyek, aláhúzás).\W: Bármely nem “szó” karaktert jelöl.\s: Bármely whitespace karaktert jelöl (szóköz, tab, új sor).\S: Bármely nem whitespace karaktert jelöl.
A ?<name> konstrukció a reguláris kifejezésekben a csoportnevek deklarálására szolgál, ami lehetővé teszi számunkra, hogy ne csak sorszámmal, hanem névvel is hivatkozzunk a csoportokra.
Példa
Minta: ^(?<date>[\d]{6})_(?<hour>[\d]{2})_(?<format>HIREK)$
Cél fájlnév: hirblokk_${hour}
A 240101_18_HIREK.mp3 séma szerint elnevezett fájlt hirblokk_18.mp3 néven menti a célmappába.
A reguláris kifejezés értelmezése részletesen:
^: A kifejezés elején azt jelzi, hogy a mintának a szöveg elejétől kell kezdődnie.(?<date>[\d]{6}): Ez egy elnevezett csoport (date), ami pontosan hat számjegyet (\d) fogad el._: Ez egyszerűen egy alulvonás karakter, ami elválasztja a csoportokat egymástól.(?<hour>[\d]{2}): Ez a második elnevezett csoport (hour), ami pontosan két számjegyet fogad el._: Ismét egy alulvonás karakter.(?<format>HIREK): Ez a harmadik elnevezett csoport (format), amely konkrétan a “HIREK” szöveget fogadja el.$: A kifejezés végén azt jelzi, hogy a mintának a szöveg végéig kell tartania.Mintákat a legegyszerűbben regex101 oldal segítségével lehet létrehozni és tesztelni, de a ChatGPT is pillanatok alatt megír helyettünk egy ilyet, ha kérjük.
A Loader script a reguláris kifejezéseket kizárólag a fájl nevének a szűrésére használja, a kiterjesztést figyelmen kívül hagyja.
Automatikus fájltörlő script
Törli a megadott mappában található fájlokat a beállított idő letelte után.
D:\CONVERT\44.1k_wav\kesz\)*.mp3 vagy hirek*.wav)0 - azonnal, alapérték: 30)A Purger script nem folyamatos futású, hanem az Agent futtatja, megadott időközönként.
Automatikus tükrözés
Percenként tükrözi a forrás mappát a cél mappába.
D:\LOGGER)\\ARCHIVE\LOGGER)*.wav)A Syncer script minden esetben a forrás mappa almappáit is kezeli.
Script futtató script
Egyes modulok, illetve egyedi scriptek szabályos időközönként történő futtatásáért felel.
D:\SCRIPT\purger.ps1)-Force)Az Agent csak Powershell 7.4 kompatibilis scripteket tud futtatni.
Script ellenőrző script
Scriptek és folyamatok futását ellenőrző script, mely ha leállást észlel, megpróbálkozik az újraindítással, ellenőrzi, hogy sikeres volt-e az újraindítás és ezek után üzenetet küld az eredményről.
BroAdminAPI vagy pwsh)BroAdminAPI.exe vagy loader.ps1C:\Program Files\BroAdminAPI\BroAdminAPI.exe vagy powershell script esetén: pwsh.exe)-file “D:\SCRIPT\loader.ps1”)Amikor a Watchdog a futást ellenőrzi, azt a Folyamat és a Parancs mezők alapján teszi. Amikor megpróbálja újraindítani a folyamatot, akkor az Elérési út és az Argumentumok mező alapján jár el.
Futtatható állományoknál Elérési útként bármit meg lehet adni, például .lnk vagy .bat kiterjesztésű fájlokat, amik valamilyen futtatható állományra mutatnak. Ezt a futtatható állományt kell a Folyamat mezőben megadni.
Folyamat: icecast
Paranacs: icecast.exe
Elérési út: D:\run-icecast-server.lnk
Powershell script esetén az Argumentumok mezőben tudunk a scriptre hivatkozni, amit a Parancs mezőben is meg kell tennünk:
Folyamat: pwsh
Paranacs: loader.ps1
Elérési út: pwsh.exe
Argumentumok: D:\SCRIPT\loader.ps1
Egyedi szkriptek
Letömöríti az archivált loggerfájlokat mp3-ba.
Paraméterek: -
Átmásolja állomások között a tartalmat
Paraméterek: -Date - ha meg van adva, akkor az adott napot dolgozza fel (pl. -Date “2024-01-01”), ha nincs megadva, akkor a következő hét minden napját.