Dostep bezposredni do systemu polega na wywolywaniu zestawu komend realizujacych elementarne operacje na bazie danych dla danego serwisu. Komendy pozwalaja na zakladanie, usuwanie i zmienianie hierarchii wezlow, dodawanie i usuwanie loginow, oraz pobieranie skryptow.

  • Wszystkie komendy sa dostepne jako skrypty PHP uruchamiane na serwerze Stat.pl.
  • Wezly sa identyfikowane 31-bitowymi dodatnimi liczbami przydzielonymi przez klienta badz wygenerowanymi przez system. Identyfikator 0 oznacza zawsze korzen drzewa.
  • Komendy moga dzialac w trybie sesyjnym, lub samodzielnie. O trybie dzialania decyduje zestaw parametrow przekazanych do komendy. Dla pracy sesyjnej nalezy najpierw wywolac komende OpenSession, a nastepnie zwrocony przez nia identyfikator sesji przekazywac jako argument kolejnym poleceniom. W trybie samodzielnym kazde z polecen przyjmuje nazwe serwisu i jego haslo jako argumenty. Nie mozna przeplatac pracy sesyjnej i samodzielnej.
  • Hasla mozna przesylac zakodowane w md5 lub otwartym tekstem - zaleznie od uzytej nazwy parametru ("pass" dla hasla otwartego, lub "md5pass" dla md5)
  • Odpowiedz serwera sklada sie z wiersza statusu ("OK" lub "ERROR") oraz dodatkowych wierszy z parametrami odpowiedzi. Wiersze oddzielone sa znakami nowej linii (nie zawieraja elementow html)
  • W systemie obowiazuje wymog unikalnosci etykiet wezlow. W razie wystapienia kolizji, etykieta zostanie automatycznie przedluzona o znak "$" i kolejny numer. Koncowka ta nie bedzie widoczna w interfejsie systemu Stat.pl.

    AddNode.php ? [ & sid="session ID" | & site="site name" [ & md5pass="site md5 password" | & pass="site text password" ] ] & parent="parent node ID" & label="node label" & script="[1|0]" [ & id="node ID" [ & forceId="1" ] ]
    Dodaje wezel.
    Jesli etykieta juz wystepuje, zostanie ona zmodyfikowana przez system (przez dodanie '$nn', gdzie 'nn' jest kolejnym numerem wezla z ta sama etykieta). Parametr "script" okresla czy wezel ma byc skryptem, czy tez wezlem zbiorczym. Parametr "id" jest nadawanym przez uzytkownika identyfikatorem wezla - jesli nie wystepuje, identyfikator zostanie przydzielony automatycznie
    Obecnosc parametru "forceId" oznacza, ze w przypadku gdy id jest juz zajety, system ma zwrocic blad, zamiast przydzielac pierwszego wolnego identyfikatora (reakcja domyslna).
    Wynik:
    OK
    "node ID" - z parametru "id" lub nadany przez system
    "jscript string" - jesli dodano wezel zbiorczy, ma wartosc "-"
    "fixed label" - na ogol ta sama etykieta co w argumencie "label"
    
    ERROR
    "error ID"
    

    CloseSession.php ? sid="session ID"
    Zamyka otwarta sesje.
    Wynik:
    OK
    
    ERROR
    "error ID"
    

    DelNode.php ? [ & sid="session ID" | & site="site name" [ & md5pass="site md5 password" | & pass="site text password" ] ] & node="node ID"
    Usuwa wezel.
    Wynik:
    OK
    
    ERROR
    "error ID"
    

    GetNodesList.php ? Zwraca liste identyfikatorow wezlow.

    Wynik:
    OK
    "id"="parent id","name"
    "id"="parent id","name"
    ...
    
    ERROR
    "error ID"
    

    OpenSession.php ? site="site name" [ & md5pass="site md5 password" | & pass="site text password" ]
    Otwiera sesje.
    Skrypt zwroci identyfikator sesji, ktorego nalezy uzywac przy wszystkich pozostalych komendach. Mozliwa jest tylko jedna otwarta sesja dla kazdego serwisu. (Otwarcie kolejnej sesji zamknie poprzednia)
    Haslo jest haslem administratora serwisu.
    Wynik:
    OK
    "session ID"
    
    ERROR
    "error ID"
    

    RenameNode.php ? [ & sid="session ID" | & site="site name" [ & md5pass="site md5 password" | & pass="site text password" ] ] & node="node ID" & label="new label"
    Zmienia nazwe wezla.
    Skrypt zwroci nowa nazwe (Moze ona nie byc nazwa podana w parametrze, ze wzgledu na automatyczna korekcje poprawnosci)
    Wynik:
    OK
    "fixed label"
    
    ERROR
    "error ID"
    

    Kody bledow
  • "SystemOff" - Przerwa techniczna
  • "Disabled" - Site zablokowany
  • "WrongInterface" - Na site nie mozna logowac sie przez ten interface
  • "NoSite" - Brak site'u
  • "BadPassword" - bledne haslo
  • "NoConnection" - Brak polaczenia z serwerem Stat.pl
  • "NoSession" - Brak sesji / nieprawidlowy identyfikator sesji
  • "InternalError" - Blad wewnetrzny systemu
  • "BadArgs" - Nieprawidlowe argumenty
  • "Error" - Inny blad