PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Poc32 Batch-Datei übergibt nicht alias



Muggyhorst
02.01.2012, 19:48
Hallo Zusammen,

nach Nutzung der Suchfunktion die mir nichts gebracht hat und nach einem sehr netten anderen Forenutzer der nun auch keine Lösungm weiss, komme ich nun auf alle zu. Ich habe folgende batchdatei erstellt die am Anfang so aussieht:

-------------------------------------------------------------------------------
chcp 1252

if exist mailinhalt.txt goto ende

if %1==1234567 set alias=Gruppenalarm

echo Am %date% um %time:~0,8% Alarm auf Schleife %1 %2 %3 > c:\emailalarm\mailinhalt.txt
c:\emailalarm\blat.exe -install PCNAME........
-------------------------------------------------------------------------------
Ich möchte das die Batchdatei nachdem Poc32 eine Alarmierung für den Ric 1234567 den von mir festgelegten Alias in der Batchdatei an pushmail übergibt und ich dann auf meinem Smartphone nicht den Ric sehen,sondern halt wie hier als Beispiel zu erkennen ist, der Begriff "Gruppenalarm". Leider funktioniert dies nicht. Ich seh immer nur den Ric.
Was mach ich falsch?

Bitte um eure Mithilfe.

Gruss.

faboi
02.01.2012, 21:28
Dann poste doch bitte mal deinen Aufruf von pushmail! Was übergibst du dort genau?

Muggyhorst
02.01.2012, 22:40
Dann poste doch bitte mal deinen Aufruf von pushmail! Was übergibst du dort genau?

Was meinst du genau? Wie der rest der Batchdatei aussieht?

Hier die Komplette:

----------------------------------------------------------------------------------
chcp 1252

if exist mailinhalt.txt goto ende

if %1==1234567 set alias=Gruppenalarm

echo Am %date% um %time:~0,8% Alarm auf Schleife %1 %2 %3 > c:\emailalarm\mailinhalt.txt
c:\emailalarm\blat.exe -install PCNAME meinemail@mail.de
c:\emailalarm\blat.exe "c:\emailalarm\mailinhalt.txt" -to meins@dopushmail.com -server mail.meins.de -u meinemail@meins.de -pw geheim -server mail.meins.de -u meinemail@meins.de -pw geheim -debug -timestamp -log versandlog.txt -subject "Push Alarmierung" -sf EINSATZINFO
del c:\emailalarm\mailinhalt.txt
wait 120
del mailinhalt.txt
end
-----------------------------------------------------------------------------------

Hier ist ja zu erkennen was ich an pushmail übergebe.
Nämlich: Datum,Ric,Alarmtext und Betreff. (Den Rest hab ich noch nicht wikrlich richtig eingestellt,da bin ich noch nicht) :-)

Brauchst du noch andere Angaben?

faboi
03.01.2012, 10:38
Erstmal hast du die Fehler drin, die hier schon immer in der Datei kursieren! Du hast Parameter doppelt und Parameter falsch belegt.

Dann versuch mal die Konfiguration wie im Anhang zu benutzen. ist m.M. einfacher und hat mehr Funktionen als Blat.

Wichtig: es muss alles in einem Verzeichnis sein. Im oberen Teil der mail.bat können Einstellungen gemacht werden.
Danach können wir uns über Änderungen unterhalten. Schau mal das das zum laufen bringst.

Muggyhorst
03.01.2012, 11:11
Erstmal hast du die Fehler drin, die hier schon immer in der Datei kursieren! Du hast Parameter doppelt und Parameter falsch belegt.

Dann versuch mal die Konfiguration wie im Anhang zu benutzen. ist m.M. einfacher und hat mehr Funktionen als Blat.

Wichtig: es muss alles in einem Verzeichnis sein. Im oberen Teil der mail.bat können Einstellungen gemacht werden.
Danach können wir uns über Änderungen unterhalten. Schau mal das das zum laufen bringst.

Also mit dem doppelten hast du recht das hatte ich schon verbessert. Doppelt Email etc.

Ich guck mir deine datei an und geb Rückinfo.

Gruss.

Muggyhorst
03.01.2012, 11:42
Erstmal hast du die Fehler drin, die hier schon immer in der Datei kursieren! Du hast Parameter doppelt und Parameter falsch belegt.

