ForgeFlow
pl

Flow

Czym jest Flow: wizualna automatyzacja i IoT z FlowStreamami

Flow · flow@11.1 flowflowstreamautomationiotvisual

Flow (totaljs/flow, wersja 11.1 w chwili pisania) to główna aplikacja rodziny Total.js do programowania wizualnego. Rysujesz diagram w przeglądarce: każde pole to komponent, linie między nimi niosą wiadomości, a diagram to FlowStream. Flow przechowuje wiele FlowStreamów, uruchamia każdy z nich i daje edytor, monitoring oraz API do zarządzania nimi.

To aplikacja Total.js 5 na licencji MIT, która nie potrzebuje bazy danych: wszystko znajduje się w dwóch folderach aplikacji (zobacz instalację i pierwsze uruchomienie).

Co dostajesz

  • Edytor wizualny w przeglądarce (trasa /designer/) z biblioteką komponentów, readme każdego komponentu, konsolą, zmiennymi przepływu i trybem ciemnym.
  • Wiele niezależnych FlowStreamów w jednej instalacji, każdy z nazwą, ikoną, kolorem, grupą, autorem, wersją i notatkami. Domyślnie każdy przepływ działa we własnym procesie Node.js (flowstream_worker: fork w pliku config), więc przepływ, który zawiedzie, nie pociąga za sobą pozostałych, a Flow go restartuje.
  • Komponenty jako zwykłe pliki. Komponent to jeden plik HTML z częścią Node.js, formularzem ustawień i wyglądem (zobacz napisz komponent). Oficjalnym katalogiem jest repozytorium flowstreamcomponents.
  • Wejścia do świata zewnętrznego: przepływ może publikować trasy HTTP pod własnym proxypath, przyjmować wywołania na /notify/{id}/ i komunikować się przez WebSocket.
  • Import i eksport przepływu jako jednego pliku JSON, pauza, restart, statystyki i kopia zapasowa bazy przepływów.
  • Logowanie wygenerowanym loginem i hasłem albo przez OpenPlatform, gdy instalujesz Flow jako jedną z jego aplikacji, z uprawnieniami Create Flows i Remove Flows.
  • Rozszerzenia: pliki HTML, które kopiujesz do folderu, aby rozszerzyć edytor.

Gdzie pasuje

Flow to narzędzie do łączenia rzeczy bez pisania serwera: odczytać czujnik, co minutę wywołać API, przekształcić wiadomość, zapisać ją, wysłać alert, odpowiedzieć na żądanie HTTP. Ponieważ środowiskiem uruchomieniowym jest FlowStream z Total.js 5, ten sam silnik można osadzić także we własnej aplikacji; Flow to kompletna aplikacja wokół niego.

Rodzina

Flow ma krewnych w innych repozytoriach github.com/totaljs: lesscode, flowstreamdesigner, flowdesigneroffline, flowdesigner i inne. Istnieją jako osobne projekty; ta sekcja dokumentuje tylko aplikację flow i jej komponenty.

Dalej

  1. Instalacja i pierwsze uruchomienie
  2. Zarządzanie FlowStreamami przez API
  3. Ustawienia i pliki
  4. Napisz komponent
  5. Repozytorium komponentów