[Document encoding ISO-8859-2]

LinPac - Databáze stanic
------------------------

Databáze je určena pro ukládání všech informací o protistanicích. Veškeré
tyto informace jsou uloženy v souboru "station.data" a lze je měnit buď
přímo editací tohoto souboru, nebo prostřednictvím příkazu Name (popsáno
dále).

1. Formát souboru station.data
------------------------------
Informace o každé stanici jsou uvedeny v odstavci, který začíná značkou
stanice v hranatých závorkách a končí buď hlavičkou popisu jiné stanice nebo
koncem souboru. Každý řádek obsahuje jednu definici ve tvaru

<jméno_položky>=<data>. 

Typický záznam o stanici může tedy vypadat například takto:

[OK0NMA]
NAME=PC/Flexnet Brno
TYPE=FLEXNET
LOC=JN89HE
QRG=144.8125 MHz
SYSNUM=85964

Žádná položka není povinná a uživatel může do databáze přidávat libovolné
další položky podle toho, jaké informace potřebuje uchovávat. Nicméně pro
zachování určitého standardu se pro standardní informace doporučuje používat
těchto jmen:

NAME - textové informace o stanici nebo jméno operátora. Pokud je tato
       položka uvedena v databázi, LinPac zobrazí její obsah při spojení
       s danou stanicí.
LOC  - QRA lokátor stanice. LinPac se opět pokusí zobrazit tuto informaci
       při návázání spojení s protistanicí.
TYPE - Typ protistanice. Pro obvykle používané typy se doporučuje:
       FLEXNET, THENET, FBB, BAYBOX, DIEBOX, TNOS, JNOS, DXC
       a pro uživatelské terminály TERM. Takto udaný typ je ovšem využíván
       pouze uživatelem, lze proto použít libovolné označení typu stanice.
LANG - Jazyk kterým se má komunikovat s protistanicí. Pokud je definován,
       LinPac se při spuštění makra hledat soubor s definicí makra nejprve
       v podadresáři s tímto jménem (macro/<LANG>).
NICKNAME - přezdívka operátora, v češtině lze využít pro uložení pátého
       pádu jména.

Standardní konfigurace LinPacu využívá navíc ještě tyto položky:

TERM - jaký druh terminálu se má použít. Pokud je nastaveno 'ansi',
       LinPac se po spojení s touto stanicí přepne do režimu zobrazování
       barev, což lze využít například u TNOS BBS. Stejný efekt má
       i příkaz TErm (viz prikazy.txt)
ENC  - použité překódování vstupu a výstupu. Při spojení se přepne na
       kódovací tabulku s tímto jménem. To umožňuje komunikovat s každou
       protistanicí v jiném kódování češtiny. Stejný efekt má příkaz
       TRanslate.
RCMD - seznam povolených vzdálených příkazů.
QRG  - frekvence uživatelského vstupu dané stanice, použije se v záznamech
       do staničního deníku.


2. Použití příkazu Name
-----------------------
  Příkaz name lze použít ke změnám v databázi stanic bez nutnosti přímé
editace souboru. Samotný příkaz bez parametrů způsobí vypsání zadaného
jména právě připojené protistanice. Zadáním dalších parametrů se provede
změna údajů o právě připojené stanici. Použitelné parametry:

<jméno>         - změna položky NAME
-l <lokátor>    - změna položky LOC
-t <typ>        -               TYPE
-L <jazyk>      -               LANG
-n <přezdívka>  -               NICKNAME
-s <položka>=<hodnota> - změna jiné položky.

Příkaz Name -i vypíše všechny zadané informace o stanici.
Pokud chceme měnit informace o jiné než právě připojené stanici,
přidáme parametr -c <značka>.
Příklad:
 :NAME -c OK2JBG -n Radku -l JN89HF Radek


3. Využití údajů v databázi
---------------------------
Jak již bylo popsáno, LinPac pro vnitřní potřebu využívá pouze položky se
jmény NAME, LOC a LANG. Využití ostatních položek závisí na uživateli. Při
každém spojení se stanicí, která má záznam v databázi stanice se vytvoří
proměnné se jmény STN_<jméno_položky>, které lze vyhodnotit v makrech.

Příklad použití: chci aby se každá připojená stanice oslovila přezdívkou
operátora a pokud přezdívka není zadána, aby se oslovila jménem operátora.
Při každém připojení protistanice se spouští makro 'ctext.mac' uložené
v adresáři macro. Obsah tohoto souboru v našem případě může vypadat
například takto:

:if %(exist STN_NICKNAME) == 1            ;;pokud existuje STN_NICKNAME
Ahoj %STN_NICKNAME !                      ;;pozdrav přezdívkou
:else                                     ;;jinak (pokud neexistuje)
Ahoj %N !                                 ;;pozdrav jménem
:endif                                    ;;(další příkazy se provedou vždy)
Připojil ses k %Y v %T.                   ;;Sděl svoji značku a čas.

Teď již stačí jen přidat řádek NICKNAME=přezdívka k záznamu každé stanice,
kterou chci oslovovat přezdívkou.