Dann versuch mal die Konfiguration wie im Anhang zu benutzen. ist m.M. einfacher und hat mehr Funktionen als Blat.

Wichtig: es muss alles in einem Verzeichnis sein. Im oberen Teil der mail.bat können Einstellungen gemacht werden.
Danach können wir uns über Änderungen unterhalten. Schau mal das das zum laufen bringst.

So,

Datei läuft. :-) Super Ding. Danke dir! Kann ich alle Rics als if nun in der Datei runterschreiben?

Dann sehe ich das du bei der Übergabe im Bereich Alarminfo und Uhrzeit zweimal ">>" benutzt hast. Kann ich das abändern auf ">"? Weil ich nicht will das Nachrichten mehrfach in einem Push angezeigt werden. Ich hatte das bei meiner Batchdatei nämlich entfernt und dann hatte ich dieses Problem quit.

Was muss ich sonst noch wissen zu deiner Batch?

Gruss.

faboi
03.01.2012, 13:05
Super!

Ja, kannst nun die Ric's als if-Statement hinterlegen.

Das ">>" kannst du schon ändern, wird aber nicht viel bringen, da normal keine doppelten Alarmierungen in einer Datei haben solltest. Dies wird ja mit der Abfrage, ob body.txt existiert schon erledigt. Ist nur drin, da ich schon für mehrere Leute hier verschiedene Scripte geschrieben habe...
Sonst musst du eigentlich nichts wissen, wenn alles so für dich passt.
Mit "%alias%" kannst du halt den Text dann einbinden, aber das steht ja alles drin.

Muggyhorst
03.01.2012, 20:52
Super!

Ja, kannst nun die Ric's als if-Statement hinterlegen.

Das ">>" kannst du schon ändern, wird aber nicht viel bringen, da normal keine doppelten Alarmierungen in einer Datei haben solltest. Dies wird ja mit der Abfrage, ob body.txt existiert schon erledigt. Ist nur drin, da ich schon für mehrere Leute hier verschiedene Scripte geschrieben habe...
Sonst musst du eigentlich nichts wissen, wenn alles so für dich passt.
Mit "%alias%" kannst du halt den Text dann einbinden, aber das steht ja alles drin.

HI,

ich nochmal...

ich habe jetzt über den tag nichts geändert und plötzlich gehts nicht mehr. Jetzt am PC hab ich gesehen das sich zwar wie ein DOS fenster öffnet und anfängt die Batch Datei abzuarbeiten aber dieses fenster geht sofort wieder zu und nichts passiert.

Was ist da los?

feuerwehrspritze112
03.01.2012, 21:41
ggf. besteht die alte body.txt datei noch vom letzten einsatz?

schaue mal nach, ob diese datei noch existiert... dann "startet" die batch auch nicht, wenn er dieses abarbeitet >> if exist "body.txt" goto end....

Muggyhorst
03.01.2012, 21:59
ggf. besteht die alte body.txt datei noch vom letzten einsatz?

schaue mal nach, ob diese datei noch existiert... dann "startet" die batch auch nicht, wenn er dieses abarbeitet >> if exist "body.txt" goto end....


Jup hast recht! Hatte ich dann auch entdeckt. :-)

Muggyhorst
05.01.2012, 12:02
Läuft immer noch alles Super. Aber wohl zu gut! Wenn Poc32 eine Schleife aufmacht macht die Batchdatei ihre Arbeit, nur leider zu oft. Ab und an kommt es nämlich vor das die Nachricht 3-10 mal gesendet wird, obwohl poc32 die Nachricht nur einmal bzw. zweimal bekommen hat. Wie Krieg ich das abgestellt?

Gruss.

faboi
06.01.2012, 14:08
Also nach Analyse deiner Log wird die Batch mehrmals aufgerufen. Folglich muss es an Poc32 bzw. eben dem Aufruf liegen, da die Datei sich nicht selbst aufrufen kann. Komisch ist dies auch, da die Aufrufe in einer Zeitspanne von bis zu 10 Minuten stattfinden.
Eine Möglichkeit ist die Wartezeit der Batch zu erhöhen:

