Flow-instellingen, het bestand config en de mappen
Het bestand config
Het bestand config in de hoofdmap van Flow bevat de opties van de toepassing. De belangrijkste:
| Regel | Betekenis |
|---|---|
name | de naam die de toepassing toont (te wijzigen in de instellingen) |
$api : /fapi/ | het adres van de JSON-API |
flowstream_worker : fork | elke FlowStream draait in een eigen proces |
$proxytimeout : 120 | seconden die een stream mag nemen om een HTTP-verzoek te beantwoorden |
cookie, cookie_secret | gegenereerd bij de eerste start en bewaard in databases/config.json |
Andere opties worden gelezen als ze bestaan: directory (de map van de streams; standaard flowstream/ naast de toepassing), flowstream_memory (een standaard geheugenlimiet voor nieuwe streams), flowstream_sandbox en flowstream_asfiles (worden aan elke stream doorgegeven), components en templates (de eerste waarden van de catalogi) en backup.
Instellingen in de toepassing
De superbeheerder opent de instellingen en vindt:
- name van de installatie;
- components en components2: het adres van de catalogus van componenten (een bestand
db.json, standaardhttps://cdn.totaljs.com/flowstream/webcomponents/db.json) en een optionele tweede catalogus, zodat je je eigen componenten naast de officiële kunt aanbieden; - templates: de catalogus van sjablonen voor streams (standaard
https://cdn.totaljs.com/flowstream/templates/db.json); - env:
dev,testofprod. De streams lezen het en wijzigen herstart ze allemaal een voor een; - backup: elke keer dat de streams worden opgeslagen, wordt de vorige
database.jsonhernoemd naar een bestand met datum en minuut,database_yyyyMMddHHmm.bk; - token: het willekeurige token voor
/private/(zie de API); - darkmode en notify;
- op_reqtoken en op_restoken: de tokens van een OpenPlatform; als beide zijn ingesteld, melden mensen zich aan met dat OpenPlatform.
Plugins kunnen eigen instellingen aan hetzelfde formulier toevoegen. De repository bevat er een, Bookmarks, een lijst met opgeslagen componenten die mensen met het recht bookmarks kunnen gebruiken.
Variabelen
Elke stream heeft zijn eigen variabelen en er is een set globale variabelen; beide worden bewerkt in de editor of met Variables|read en Variables|save. Een component leest ze om geen adressen en sleutels in het ontwerp te hoeven zetten, en een wijziging bereikt de draaiende streams meteen.
Lokale componenten: --components--
De map --components-- van de repository bevat een paar componenten die met de toepassing meekomen: checkfreespace, checklog, checkpg, checkurl, console en print. De officiële catalogus is veel groter, zie de componentenrepository.
Extensies
Een extensie voegt iets toe aan de editor van elke stream. Kopieer een .html-bestand naar de map extensions/ (de repository documenteert dit in --extensions--/ met een voorbeeld test.html) en Flow laadt het voor elke stream: het deel tussen <script total> en </script> draait met de stream en de rest van het bestand wordt aan de editor toegevoegd.
De omgeving van een stream
Bij de start van elke stream geeft Flow hem de map waarin hij zijn bestanden bewaart (directory), de globale variabelen, de env van de installatie, zijn geheugenlimiet en de lader van extensies (extensions.js). Een stream die crasht, wordt door Flow herstart, en zijn statistieken (berichten, wachtend, fouten, geheugen en proces-id) worden teruggegeven door Streams.