Petr Faltus OK1CFP

Program Autopaket pro Packet rádio

Program Autopaket je určen pro síť packet rádia, používá služby TNC emulace (tfemu.exe) nad systémem Flexnet. Na síti je v postavení server (uživatelé se k programu připojují a obsluhují jej analogicky jako mailbox), ale v určitých situacích je i user (umí se připojit na Baycom mailbox a výsledek příkazu zaslat jako dopis). Veškerý přístup je jen po packet rádiu. Na obrazovce je možno sledovat strohý monitor jeho činností a na stisknutí klávesy reaguje pouze výpisem uživatelů nebo plánovaným ukončením.

Po korektním vstupu do sysop (systémový operátor) režimu jsou k dispozici další příkazy pro ovládání programu. Program potřebuje ke svému spuštění startovací skript autopkt.ini, který musí být umístěn v adresáři FLEXNET na kmeni disku, ze kterého jej chceme spouštět.

Download programu Autopaket pro Packet rádio na CB 27MHz
Download programu Autopaket pro Packet rádio na radioamatérském pásmu
Konstrukce teplotního čidla k programu Autopaket


  • Seznam běžných příkazů programu Autopaket

    
    Obecne pokyny programu:
    -----------------------
    - vetsinu prikazu lze zadat ve zkracene forme (velka pismena v prikazu)
      priklad: `AUtor` lze zadat jen `au`
    - pripojeni k programu je indikovano jednoradkovou hlaskou
    - konec kazdeho prikazu je indikovan promptem `->`
    - program pouziva k jednoznacnemu urceni nekterych dat cisla, tzv. ID
    
    Vyhledavani svatku:
    -------------------
    `SVatek` vypise svatek dnes, zitra a pozitri
             `sv`
    `SVatek [datum]` vyhleda svatek dle data,
                     napr. `sv 4.3.`
    `SVatek [jmeno]` vyhleda svatek dle jmena,
                     napr. `sv Ivo`
    
    Vyhledavani v kalendari:
    ------------------------
    `KALendar` vypise dnesni datum a aktualni cas PC
               `kal`
    `KALendar STari [datum]` vypocita pocet dni od daneho data dodnes,
                             napr. `kal st 5.3.1931`
    `KALendar ROZdil [datum1] [datum2]` vypocita pocet dni mezi 2 daty,
                                        napr. `kal roz 5.3.1931 1.12.2000`
    `KALendar Den [datum]` spocita den v tydnu (Po, Ut,... Ne) k datu,
                           napr. `kal d 17.4.1998`
    `KALendar CASOvani` vypise pocet minut behu programu a nejblizsi volne ID
                        `kal caso`
    
    Vypocet vyrazu:
    ---------------
    `CALculator` vypise nastaveni obloukove miry (Deg, Rad, Gra) a seznam
                 vsech uzivateli nadefinovanych promennych (s hodnotami)
                 `cal`
    `CALculator DEG` nastavi obloukovou miru na stupne (kruh=360 stupnu)
                     `cal deg`
    `CALculator RAD` nastavi obloukovou miru na radiany (kruh=2*3.15159 atd)
                     `cal rad`
    `CALculator GRA` nastavi obloukovou miru na grady (kruh=400 grad)
                     `cal gra`
    `CALculator [vyraz]` vypocte zadany vyraz. Vyhodnocovani tohoto
                         kalkulatoru je podle spravne priority operatoru
                         `cal 3+4*|-3|/(1+sin(45)^2)`
    `CALculator [jmeno]=[vyraz]` vypocte zadany vyraz a ulozi jej soucasne do
                                 promenne zadaneho jmena. To jde pouzit v
                                 dalsich vyrazech. Jmena obsahuji jen pismena
                                 `cal obsah=3.14159*45^2`
    
    Prehled operatoru a funkci s priklady:
    --------------------------------------
    -zakladni operatory
      scitani a odecitani  1.2+2=3.2  3.2-2=1.2  -1+4=3  1+2+3=6  90-20-30=40
      nasobeni a deleni  2*3.5=7  6/2=3  -2*2=-4  3*5*2=30
      deleni modulo  6\3=0  7\3=1  8\3=2  26\5=1  (zbytek po deleni)
      absolutni hodnota  |-3|=3  |3|=3  |10-14|=4
      mocnina  2^3=8  7^2=49  (-3)^2=9  2^2^2=16
      Pythagorova veta  a`b=sqrt(a^2+b^2)  3`4=5  a`b`c=sqrt(a^2+b^2+c^2)
    
    - vypocet procent z celku  50%9=4.5  20%9=1.8  30%1=0.3  1.5%34.6=0.519
    
    - zaokrouhlovani  dol(2.6)=2  dol(-2.6)=-3  hor(2.6)=3  hor(-2.6)=-2
    - sekani cisla  des(2.56)=0.56  des(-120.456)=0.456
    
    - druha odmocnina  sqrt(9)=3  sqrt(3*12)=6
    
    -logaritmus a exponencialni funkce
      prirozene  exp(1)=2.71828  ln(2.71828)=1
      desitkove  exd(2)=100  exd(-3)=0.003  log(100)=2  log(0.01)=-2
    
    -goniometricke funkce
      pri nastaveni DEG: sin(90)=1  cos(0)=1  tg(45)=1  cotg(45)=1
      pri nastaveni RAD: arsin(0)=0  arcos(-1)=3.14159  artg(0)=0
    
    -prevod aktualni obloukove miry do RAD a zpet
      pri nastaveni DEG: rad(180)=3.14159  invrad(3.14159)=180
      pri nastaveni RAD: rad(3.14159)=3.14159  invrad(3.14159)=3.14159
      pri nastaveni RAD: rad(200)=3.14159  invrad(3.14159)=200
    
    - zavorky  3*(2+4*(4+1)-1)=63  (1+3)/(9-7)=2  3*|4-7|=9
    
    -vyjadreni cisla v semilogaritmickem tvaru
      jedna se o mantisu nasobenou deset na exponent 1E+3=1000  15E-2=0.015
    
    Hra LOgik:
    ----------
    `LOgik` spusti novou hru, vymysli nova 5 cislic od 0 do 9. Ukolem hrace je
            tato cisla uhadnout. `lo`
    `LOgik [c1] [c2] [c3] [c4] [c5]` dalsi tah, dalsi pokus o uhadnuti peti cisel,
                                     napr. `lo 4 7 7 3 1`
    Za kazdou cislici je uzivatel ohodnocovan tremi moznymi symboly
     '.' cislo neni v petici vubec, tedy neuhadnuto vubec
     '?' cislo je v petici v jinem sloupci, tedy uhadnuto castecne
     '!' cislo je v tomto sloupci, tedy uhadnuto
    Pravidla byla opravena podle toho, jak to zna vetsina.
    Kazde cislo, pritomno v jinem sloupci, detekuje jeden '?'
    
    Hra TREfa:
    ----------
    `TREfa` spusti novou hru, vymysli nove cislo od 0 do 999
            `tre`
    `TREfa [cislo]` dalsi tah, dalsi pokus o uhadnuti cisla,
                    napr. `tre 456`
    Uzivatel je ohodnocovan, predzvest `moc` znamena odchylku vetsi nez 100.
     'velke cislo', 'male cislo', 'moc velke cislo', 'moc male cislo'
    
    Programovane upozorneni/vzbuzeni:
    ---------------------------------
    `BUDik` vypise nastaveni budiku
            `bud`
    `BUDik [hod] [min] [vzkaz]` zadani pozadavku na upozorneni,
                                napr. `bud 19 30 Zacinaji zpravy v TV`
    V dany cas se program pokusi na uzivatele pripojit, zadat //b a opsat vzkaz.
    Pouzije stejnou cestu (posloupnost nodu), kterou byl uzivatel pripojen. Jako
    kazdy jiny budik, provadi tento buzeni kazdy den, dokud neni zrusen.
    `BUDik Zrus` zruseni nastaveneho budiku
                 `bud z`
    
    Predavani vzkazu mezi uzivateli:
    --------------------------------
    `Talk` vypis nedorucenych vzkazy (vcetne ID) od uzivatele
           `t`
    `Talk [volacka] [vzkaz]` zadani vzkazu uzivateli,
                             napr. `t CZ8XXX Vecer tu nejsem`
    Pokud neni adresat prave nakonekten, je vzkaz uschovan az do jeho pripojeni.
    `Talk Zrus [ID]` zruseni nedoruceneho vzkazu, potrebne ID viz vypis vzkazu,
                     napr. `t z 482`
    `Echo [vzkaz]` umoznuje zopakovani vzkazu,
                   napr. `e //n Autopaket`
    
    Mereni venkovni teploty:
    ------------------------
    `TEPlota` aktualni, maximalni a minimalni venkovni teplota. Hodnoty minima
              a maxima jsou zapomenuty vzdy o pulnoci. Cidlo je umisteno na
              vychodni (chladnejsi) strane, nevysoko nad zemi. `tep`
    `TEPlota ?` vypis teploty doplneny o interni pocet taktu odectu cidla. Ciste
                interni informace, vyplyvajici s navrhu vlastniho merice teploty.
                `tep ?`
    `TEPlota ! [cislo]` prepocet zadaneho poctu taktu cidla pres korekcni
                        charakteristiku. Ciste interni informace,
                        napr. `tep ! 12345`
    
    Nektere zakladni funkce programu:
    ---------------------------------
    `AUtor` autor programu, verze programu
            `au`
    `MEMory` zbyvajici rezervovana volna pamet pro dynamicke datove struktury
             `mem`
    `REport` vysledek posledni kontroly nodu. Ve stanovenem intervalu se program
             kontrolne pripoji na nod, nad kterym je spusten a zkontroluje
             nektere funkce.
             `re`
    `UKonceni` pripadne ukonceni programu, je-li dopredu znamo. Nekdy musi byt
               cele PC restartovano z technickych duvodu.
               `uk`
    `Users` vypis momentalniho poctu pripojenych uzivatelu, jejich kanalu
            `u`
    `Help` vstup do systemu napoved
           `h`
    `Quit` ukonceni pripojeni k programu
           `q`
    
    
  • Seznam sysop příkazů

    
    Prikazy programu autopaket pro sysopa:
    --------------------------------------
    
    `Help` standartni vstup do systemu napoved. U nekterych napoved pribudou
           dalsi prikazy pouze pro sysopa. Z hlavni stranky se lze dostat na
           vsechny ostatni! `h`
    `Help SYSop` stranka helpu s ostatnimi prikazy pro sysopa, ktere nejsou
                 doplnene na standartnich strankach helpu. `h sys`
    
    Doplnene prikazy na standartnich strankach helpu:
    -------------------------------------------------
    `KALendar NAStav [datum] [cas]` nastavi systemove datum a cas PC, pozor na
                                    zpozdeni spojeni pri zadavani.
                                    napr. `kal nas 25.9.2000 12:35:50`
    
    `LOgik UKaz` prehled vysledku a tahu vsech kanalu hry logik
                 `lo uk`
    `TREfa UKaz` prehled vysledku a tahu vsech kanalu hry trefa
                 `tre uk`
    
    `BUDik` vypisuje vsechny nastavene budiky vsech uzivatelu
            `bud`
    `BUDik Zrus [volacka]` zruseni budiku libovolneho uzivatele,
                           napr. `bud z CZ8XXX`
    POZOR, v rezimu sysop NELZE zrusit vlastni budik klasickym prikazem `bud z`,
    je NUTNO byt sam sobe sysopem a zadat i svoji volacku `bud z CZ8YYY`.
    
    `Talk` vypisuje vsechny nedorucene vzkazy vsech uzivatelu (a jejich ID)
           `t`
    `Talk Zrus [ID]` zruseni libovolneho vzkazu (nutno zadat spravne ID),
                     napr. `t z 764`
    
    `UKonceni [minut] [kod]` zadani ukonceni programu (za kolik minut a s jakym
                             navratovym kodem pro DOS), NEKONCIT=30000 minut,
                             PC se navic restartuje pri specialnim navratovem
                             kodu 200.
                             napr. `uk 5 0` (normalni konec za 4 minuty)
                             napr. `uk 0 200` (restart PC hned)
    
    `TEPlota & [t1] [h1]:[m1] [t2] [h2]:[m2]` nastaveni max a min teploty,
                                              poradi pocet taktu interniho cidla,
                                              hodina, minuta. Nejprve maximum.
                                              Potom minimum. A za tim dany cas.
                                              Takty cidla lze zjistit zkusmo
                                              pomoci `TEPlota ! [pokustaktu]`
                                              napr. `tep & 12630 10:12 8952 3:51`
    
    Ostatni sysop prikazy:
    ----------------------
    `ULozeni_dat` zaloha dulezitych promennych a datovych struktur na disk
                  pro pripadny restart. Provadi se automaticky pri ziskani sysop
                  stavu. Kdyz se to polozi, provede se reset a znovu najede
                  dle daneho souboru.
                  `ul`
    
    `Box` parametry pripojovani programu na boxy
          `b`
    `Box [Bo] [Br] [Pok] [sec] [min]` nastaveni pripojovani na box
                                      Pocet pokusu: 1 az 39
                                      Lhuta vterin na kazdy pokus: 1 az 54
                                      Pri neuspechu odlozeni minut: 2 az 119
                                      napr. `b 0 0 2 54 12`
    
    `ZALoz_adresar [adresar]` vytvoreni adresare specifikovane cesty
                              napr. `zal C:\TEMP`
    `VYListuj_adresar [maska]` vypis specifikovaneho adresare na specifikovanou
                               masku souboru. NEZAPOMENOUT NA MASKU, NAPR *.*!
                               napr. `vyl C:\FLEXNET\*.fpr`
    `OKOPirovani_souboru [odkud] [kam]` kopie DOS souboru uvnitr PC, ma vyznam
                                        u RAM disku, kdyz se provozuje. Program
                                        jinak sam (bez moznosti rizeni) muze
                                        hlidat zmeny souboru nodu a vracet na
                                        disketu z RAMdisku
                                        napr. `okop C:\pom.txt A:\pom.txt`
    
    Seznam adres a rozesilani gratulaci:
    ------------------------------------
    `ADResy` vypis vsech pouzitych adres v programu, pripadne s jejich svatky
             a narozeninami. Cislo nzmena pocet pouziti adresy po programu
    `ADResy NOva [adresa] [svat] [naroz]` pridani nove adresy, definice
                                          dat svatku a narozenin, pokud je
                                          znamo jen jedno datum, druhe lze
                                          nahradit nulami.
                                          napr. `adr no CZ8XXX 4.11. 9.5.`
                                          napr. `adr no CZ8XXX 0.0. 2.3.`
    `ADResy JIna [stara] [nova]` zmena adresy pro nektereho cloveka
                                 napr. `adr ji CZ8XXX CZ8YYY`
    `ADResy NAStav [hod]:[min]` nastaveni casu, kdy se kazdy den zkontroluji
                                data svatku a narozenin a pripadne rozeslou
                                gratulace.
                                napr. `adr nas 6:30`
    Zkraceni adresy, nektere pripadu lze zde psat:
    - internetova adresa se predesila zavinacem, napr. `@luke@yo.cz`
    - mobil se predesila zavinacem a procentem, napr. `@%0603123456`
    
    Pravidelne rozesilani vysledku prikazu:
    ---------------------------------------
    `UDalosti` vypis vsech (vcetne ID) naplanovanych udalosti. Takto lze
               nadefinovat rozesilani svatku, kalendare, teploty do paketu,
               do inetu, na mobily.
               `ud`
    `UDalosti [hod] [min] [vol] [prikaz]` zadani nove udalosti. Kazdy den v danou
                                          dobu bude spusteno jednorazove poslani
                                          vysledku prikazu, viz nize. Nove
                                          pouzite adresy se pripisuji do seznamu
                                          adres a lze k tam priradit data, kdy
                                          osoba ma svatek a kdy narozeniny
                                          napr. `ud 19 30 CZ8XXX Teplota`
    `UDalosti Zrus 432` zruseni udalosti (nutno znat ID),
                        napr. `ud z 432`
    Zkraceni adresy, nektere pripadu lze zde psat:
    - internetova adresa se predesila zavinacem, napr. `@luke@yo.cz`
    - mobil se predesila zavinacem a procentem, napr. `@%0603123456`
    
    Jednorazove posilani vysledku prikazu:
    --------------------------------------
    `POSli_mail` vypis fronty (vcetne ID) prikazu k odeslani a stavu konektu
                 na box. Program se pripojuje na nektery box a vysledek prikazu
                 posila jako telo mailu. Konekt je dle parametru prikazu `Box`,
                 dokola se snazi konektit na nektery box, ma je nadefinovany,
                 pokus vzdy trva zadany pocet vterin. Jinak to vzda a zkousi
                 dalsi box dokola. Pokud se dany pocet pokusu nedari, je to
                 odlozeno o nastaveny pocet minut a pak znova a dokola. Po
                 konektu postupne odesila maily a uspesne odeslane umazava. Pri
                 padu spojeni se take zkousi konektit na jiny box dokola. Vsechno
                 je pod nastavenou volackou. Jen pro bcm box a prompt MUSI byt
                 na kazdem boxu nastaven (jeho zacatek) %c@%m!
                 `pos`
    `POSli_mail [vol] [prikaz]` zadani noveho prikazu mailem. Program ve chvili
                                odesilani provede prikaz a jeho vystup bude
                                obsahem mailu. Pokud se ma jednat o vzkaz od
                                sysopa, lze pouzit prikaz echo a dal text.
                                napr. `pos CZ8PLP Svatek Petr`
    `POSli_mail ALL [prikaz]` zadani noveho prikazu mailem vsem adresam z fronty
                              adres.
                              napr. `pos ALL Echo V nedeli bude PC vypnute.`
    `POSli_mail Zrus [ID]` zruseni prispevku s fronty mailu (nutno znat ID),
                           napr. `pos z 291`
    `POSli_mail NAStav [ZbPok] [ZbOd]` nastaveni pokusu o konekt, ktere zbyvaji
                                       a poctu minut, za ktere se bude konekt
                                       zase opakovat,
                                       ZADNEPOKUSY=0 a NEPRIPOJOVAT=30000,
                                       napr. `pos nas 0 30000` (zrusit uplne)
                                       napr. `pos nas 9 0` (ted posilat)
                                       napr. `pos nas 0 22` (potom posilat)
    Zkraceni adresy, nektere pripadu lze zde psat:
    - internetova adresa se predesila zavinacem, napr. `@luke@yo.cz`
    - mobil se predesila zavinacem a procentem, napr. `@%0603123456`
    
    Ziskani sysop pristupu:
    -----------------------
    `SYSop` prikaz umoznuje ziskat/ztratit sysop privilegia. Pri prvnim zavolani
            je uzivateli nabidnuto pet klicu k heslu. Uplne stejne jako u Baycom
            boxu standartniho hesla. Uzivatel se dostava do cekaciho stavu. Pri
            zavolani prikazu ve stavu sysop prikaz toto privilegium zpet odebere.
            `sys`
    `SYSop [mismas]` pouziti v cekacim stavu vraci schovane heslo v dlouhem
                     retezci, uplne stejne jako u Baycom boxu standartniho hesla.
                     napr. `sys nctrvnuiemhkdfmvmdfgdkfjltyiuoerfdkbvdsqertqert`
    
    Priklad vstupu do sysop stavu:
    ------------------------------
    
    heslo je napriklad `libuskabenesova`
                        123456789012345
    
    uzivatel napise `sys`
    program odpovi napr. `11 4 10 2 12` (to jest 11.,4.,10.,2. a 12.znak)
    to jsou z hesla znaky e  u n  i s   (tedy usek retezce eunis)
    
    uzivatel jej schova do dlouheho retezce a ten posle jako parametr prikazu
    `sys rieuqpeorhfhmhrfmpkjfhrfpeunismcxierujhrjhfiogj` (MUSI TAM BYT sys!)
    
    pokud se splete, lze opakovat zase prikazem `sys`
    
    
  • Konfigurace programu Autopaket

    
    Vsechny prikazy konfiguracniho skriptu AutoPkt.ini:
    ---------------------------------------------------
    (prvni tri povinne)
    MyCall - volacka programu, jak se na nej budou konektit ostatni
    MyPwd - sysop heslo do programu
    SecretCall - tajna volacka, ktera bude blokovat rezervovane kanaly,
                 aby je program mohl pouzit pro vlastni konekt
    
    (ostatni nepovinne)
    Node1Call, Node2Call - dva nejblizsi nody, pro majak, aby se posilal pres
                           ne. Druhy nema vyznam bez prvniho
    
    CidloCOM - Seriovy port (COM) pro komunikaci s teplotnim cidlem
    HlidaniSouboru - PC může bootovat z diskety a vytvařet RAMDISK jako C: a odtud vše spouštět
    
    BoxUserCall - pod touto volackou se program bude konektit na box,
                  aby mohl posilat vysledky prikazu dle definic
    Conn1Box, Conn1Path, Conn1Password - prvni box volacka, cesta k nemu a heslo
    Conn2Box, Conn2Path, Conn2Password - druhy box, nema vyznam bez prvniho
    Gate1, Gate2 - brany, aby slo posilat vysledky prikazu i do internetu,
                   druha nema vyznam bez prvni
    
    Soubor je napsan jako skript, kazdy prikaz musi zacinat s novym radkem,
    za nim musi byt alespon jedna mezera a pak jeho hodnota textova nebo cislo.
    Prazdne radky program vynechava, stejne tak radky zacinajici prvnim znakem
    strednikem - komentarem. Hodnoty (napr. cesta nodu) muzou obsahovat jen jednu
    mezeru, pokud tam patri. Zadnou navic.
    
    Vsechna hesla musi obsahovat minimalne 12 znaku.
    Pokud ma fungovat odesilani, je nutno zadat BoxUserCall a alespon
    Conn1Box+Conn1Password, ale pripadne i Conn1Path. Na boxu je nutno
    nastavit heslo a pozadovany prompt, aby program se dokazal nakonektit.
    Z bezpecnostnich duvodu moznost nastaveni bez hesla nebo kratsiho hesla
    nez 12 znaku zakazuji a program bude hlasit chybu nebo nefungovat.
    Pokud to ma umet posilat i do internetu, musi byt zadana alespon Gate1.
    A dana brana musi mit z boxu fungujici forward.
    
    

Petr Faltus OK1CFP 10/7/2001


Poslat e-mail