Ziemlich unten in der mail.bat
--> Wartezeit in Sekunden bis die body.txt gelöscht wird:


%dir%wait.exe 15 /O


Diese einfach mal erhöhen!

Wird die Wartezeit überhaupt aufgerufen? Zählt die Zeit im Consolenfenster runter?

Muggyhorst
06.01.2012, 14:25
Also nach Analyse deiner Log wird die Batch mehrmals aufgerufen. Folglich muss es an Poc32 bzw. eben dem Aufruf liegen, da die Datei sich nicht selbst aufrufen kann. Komisch ist dies auch, da die Aufrufe in einer Zeitspanne von bis zu 10 Minuten stattfinden.
Eine Möglichkeit ist die Wartezeit der Batch zu erhöhen:

Ziemlich unten in der mail.bat
--> Wartezeit in Sekunden bis die body.txt gelöscht wird:


%dir%wait.exe 15 /O


Diese einfach mal erhöhen!

Wird die Wartezeit überhaupt aufgerufen? Zählt die Zeit im Consolenfenster runter?

Hi,

ja die Wartezeit wird angezeigt. Das DOS Fenster schließt dann.

faboi
06.01.2012, 20:45
Somit kannst du nur die Wartezeit erhöhen. Oder eben den Fehler in Poc32 suchen.
Hast du in Poc32 den Aufruf nur über die "Allgemeine Einstellung --> Filter" gemacht?
Evtl. auch den Aufruf in der aliases.txt bzw. Doppelklick auf einen Listeneintrag bei Poc32 auf das Icon links?

Muggyhorst
06.01.2012, 21:55
Somit kannst du nur die Wartezeit erhöhen. Oder eben den Fehler in Poc32 suchen.
Hast du in Poc32 den Aufruf nur über die "Allgemeine Einstellung --> Filter" gemacht?
Evtl. auch den Aufruf in der aliases.txt bzw. Doppelklick auf einen Listeneintrag bei Poc32 auf das Icon links?

Ich hatte damals mal ein zwei Icons geklickt.aber dies sind ja eigentlich raus. Ich hab auch nur einen bestimmten Ric damals angeklickt, der In der regulären Auslesung gar nicht mit bei ist. Oder muss ich was bestimmtes löschen?

Hab das Programm auch mal neu installiert,wobei mir aufgefallen ist, das irgendwo noch Dateien gespeichert sind, weil die Einstellungen noch gleich sind beim Neustart.

faboi
07.01.2012, 14:42
Die Einstellungen sind bei POC32 teilweise in der Registry und im Installationsverzeichnis liegt eine aliases.txt. Die kannst mal anschauen, ob da was drin steht mit einem Dateiaufruf.
Diese txt-Datei ist aber nur aktuell bzw. übernimmt Änderungen wenn POC32 geschlossen ist.
Du kannst sie mir auch schicken...

Muggyhorst
17.01.2012, 09:59
Die Einstellungen sind bei POC32 teilweise in der Registry und im Installationsverzeichnis liegt eine aliases.txt. Die kannst mal anschauen, ob da was drin steht mit einem Dateiaufruf.
Diese txt-Datei ist aber nur aktuell bzw. übernimmt Änderungen wenn POC32 geschlossen ist.
Du kannst sie mir auch schicken...

Ich bin bis heute immer noch nicht weiter mit dem bekannten Problem. Poc32 übergibt der Batchdatei immer noch fleissig Daten wobei ich die Wartezeit in der Batch auf 120 Sekunden gestellt habe.

Meine letzte Hoffnung wäre noch Poc 32 komplett zu löschen inkl registry. Aber wo finde ich die registry? Ich sehe das als einzigste Lösung, da ich damals beim Ausprobieren die Aliases manuel durch anklicken bearbeitet habe. Im aliases.txt ist nichts mehr drinne.

Starmelder
17.01.2012, 16:27
Das Script gefällt mir sehr gut. Sowas suche ich schon seit Jahren. Um jetzt 2 eMail-Empfänger oder mehr zu haben, muss ich die dann lediglich durch ein Semikolon trennen?

z.B.:

set empfaenger="email1[at]blub.de; email2[at]blub.de"

Oder muss ich 2 batch-Dateien aufrufen?

