====== EVOK ====== ~~NOTOC~~ {{ :en:sw:evok_1_.png?400&nolink |}} ;;# Patron \\ Neuron \\ Gate* \\ Unipi 1.1 \\ Axon ;;# EVOK je naše Open-Source aplikační programovací rozhraní (API), které slouží jako rozhraní fyzických vstupů, výstupů a komunikačních rozhraní. Jde o software, který uživateli umožňuje co nejjednodušší přístup k hardwaru bez toho, aby se uživatel musel zaobírat složitým nízkoúrovňovým programováním. Veškerá dokumentace, návod na instalaci a popis jednotlivých API je k dispozici na [[https://github.com/UniPiTechnology/evok| GitHub.com/UniPitechnology/evok]]. /* [[cs:sw:02-apis:01-evok:installation| Návod na instalaci Evoku ]] */ ===== Základní funkce ===== Evok se skládá ze dvou částí: * Evok API - jádro zajišťující komunikaci mezi jednotlivými API a hardwarem * Evok Web - praktická ukázka využití API v podobě jednoduché webové aplikace sloužící jako uživatelské rozhraní pro všechny vstupy a výstupy jednotky Pro programovou logiku a další operace (integrace dalších komponent systému) je již třeba využít odpovídající externí aplikaci. {{:en:sw:02-evok:evokedited.png?400|Zjednodušené schéma EVOKu}} ===== Podporované protokoly ===== * **REST** * **Bulk JSON** * **REST JSON** * **SOAP (Simple Object Access Protocol)** * **WebSocket** * **JSON-RPC** \\ Jednoduché příklady pomocí curl a JSON: * Získání stavu digitálního vstupu **DI 1_01**: curl --request GET --url http://vlozte-vasi-ip:8080/json/input/1_01 * Sepnutí relé **RO 2_01**: curl --request POST --url http://vlozte-vasi-ip:8080/json/output/2_01 --header 'content-type: application/json' --data '{"value":"1"}' * Rozepnutí relé **RO 2_01**: curl --request POST --url http://vlozte-vasi-ip:8080/json/output/2_01 --header 'content-type: application/json' --data '{"value":"0"}' Kompletní dokumentace a příklad použítí jednotlivých API je k dispozici {{https://kb.unipi.technology/_media/en~:sw:02-evok:evok.html | ZDE}}. ===== Kompletní technické schéma EVOKu ===== {{:en:sw:02-evok:neuron_diagram.png?direct&400|}}