Timers sind Prozesse, die im GeoShop in einem Intervall aktiviert werden können.
Timers werden in Textfiles definiert und wie folgt abgelegt.
GEOSHOP_DIR\user\timers\<name>.tim
Timers verweisen auf ICS-Konfigurationen, die vom GeoShop aufgerufen werden und die beliebige Aktionen ausführen können. Timers sind optional.
Nachfolgend ein Beispiel für einen Timer .
Definition des Timers.
GEOSHOP_DIR\user\timers\hello.tim
MAP name STRING hello description STRING 'say hello' interval STRING 1:00 delay STRING 0 script STRING \script\timer\hello.cfg service STRING timer state STRING ON appserver_log STRING OFF SMTP_HOST STRING server }
Konfiguration des Timers.
GEOSHOP_DIR\user\script\timer\hello.cfg
!============================================================================
! example timer
!
! sends GeoShop Administrator an email hello
!============================================================================
!============================================================================
! license
!============================================================================
|LICENSE \license\geoshop.lic
!============================================================================
! procedures
!============================================================================
PROCEDURE EMAIL_CREATE
IF OPT.temp_dir . '\email.txt' TEXTFILE.CREATE NOT THEN
ERROR 'unable to create email.txt'
HALT
END_IF => VAR.F
VAR.F 'hello, world !' TEXTFILE.WRITELN
VAR.F TEXTFILE.CLOSE
END_PROCEDURE
!----------------------------------------------------------------------------
PROCEDURE EMAIL_SEND
OPT.bin_dir '\blat.exe' APP
' ' APP OPT.temp_dir APP '\email.txt ' APP
' -t ' APP OPT.ADMIN_EMAIL APP
' -f ' APP OPT.ADMIN_EMAIL APP
' -server ' APP OPT.SMTP_HOST APP
' -s ' APP 'Timer-Example' APP
=> VAR.COMMAND
VAR.COMMAND OSCALL POP
END_PROCEDURE
!============================================================================
! main
!============================================================================
EMAIL_CREATE
EMAIL_SEND
!============================================================================
! end of script
!============================================================================Das Script sendet jede Minute ein EMail an die GeoShop Administrator Email-Adresse.
Timers werden in Textfiles definiert und wie folgt abgelegt.
GEOSHOP_DIR\user\timers\<name>.tim
Folgende Eigenschaften können für Timers konfiguriert werden.
| Beschreibung Definition Product |
| Parameter | req/opt | Typ | Beschreibung |
Tîmer | r | MAP | Map mit Definition Timer. |
Beschreibung Parameter MAP
PRODUCT |
| Parameter | req/opt | Typ | Beschreibung |
name | r | STRING | Name des Timers. |
description | r | STRING | Beschreibung des Timers |
interval | r | STRING |
|
script | r | STRING | Konfiguration für den Timer. |
state | r | STRING | ON|OFF. Ist der Timer aktiviert. |
appserver_log | r | STRING | ON|OFF. Soll der Timer-Aufruf im
appserver.log eingetragen werden. |
<name> | o | <type> | Weitere beliebige Parameter der Typen
STRING|REAL|INT für die Konfiguration des
Timers. Die Parameter stehen in der Konfiguration als Option unter
OPT.<name> zur Verfügung. |