faboi
17.01.2012, 21:20
Du kannst einfach durch Semikolon oder Komma trennen. Schöner ist natürlich


Max Muster <max@muster.de>;Max Muster <max@muster.de>

BF01
12.05.2012, 20:24
Mahlzeit Leute,

kann ich eigentlich auch einfach nur eine Zeile in diese "alarm.bat" bauen, daß mir zu dem jeweiligen RIC der korrekte Aliasname aus der "alias.txt" geholt wird und mit in der mail drin steht?
Grüße in die Runde!

Muggyhorst
12.05.2012, 22:16
Mahlzeit Leute,

kann ich eigentlich auch einfach nur eine Zeile in diese "alarm.bat" bauen, daß mir zu dem jeweiligen RIC der korrekte Aliasname aus der "alias.txt" geholt wird und mit in der mail drin steht?
Grüße in die Runde!

Ja kannst du. Gruß.

BF01
13.05.2012, 11:42
hmmm.... weil alles was mir die Suche bis jetzt ausgespuckt hat darauf hinausläuft, daß ich in der batch jedem ric seinen Aliasnamen zuordnen müßte, ist ´ne ganze Menge...
Und was ich sonst noch so gefunden habe - da geht es immer um fms32. Ich nutze nur das poc32

Grüße! BF01

BF01
15.05.2012, 16:57
Hallo nochmal,

meine batch-Datei sieht einfach nur so aus:

if exist mailinhalt.txt goto ende
echo %* >> C:\emailalarm\blat302\full\mailinhalt.txt
C:\emailalarm\blat302\full\blat.exe -install PCNAME meinemail@gmx.de
C:\emailalarm\blat302\full\blat.exe "C:\emailalarm\blat302\full\mailinhalt.txt" -to meinemail@gmx.de -server mail.gmx.net -u meinemail@gmx.de -pw Passwort -debug -timestamp -log versandlog.txt -subject "Alarmierung" -sf mailinhalt.txt
del C:\emailalarm\blat302\full\mailinhalt.txt
wait 120
end

Kann ich hier den Befehl zur übernahme der Aliases aus aliases.txt anstelle der RIC-Nummer irgendwie unterbringen?


Grüße! BF01

