ForgeOpenPlatform
hu

OpenPlatform

Az OpenPlatform beállításai, szolgáltatásai és adatbázistáblái

OpenPlatform · openplatform@5 openplatformsettingsdatabaseservices

A beállítások

Az OpenPlatform a konfigurációját a cl_config táblában tartja, és indításkor, majd nyolcóránként betölti a Total.js CONF objektumába (definitions/init.js). A beállítási képernyő ezeket a kulcsokat olvassa és menti (plugins/setup/schemas/settings.js):

KulcsJelentés
name, icon, colora platform neve, logója és színe
urla platform nyilvános címe (a záró / nélkül). Módosítása törli az értesítési hivatkozásokat és a nyitott alkalmazásmunkameneteket
languageaz alapértelmezett nyelv
mail_smtp, mail_smtp_options, mail_fromaz SMTP szerver, annak beállításai (JSON) és a feladó; a beállítási képernyő tesztelni tudja őket
$tms, secret_tmsaz események közzététele TMS-en, és a kapcsolat titka
allow_token, tokena nyilvános GET /users/ API és tokenje engedélyezése
newtabminden alkalmazás megnyitása új lapon
sync, sync_tokenmás példányok /sync/ socketjének fogadása, a tokenjével

Az első indítás (database.sql) a cl_config táblában olyan értékeket is létrehoz, amelyeket a beállítási képernyő nem szerkeszt: a telepítés id értékét, a hitelesítés secret értékét, a cookie nevét, a jelszavak salt értékét, az ellenőrző összegek saltchecksum értékét és a TMS-kapcsolat titkát. A kulcsokat ezekkel az alapértékekkel hozza létre:

KulcsAlapértékJelentés
auth_cookie_expire1 monthmennyi ideig él a munkamenet-cookie
auth_expire5 minutesmennyi ideig tartja a memóriában a bejelentkezett felhasználót, mielőtt újraolvassa
auth_cookie_options{"httponly":true,"security":"lax"}a munkamenet-cookie beállításai
auth_strictfalseszigorú munkamenetek
app_session_expire1 daymeddig tart egy alkalmazásmunkamenet
cdnhttps://cdn.componentator.com/a felület CDN-je
languageeuaz alapértelmezett nyelv
token, sync_tokengenerálta felhasználói API és a szinkronizációs socket tokenje (mindkét funkció alapból ki van kapcsolva)

A servicetoken kulcsot, amellyel a képfeltöltő végpont a lekérdezési tokenjét összeveti, a szkript nem hozza létre, és a beállítási képernyő sem szerkeszti: csak akkor létezik, ha te magad adod hozzá a cl_config táblához.

A szkript létrehozza az Admin csoportot és az első felhasználót is (info@totaljs.com, adminisztrátor, megerősített), aki hozzá tartozik; lásd telepítés.

A háttérszolgáltatások

A Total.js percenként futtat egy szolgáltatást. Az OpenPlatform ezt használja (definitions/init.js) a következőkre:

  • az ellenőrzések memóriabeli gyorsítótárának törlése (2 percenként);
  • a napi statisztikák mentése: online felhasználók, a maximum és az eszközönkénti szám (3 percenként);
  • a konfiguráció újratöltése az adatbázisból (8 óránként);
  • a lejárt alkalmazás- és platformmunkamenetek törlése (12 óránként);
  • az olvasatlan értesítések e-mailes összefoglalóinak küldése (11 percenként, ha a levelezés be van állítva).

Az adatbázis

Minden az op PostgreSQL sémában él:

TáblaMit tartalmaz
cl_configa konfiguráció (kulcs, érték, típus)
tbl_usera felhasználók: profil, jelszó-hash, jelzők, számlálók és a gyorsítótárazott jogosultságok
tbl_groupa csoportok
tbl_user_groupmelyik felhasználó melyik csoporthoz tartozik
tbl_sessiona felhasználók munkamenetei a portálon (eszköz, cím, lejárat)
tbl_appaz alkalmazások: cím, titkok, jelzők és engedélyezett címek
tbl_app_permissionaz egyes alkalmazások által deklarált jogosultságok
tbl_group_permissionmilyen jogosultságokat (vagy csak milyen alkalmazásokat) ad meg az egyes csoport
tbl_app_sessionaz alkalmazások indítási munkamenetei és a levezetett tokenjeik
tbl_user_appfelhasználónként és alkalmazásonként: az értesítési hivatkozások és az, hogy elfogadják-e az értesítéseket
tbl_notificationaz értesítések
tbl_visitora napi látogatói statisztikák
tbl_feedbacka visszajelzések, amelyeket a felhasználók a portálról küldenek

A tárolóban lévő dátumozott database-2023-09-15.sql, database-2024-03-21.sql, database-2024-10-22.sql és database-2024-10-30.sql fájlok a séma időbeli változásai, a database.sql pedig a teljes szkript, amelyet az első indítás futtat. Ezt a sémát ugyanúgy mentsd, mint bármely más PostgreSQL adatbázist.