Az OTRS keretrendszer moduláris. A következő kép az OTRS alapvető rétegszerkezetét jeleníti meg.
Az OTRS 3.1-ben bevezetett OTRS általános felület folytatja az OTRS modularitását. A következő kép az általános felület alapvető rétegszerkezetét jeleníti meg.
Könyvtár | Leírás |
---|---|
bin/ | parancssori eszközök |
bin/cgi-bin/ | webes kezelő |
bin/fcgi-bin/ | fast cgi webes kezelő |
Kernel | alkalmazás kódbázisa |
Kernel/Config/ | beállítófájlok |
Kernel/Config/Files | beállítófájlok |
Kernel/GenericInterface/ | az általános felület API-ja |
Kernel/GenericInterface/Invoker/ | meghívó modulok az általános felülethez |
Kernel/GenericInterface/Mapping/ | leképező modulok az általános felülethez, például: Simple |
Kernel/GenericInterface/Operation/ | műveleti modulok az általános felülethez |
Kernel/GenericInterface/Transport/ | átviteli modulok az általános felülethez, például: „HTTP SOAP” |
Kernel/Language | nyelvi fordítási fájlok |
Kernel/Scheduler/ | az ütemező fájljai |
Kernel/Scheduler/TaskHandler | kezelőmodulok az ütemező feladatokhoz, például: GenericInterface |
Kernel/System/ | alapmodulok, például: Log, Ticket… |
Kernel/Modules/ | előtétprogram modulok, például: QueueView… |
Kernel/Output/HTML/ | HTML sablonok |
var/ | változó adatok |
var/log | naplófájlok |
var/cron/ | cron fájlok |
var/httpd/htdocs/ | htdocs könyvtár az index.html fájllal |
var/httpd/htdocs/skins/Agent/ | az ügyintéző felületéhez elérhető felszínek |
var/httpd/htdocs/skins/Customer/ | az ügyfélfelülethez elérhető felszínek |
var/httpd/htdocs/js/ | JavaScript fájlok |
scripts/ | egyéb fájlok |
scripts/test/ | egységteszt fájlok |
scripts/test/sample/ | egységteszt példaadat fájlok |
.pl = Perl
.pm = Perl-modul
.tt = Template::Toolkit sablonfájlok
.dist = Fájlok alapértelmezett sablonjai
.yaml vagy .yml = A webszolgáltatás beállításaihoz használt YAML-fájlok
Az alapmodulok az $OTRS_HOME/Kernel/System/*
alatt
találhatók. Ez a réteg a logikai munkához van. Az alapmodulok a rendszer
rutinjai kezeléséhez használhatók, mint például „jegy zárolása” és „jegy
létrehozása”. Néhány fő alapmodul a következő:
Kernel::System::Config
(beállítási lehetőségek
eléréséhez)
Kernel::System::Log
(naplózáshoz az OTRS naplózó
háttérprogramjába)
Kernel::System::DB
(az adatbázis háttérprogram
eléréséhez)
Kernel::System::Auth
(felhasználói hitelesítés
ellenőrzéséhez)
Kernel::System::User
(felhasználók kezeléséhez)
Kernel::System::Group
(csoportok kezeléséhez)
Kernel::System::Email
(e-mailek küldéséhez)
További információkért nézze meg a http://otrs.github.io/doc/ oldalt.
A böngésző, a webkiszolgáló és az előtétprogram modulok közti felület. Egy előtétprogram modul használható HTTP-hivatkozáson keresztül.
Az előtétprogram modulok az
$OTRS_HOME/Kernel/Modules/*.pm
alatt találhatók. Két
nyilvános függvény van ebben - new()
és run()
-
amelyek az előtétprogram kezelésből érhetők el (például
index.pl
).
A new()
előtétprogram modul objektumok létrehozásához
használható. Az előtétprogram kezelés biztosítja a használt előtétprogram
modulokat az alapvető keretrendszer objektumokkal. Ezek például a
következők: ParamObject
(webes űrlapparaméterek
lekéréséhez), DBObject
(meglévő adatbázis-kapcsolatok
használatához), LayoutObject
(sablonok és egyéb HTML
elrendezés függvények használatához), ConfigObject
(konfigurációs beállítások hozzáféréséhez), LogObject
(a
keretrendszer naplózó rendszerének használatához),
UserObject
(a felhasználói függvények lekéréséhez a
jelenlegi felhasználótól), GroupObject
(a
csoportfüggvények lekéréséhez).
Az alapmodulokról további információkért nézze meg a http://otrs.github.io/doc/ oldalt.
A CMD (Command - Parancs) előtétprogram a webes előtétprogram kezeléshez és
a webes előtétprogram modulokhoz együtt hasonló (csak a
LayoutObject
nélkül), és az alapmodulokat használja
néhány műveletnél a rendszeren.
Az általános felület modulok az
$OTRS_HOME/Kernel/GenericInterface/*
alatt
találhatók. Az általános felület modulok egy webszolgáltatás végrehajtásának
egyes részei kezeléséhez használhatók a rendszeren. Az általános felület fő
moduljai a következők:
Kernel::GenericInterface::Transport
(kölcsönhatásba
lépéshez távoli rendszerekkel)
Kernel::GenericInterface::Mapping
(adatok átalakításához
egy szükséges formátumba)
Kernel::GenericInterface::Requester
(az OTRS mint
kérelmezőként való használatához a webszolgáltatásnál)
Kernel::GenericInterface::Provider
(az OTRS mint
kiszolgálóként való használatához a webszolgáltatásnál)
Kernel::GenericInterface::Operation
(szolgáltató
műveletek végrehajtásához)
Kernel::GenericInterface::Invoker
(kérelmező műveletek
végrehajtásához)
Kernel::GenericInterface::Debugger
(webszolgáltatás
kommunikációjának követéséhez naplóbejegyzések használatával)
További információkért nézze meg a http://otrs.github.io/doc/ oldalt.
Az általános felület meghívó modulok az
$OTRS_HOME/Kernel/GenericInterface/Invoker/*
alatt
találhatók. Minden egyes meghívót egy Controller
elnevezésű mappa tartalmaz. Ez a megközelítés nem csak a belső osztályoknak
és metódusoknak segít egy névteret meghatározni, hanem a fájlneveknek
is. Például az
$OTRS_HOME/Kernel/GenericInterface/Invoker/Test/
az
összes Teszt-típusú meghívó vezérlője.
Az általános felület meghívó modulok háttérprogramként használhatók kérések létrehozásához a távoli rendszereknél műveletek végrehajtásához.
További információkért nézze meg a http://otrs.github.io/doc/ oldalt.
Az általános felület leképező modulok az
$OTRS_HOME/Kernel/GenericInterface/Mapping/*
alatt
találhatók. Ezek a modulok adatok (kulcsok és értékek) átalakításához
használhatók az egyik formátumról egy másikra.
További információkért nézze meg a http://otrs.github.io/doc/ oldalt.
Az általános felület műveleti modulok az
$OTRS_HOME/Kernel/GenericInterface/Operation/*
alatt
találhatók. Minden egyes műveletet egy Controller
elnevezésű mappa tartalmaz. Ez a megközelítés nem csak a belső osztályoknak
és metódusoknak segít egy névteret meghatározni, hanem a fájlneveknek
is. Például az
$OTRS_HOME/Kernel/GenericInterface/Operation/Ticket/
az
összes Ticket-típusú művelet vezérlője.
Az általános felület műveleti modulok háttérprogramként használhatók egy távoli rendszer által kért műveletek végrehajtásához.
További információkért nézze meg a http://otrs.github.io/doc/ oldalt.
Az általános felület átviteli modulok az
$OTRS_HOME/Kernel/GenericInterface/Operation/*
alatt
találhatók. Minden egyes átviteli modult egy olyan elnevezésű könyvtárba
kell elhelyezni, ahogy a használt hálózati protokollt hívják. Például a
„HTTP SOAP” átviteli modul a
$OTRS_HOME/Kernel/GenericInterface/Transport/HTTP/SOAP.pm
fájlban található.
Az általános felület átviteli modulok adatok küldéséhez használhatók egy távoli rendszer számára, valamint adatok fogadásához tőle.
További információkért nézze meg a http://otrs.github.io/doc/ oldalt.
Az ütemező feladatkezelő modulok az
$OTRS_HOME/Kernel/Scheduler/TaskHandler/*
alatt
találhatók. Ezek a modulok aszinkron feladatok végrehajtásához
használhatók. Például a GenericInterface
feladatkezelő
általános felület kéréseket hajt végre a távoli rendszerekhez az apache
folyamaton kívül. Ez abban segíti a rendszert, hogy fogékonyabb legyen,
megelőzve a lehetséges teljesítményproblémákat.
További információkért nézze meg a http://otrs.github.io/doc/ oldalt.
Az adatbázis-felület különböző adatbázisokat támogat.
Az OTRS adatmodelljéhez nézze meg a /doc
könyvtárban
lévő fájlokat. Alternatívaként megnézheti az adatmodellt a githubon
is.