Setările Flow, fișierul config și folderele
Fișierul config
Fișierul config din rădăcina Flow conține opțiunile aplicației. Cele care contează:
| Linia | Semnificația |
|---|---|
name | numele afișat de aplicație (poate fi schimbat în setări) |
$api : /fapi/ | adresa API-ului JSON |
flowstream_worker : fork | fiecare FlowStream rulează în propriul proces |
$proxytimeout : 120 | secundele pe care le poate lua un flux pentru a răspunde la o cerere HTTP |
cookie, cookie_secret | generate la prima pornire și păstrate în databases/config.json |
Alte opțiuni sunt citite când există: directory (folderul fluxurilor; implicit este flowstream/ lângă aplicație), flowstream_memory (o limită implicită de memorie pentru fluxurile noi), flowstream_sandbox și flowstream_asfiles (sunt transmise fiecărui flux), components și templates (primele valori ale cataloagelor) și backup.
Setările din aplicație
Super-administratorul deschide setările și găsește:
- name al instalației;
- components și components2: adresa catalogului de componente (un fișier
db.json, implicithttps://cdn.totaljs.com/flowstream/webcomponents/db.json) și un al doilea catalog opțional, ca să poți oferi propriile componente alături de cele oficiale; - templates: catalogul de șabloane de fluxuri (implicit
https://cdn.totaljs.com/flowstream/templates/db.json); - env:
dev,testsauprod. Fluxurile îl citesc, iar schimbarea lui le repornește pe toate, unul câte unul; - backup: fiecare salvare a fluxurilor redenumește
database.jsonanterior într-un fișier cu data și minutul,database_yyyyMMddHHmm.bk; - token: token-ul aleatoriu pentru
/private/(vezi API-ul); - darkmode și notify;
- op_reqtoken și op_restoken: token-urile unui OpenPlatform; când ambele sunt setate, oamenii se autentifică cu acel OpenPlatform.
Pluginurile pot adăuga propriile setări în același formular. Depozitul include unul, Bookmarks, o listă de componente salvate pe care o pot folosi persoanele cu permisiunea bookmarks.
Variabile
Fiecare flux are propriile variabile și există un set de variabile globale; ambele se editează în editor sau cu Variables|read și Variables|save. O componentă le citește ca să nu pună adrese și chei în design, iar o schimbare ajunge imediat la fluxurile care rulează.
Componente locale: --components--
Folderul --components-- din depozit conține câteva componente care vin odată cu aplicația: checkfreespace, checklog, checkpg, checkurl, console și print. Catalogul oficial este mult mai mare, vezi depozitul de componente.
Extensii
O extensie adaugă ceva în editorul fiecărui flux. Copiază un fișier .html în folderul extensions/ (depozitul îl documentează în --extensions--/ cu un exemplu test.html), iar Flow îl încarcă pentru fiecare flux: partea dintre <script total> și </script> rulează cu fluxul, iar restul fișierului este adăugat în editor.
Mediul unui flux
La pornirea fiecărui flux, Flow îi dă folderul în care își păstrează fișierele (directory), variabilele globale, env al instalației, limita de memorie și încărcătorul de extensii (extensions.js). Un flux care cade este repornit de Flow, iar statisticile sale (mesaje, în așteptare, erori, memorie și id-ul procesului) sunt returnate de Streams.