Co je Flow: vizuální automatizace a IoT s FlowStreamy
Flow (totaljs/flow, verze 11.1 v době psaní) je hlavní aplikace rodiny Total.js pro vizuální programování. V prohlížeči nakreslíte diagram: každý box je komponenta, čáry mezi nimi přenášejí zprávy a diagram je FlowStream. Flow uchovává mnoho FlowStreamů, každý spouští a poskytuje editor, monitorování a API pro jejich správu.
Je to aplikace Total.js 5 s licencí MIT a nepotřebuje databázi: vše je ve dvou složkách aplikace (viz instalace a první spuštění).
Co získáte
- Vizuální editor v prohlížeči (cesta
/designer/) s knihovnou komponent, readme každé komponenty, konzolí, proměnnými toku a tmavým režimem. - Mnoho nezávislých FlowStreamů v jedné instalaci, každý s názvem, ikonou, barvou, skupinou, autorem, verzí a poznámkami. Ve výchozím nastavení každý tok běží ve vlastním procesu Node.js (
flowstream_worker: forkv souboruconfig), takže tok, který selže, nestáhne ostatní s sebou a Flow jej restartuje. - Komponenty jako obyčejné soubory. Komponenta je jeden soubor HTML s částí Node.js, formulářem nastavení a návrhem (viz napsat komponentu). Oficiálním katalogem je repozitář
flowstreamcomponents. - Vstupy do vnějšího světa: tok může publikovat trasy HTTP pod vlastním
proxypath, přijímat volání na/notify/{id}/a komunikovat přes WebSocket. - Import a export toku jako jednoho souboru JSON, pozastavení, restart, statistiky a záloha databáze toků.
- Přihlášení vygenerovaným loginem a heslem, nebo přes OpenPlatform, když Flow nainstalujete jako jednu z jeho aplikací, s oprávněními Create Flows a Remove Flows.
- Rozšíření: soubory HTML, které zkopírujete do složky, aby rozšířily editor.
Kam zapadá
Flow je nástroj pro propojování věcí bez psaní serveru: přečíst senzor, každou minutu zavolat API, transformovat zprávu, uložit ji, poslat upozornění, odpovědět na požadavek HTTP. Protože běhovým prostředím je FlowStream z Total.js 5, stejný engine lze vložit i do vlastní aplikace; Flow je kompletní aplikace kolem něj.
Rodina
Flow má příbuzné v dalších repozitářích github.com/totaljs: lesscode, flowstreamdesigner, flowdesigneroffline, flowdesigner a další. Existují jako samostatné projekty; tato sekce dokumentuje pouze aplikaci flow a její komponenty.