Ustawienia Flow, plik config i foldery
Plik config
Plik config w katalogu głównym Flow zawiera opcje aplikacji. Te, które mają znaczenie:
| Wiersz | Znaczenie |
|---|---|
name | nazwa wyświetlana przez aplikację (można ją zmienić w ustawieniach) |
$api : /fapi/ | adres API JSON |
flowstream_worker : fork | każdy FlowStream działa we własnym procesie |
$proxytimeout : 120 | sekundy, jakie przepływ może zająć na odpowiedź na żądanie HTTP |
cookie, cookie_secret | generowane przy pierwszym uruchomieniu i zapisane w databases/config.json |
Inne opcje są odczytywane, gdy istnieją: directory (folder przepływów; domyślnie flowstream/ obok aplikacji), flowstream_memory (domyślny limit pamięci dla nowych przepływów), flowstream_sandbox i flowstream_asfiles (przekazywane każdemu przepływowi), components i templates (pierwsze wartości katalogów) oraz backup.
Ustawienia w aplikacji
Superadministrator otwiera ustawienia i znajduje:
- name instalacji;
- components i components2: adres katalogu komponentów (plik
db.json, domyślniehttps://cdn.totaljs.com/flowstream/webcomponents/db.json) oraz opcjonalny drugi katalog, abyś mógł oferować własne komponenty obok oficjalnych; - templates: katalog szablonów przepływów (domyślnie
https://cdn.totaljs.com/flowstream/templates/db.json); - env:
dev,testlubprod. Przepływy go odczytują, a jego zmiana restartuje je wszystkie po kolei; - backup: każdy zapis przepływów zmienia nazwę poprzedniego
database.jsonna plik z datą i minutą,database_yyyyMMddHHmm.bk; - token: losowy token dla
/private/(zobacz API); - darkmode i notify;
- op_reqtoken i op_restoken: tokeny OpenPlatform; gdy ustawione są oba, ludzie logują się przez ten OpenPlatform.
Wtyczki mogą dodawać własne ustawienia do tego samego formularza. Repozytorium zawiera jedną, Bookmarks, listę zapisanych komponentów, z której mogą korzystać osoby z uprawnieniem bookmarks.
Zmienne
Każdy przepływ ma własne zmienne i istnieje zestaw zmiennych globalnych; oba edytuje się w edytorze lub przez Variables|read i Variables|save. Komponent je odczytuje, aby nie umieszczać adresów i kluczy w projekcie, a zmiana od razu trafia do działających przepływów.
Komponenty lokalne: --components--
Folder --components-- w repozytorium zawiera kilka komponentów dostarczanych z aplikacją: checkfreespace, checklog, checkpg, checkurl, console i print. Oficjalny katalog jest znacznie większy, zobacz repozytorium komponentów.
Rozszerzenia
Rozszerzenie dodaje coś do edytora każdego przepływu. Skopiuj plik .html do folderu extensions/ (repozytorium opisuje to w --extensions--/ z przykładem test.html), a Flow wczyta go dla każdego przepływu: część między <script total> i </script> działa razem z przepływem, a reszta pliku jest dodawana do edytora.
Środowisko przepływu
Przy starcie każdego przepływu Flow daje mu folder, w którym przechowuje jego pliki (directory), zmienne globalne, env instalacji, limit pamięci i program ładujący rozszerzenia (extensions.js). Przepływ, który się zawiesi, jest restartowany przez Flow, a jego statystyki (wiadomości, oczekujące, błędy, pamięć i identyfikator procesu) zwraca Streams.