proffirefighter65
17.06.2012, 14:42
Also ich versuche auch seit etwa 6 Wochen, dass meine POC32 mir Mails aufs Smartphone schickt. Alles ohne Erfolg :-( Nutze auch die zip.Datei Email die hier auf der 1. Seite angeboten wird.
Aber es tut sich absolut nichts.
Die Dateien (sendEmail.exe, Test, wait.exe und mail.bat)
aus der Email.zip sind allesamt im POC32 Ordner vorhanden, also dort wo auch die Aliases.txt drin stehen

Poste hier mal meine batch.datei...vl. sieht ja jemand einen Fehler...
Möchte übrigens, dass jede Auslösung übergeben wird, die auf dem POC 32 ankommt


rem ######## EINSTELLUNGEN ########

rem --- Pfad zum Programm ---
set dir=C:\Programme\BayCom\POC32

rem --- Feuerwehrname ---
set name="Feuerwehr"

rem --- Email-Einstellungen ---
set absender="Mein Name <xxx@web.de>"
set empfaenger="Mein Name <xxx@web.de>"
set smtp-server=smtp.web.de
set user=xxx@web.de
set passwort=xxxxx

rem ######## EINSTELLUNGEN ENDE ########

if exist %dir%body.txt goto ende

echo Email wird generiert ...
echo %name% - Alarminfo >> %dir%body.txt
echo. >> %dir%body.txt
echo Datum: %date% >> %dir%body.txt
echo Uhrzeit: %time:~0,8% >> %dir%body.txt
echo. >> %dir%body.txt

if %1==0123456 set alias=Gruppenalarm

if %2==0 set subric=Einsatzbereitschaft
if %2==1 set subric=Einsatzalarm
if %2==2 set subric=Rueckruf Lst
if %2==3 set subric=Probealarm

echo %subric% %alias%:%3>> %dir%body.txt

echo %date% %time:~0,8%: PROGRAMMAUFRUF (%*) >> %dir%mail.log

%dir%wait.exe 2 /O
echo Email wird gesendet ...

%dir%sendEmail.exe -f %absender% -t %empfaenger% -u "%name% - Alarminfo vom %date%" -o message-file="%dir%body.txt" -o message-content-type=text -o message-header="X-Priority: 1" -s %smtp-server% -o username=%user% -o password=%passwort% -o tls=auto -l %dir%mail.log -q

echo. >> %dir%mail.log
echo Email gesendet ...

%dir%wait.exe 15 /O
del %dir%body.txt

:ende
exit

proffirefighter65
17.06.2012, 15:39
Nochmal die ersten Zeilen, weil ich es oben falsch stehen habe, sorry.
Der Rest nach unten ist aber identisch

Komisch, ich kopiere hier die Zeilen ein, die ich in der batch habe und hier wird es anders dargestellt :-(

rem ######## EINSTELLUNGEN ########

rem --- Pfad zum Programm ---
set dir=C:\Programme\BayCom\POC32

rem --- Feuerwehrname ---
set name="Feuerwehr"

rem --- Email-Einstellungen ---
set absender="Mein Name <meine Mailadresse>"
set empfaenger="Mein Name <meine Mailadresse>"
set smtp-server=smtp.web.de
set user=meine Mailadresse
set passwort=mein Passwort

rem ######## EINSTELLUNGEN ENDE ########

Hm, geht hier nicht, dass ich die Original batch poste :-(
Wer einen Rat weiß, dem schicke ich es gern mal per Mail zu....
Also dann bitte hier melden !!

DANKE !!!!!!!!

So hab es jetzt mal als pdf.Datei hochgeladen.
Da sieht man genau (natürlcih ohne pers. Daten) den Text er batch-Datei

faboi
17.06.2012, 20:14
So der Fehler ist recht trivial:

Bei dem Pfad fehlt am Ende ein Backslash. Muss so aussehen:


C:\Programme\BayCom\POC32\


und wenn man nicht alles entfernt, was einem überflüssig erscheint, dann füge mal oben wieder


@rem ################################################## ##############
@rem ### Sendet eine Mail mit übergebenen Informationen aus POC32 ###
@rem ### (c) faboi - funkmeldesystem.de ###
@rem ################################################## ##############
@echo off
chcp 28591

ein.

Die Test.lnk kannst du löschen. Die ist für einen anderen Pfad.
Wenn du alle Alarme empfangen möchtest, musst du die Aktion als globale Aktion hinterlegen. Irgendwo bei Filter...

proffirefighter65
17.06.2012, 20:41
D A N K E !!!!!!!

Das wär ja toll, wenn es nur der backslash wäre :-)

Den globalen Filter, find ich den in der POC 32 Oberfläche?

proffirefighter65
17.06.2012, 20:49
D A N K E !!!!!!!

Das wär ja toll, wenn es nur der backslash wäre :-)

Den globalen Filter, find ich den in der POC 32 Oberfläche?

Im Filter habe ich die Rics drin, die ohne Bedeutung sind....

proffirefighter65
18.06.2012, 11:23
Tut sich weiterhin nichts, trotz backslash :-(
Weiß nicht mehr weiter

faboi
19.06.2012, 18:44
Wird eine mail.log erstellt? Wird eine body.txt erstellt?
Evtl. mir mal die Orginaldateien schicken... Email bei Bedarf per PM...

proffirefighter65
20.06.2012, 14:12
Habe dir eine PN geschickt

Danek !!!

BF01
18.08.2012, 02:44
Servus an alle,

neues Problem: wenn mehrere RIC gleichzeitig aktiviert werden, kommt nur die mail vom ersten. Die unmittelbar folgenden fallen unter den Tisch :o( .
Hab im POC32 jedem RIC die bat direkt zugeordnet.

Grüße, BF01

faboi
18.08.2012, 08:48
Die neuste Version von POC32 (-> 2.16) sollte dies eigentlich beheben. Aber sonst bekanntes (unlösbares) Problem....

BF01
18.08.2012, 10:17
danke, da werd mich mal versuchen ein update zu finden - und ausprobieren...

Grüße! BF01

BF01
20.08.2012, 11:47
.... und hat prima geklappt !!!