6.3. Parser

6.3.1. Wstęp

Moduł parser jest oparty na skryptowym języku T-Script, którego głównym zadaniem jest generowanie plików tekstowych. Może być używany do przetwarzania szablonów z danymi pobieranymi z różnych źródeł np. baz SQL lub plików tekstowych. W naszym przypadku treść skryptu (szablon) jest przechowywany w bazie danych, dlatego istnieje możliwość jego edycji poprzez LMS-UI. W przyszłości moduł parser może zastąpić większość modułów demona.

Przed kompilacją modułu upewnij się, że posiadasz w systemie pakiety bison (co najmniej w wersji 1.875) oraz flex.

6.3.2. Konfiguracja

Parser posiada następujące opcje:

6.3.3. Syntax

Składnia języka T-Script jest podobna do składni innych popularnych języków takich jak C czy JavaScript, ale dokonano pewnych zmian mających na celu ułatwienie tworzenia szablonów. Wszystkie podane polecenia powinny być zapisywane wewnątrz klamer { }.

Wyrażenia:

Podstawowe polecenia:

Podstawowe funkcje:

Rozszerzenia:

6.3.4. Przykładowe skrypty

Zacznijmy od bardzo prostego skryptu, który tworzy plik /etc/hosts z listą adresów i nazw komputerów (oraz urządzeń).

Przykład 6-1. Parser: Tworzenie pliku /etc/hosts

{result = SELECT name, inet_ntoa(ipaddr) AS ip FROM nodes}\
127.0.0.1    localhost
{for (r=0; r<number(result); r++)}\
{result[r].name}\t{result[r].ip}
{/for}\