ForgeFlow
nl

Flow

Flow-instellingen, het bestand config en de mappen

Flow · flow@11.1 flowsettingsconfigextensionsenv

Het bestand config

Het bestand config in de hoofdmap van Flow bevat de opties van de toepassing. De belangrijkste:

RegelBetekenis
namede naam die de toepassing toont (te wijzigen in de instellingen)
$api : /fapi/het adres van de JSON-API
flowstream_worker : forkelke FlowStream draait in een eigen proces
$proxytimeout : 120seconden die een stream mag nemen om een HTTP-verzoek te beantwoorden
cookie, cookie_secretgegenereerd 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, standaard https://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, test of prod. De streams lezen het en wijzigen herstart ze allemaal een voor een;
  • backup: elke keer dat de streams worden opgeslagen, wordt de vorige database.json hernoemd 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.