Hi Leute!

Erst mal ein riesen LOB an MiThoTyN, echt total super das Programm!

Ich habe jetzt mein alte *.bat Datei umgeschrieben für IBSS und es funktioniert auch alles super. Ich denke, es könnte auch andere hier interessieren. Alarmiert wird bei uns Digital. In FMS32-Pro habe ich die Option "Pocsag Kennung umfasst RIC und Funktion" aktiviert. Dann habe ich unter Pocsag Empfänger die RICs mit den dazugehörigen Daten eingetragen. Die RICs wo keine Aktion ausgeführt wird, habe ich einfach nur mit der Funktion 1 eingetragen. Die RICs wo eine Aktion ausgeführt werden soll, habe ich mit allen 4 Funktionen eingetragen. Bei Aktion habe ich für jede Funktion der RIC folgendes eingetragen: C:\Funk\SMS\IBSS.bat %1 %2 "%3"
Wichtig dabei ist das der Ausdruck %3 in Anführungszeichen steht.

Hier nun meine IBSS.bat:


xxxxxxxxxxxxxxxxxxx

@echo off

REM ======================

REM '%1 übergibt die RIC
REM '%2 übergibt die Funktion
REM '%3 übergibt den Alarmtext

REM 'Setzt die RIC in einen Text um
set RIC=unbekannte_RIC_%1
if %1 == 1234567 set RIC=98-01
if %1 == 7654321 set RIC=97-01
if %1 == 0112112 set RIC=96-01

REM 'Setzt die Funktion in einen Text um
if %2 == 1 set Funkt=ALARM
if %2 == 2 set Funkt=Einsatz
if %2 == 3 set Funkt=Sonst.
if %2 == 4 set Funkt=Probe

REM ======================

REM 'Setzt die RIC in einen Text um, mit Leerzeichen
REM 'um keine Verschiebung in der LOG Datei zu haben
set RICC=unbekannte_RIC_%1
if %1 == 1234567 set RICC=98-01
if %1 == 7654321 set RICC=97-01
if %1 == 0112112 set RICC=96-01

REM 'Setzt die Funktion in einen Text um, mit Leerzeichen
if %2 == 1 set Funktt=ALARM
if %2 == 2 set Funktt=Einsatz
if %2 == 3 set Funktt=Sonst.
if %2 == 4 set Funktt=Probe

REM 'Schreib eine LOG Datei mit dem Alarm
echo %date% %time% - %Funktt% %RICC% %1 %2 %3 >>c:\funk\log\ALARM.txt

REM ======================

REM 'Startet das Programm CLEMAIL zum verschicken einer E-Mail
start d:\clemail\clemail.exe -to muster.mann@xxx.de -from mann.muster@xxy.de -smtpserver smtp.xxy.de -popserver pop.xxy.de -popuser mann.muster@xxy.de -poppass 123456 -subject "%Funkt%_%RIC%_%~3" -body "%Funkt%_ELW_%RIC%_%1_%~3"

REM ======================

if %1 == 1234567 goto recsms

exit

:recsms

REM ======================

REM 'ausschließen das eine SMS mit leerem Alarmtext
REM 'gesendet wird!
if %3 == "" goto leer

REM ======================

REM 'Ruft IBSS auf
if exist "c:\funk\log\sms.tmp" goto leer
echo temp > "c:\funk\log\sms.tmp"
c:\funk\ibss\ibss.exe /C:config.ibss /N: {datumlang} {zeitlang} - "%Funkt%_%RIC%_%~3" /E:xxxxxxxxxx
del "c:\funk\log\sms.tmp"

REM ======================

:leer

REM 'Startet die Aufnahme rec.bat
if exist "c:\funk\log\rec.tmp" goto recende
echo temp > "c:\funk\log\rec.tmp"
c:\funk\recallpr\recallpro.exe

REM 'Schreib eine STATUS Datei mit dem Alarm
echo %date% %time% - %Funktt% %RICC% %1 %2 = AUFNAHME GESTARTET >>c:\funk\log\STATUS.txt

del "c:\funk\log\rec.tmp"

:recende

exit

REM ======================

xxxxxxxxxxxxxxxxxxx

Das ist nun meine Datei. Ich lasse mir für alle drei RIC und jede Funktion eine E-Mail schicken, und nur für die erste RIC wird eine SMS geschickt und die Aufnahme gestartet. Richtig im Betrieb testen konnte ich sie noch nicht, da die Fahrzeuge für die ich das haben möchte, noch nicht alarmiert wurden. Habe es allerdings mit eine test.bat getestet, wo drin steht:

xxxxxxxxxxxxxxxxxxx

@echo off

c:
cd \funk\sms
call ibss.bat 1234567 4 "Pobealarm"
cd\

xxxxxxxxxxxxxxxxxxx

So sollten die Daten auch von FMS32-Pro übergeben werden.

In der config.ibss steht folgendes:

xxxxxxxxxxxxxxxxxxx

/U: user
/P: pw
/A: ALARM
/T: 2
/OF: textfilter.ibss

xxxxxxxxxxxxxxxxxxx

Aber ich habe dann gleich noch eine Frage zu folgendem Absatz:

xxxxxxxxxxxxxxxxxxx

REM 'Ruft IBSS auf
if exist "c:\funk\log\sms.tmp" goto leer
echo temp > "c:\funk\log\sms.tmp"
c:\funk\ibss\ibss.exe /C:config.ibss /N: {datumlang} {zeitlang} - "%Funkt%_%RIC%_%~3" /E:xxxxxxxxxx
del "c:\funk\log\sms.tmp"

REM ======================

:leer

REM 'Startet die Aufnahme rec.bat
if exist "c:\funk\log\rec.tmp" goto recende
echo temp > "c:\funk\log\rec.tmp"
c:\funk\recallpr\recallpro.exe

REM 'Schreib eine STATUS Datei mit dem Alarm
echo %date% %time% - %Funktt% %RICC% %1 %2 = AUFNAHME GESTARTET >>c:\funk\log\STATUS.txt

del "c:\funk\log\rec.tmp"

:recende

exit

xxxxxxxxxxxxxxxxxxx

Ich habe hier das mit der tmp Datei eingebaut, damit nicht 2 SMS geschickt werden bzw. mein Aufnahmeprogramm nicht 2mal gestartet wird. Das mit der Aufnahme passt auch alles, die rec.tmp wird erst gelöscht, wenn ich mein Aufnahme Programm schließe. Allerdings bekomme ich trotzdem weiterhin 2 SMS, weil die sms.tmp zu schnell wieder verschwunden ist. Wie kann ich das machen, das die sms.tmp z.b. 10sec bestehen bleibt, und erst dann gelöscht wird? Kann mir da jemand helfen?

Danke schon mal

Gruß

Daniel