PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : "Guthabenfunktion"



FFW Pietling 2
27.09.2005, 18:10
Hallo allerseits!

Ich bin gerade am Überlegen, wie ich in meine Batch-Dateien eine simple Funktion einbaue, dass ich in einer Datei oder so einen Überblick habe, welche Person wie viele SMS bekommen haben. Ich habe eine ein kleines System zur SMS-Alarmierung über IB-Systems, d.h. über IBSS.

Die Leute müssen nämlich ihre erhaltenen SMS selber zahlen, und da ich mir zu faul bin, die Einzelübertragungsberichte bei IB-Systems durchzukauen, wollte ich eine so eine Art Kontostandfunktion einbauen.

Kann mir wer einen Tipp geben?


mfg Christoph

felix000
27.09.2005, 18:33
Original geschrieben von friend112
Hallo ich habe mir mal ein paar gedanken gemacht. MiThoTyN hat zur Zeit ja viel zu tun (-;

Hier ein Lösungsvorschlag:

in der Batch vor jedem Versenden mit IBSS folgende Zeilen Einfügen:



call test.cmd Kontostand.txt

For /F %%f in (status.txt) do if %%f == failed goto Weiter





Hierbei sind Kontostand.txt und Weiter Variablen mit folgendem Sinn:

Kontostand.txt: Dies ist der Dateiname worin das derzeitige Kontigent der Person ist wofür die nächste SMS versendet werden soll

Weiter: gibt an wo die Batch weitergehen soll, wenn derjenige kein Kontigent mehr hat.
Dort muß vorher :Weiter stehen


Dann eine Batch mit dem Namen test.cmd mit folgendem Inhalt erstellen:



@ echo off

For /F %%f in (%1) do set Wert=%%f

if %Wert% == 0 goto failed

set /A WERT=WERT-1

echo %WERT% > Kontostand.txt

echo OK > status.txt

goto ENDE

:failed

echo failed > status.txt

:ENDE




In der Datei Kontostand.txt steht wieviele SMS noch versendet werden dürfen. Diese Datei muß für jede Person erstellt werden (und natürlich jeweils anders heißen, der richtige Name wird in der Ursprungsbatch angegeben) Nach jeder versendeten SMS zählt diese Zahl um 1 runter. Ist noch Kontigent vorhanden wird OK in die Status.txt geschrieben und die SMS versendet. Steht in der Textdatei, die das Kontigent angiebt eine 0, so wird failed ausgegeben und die Datei springt zur nächsten person.

Bei weiteren Fragen könnt ihr euch an mich wenden.

Mfg. friend112

PS. Diese Lösung funktioniert leider nur bei Win2000 oder XP oder NT4, bei allen vorigen versionen kannte die cmd leider den Parameter /F noch nicht

Anmerkungen: http://www.funkmeldesystem.de/foren/showthread.php?s=&postid=138085&highlight=set#post138085

kOnDeNsAtOr
27.09.2005, 18:57
Bitte postet solche Sachen doch in dem dazugehörigen Thread!
Es geht ganz klar um IB-Systems und IBSS. Dafür gibt es doch einen eigenen Thread.

Bitte seht mich jetzt nicht als Moralapostel. Aber ich finds besser, wenn man dies in einem Thread macht, weil sonst verschwindet diese Frage wieder von dieser Seite und in ein oder zwei Monaten wird sie wieder erneut gestellt.

Gruss Andy

FFW Pietling 2
28.09.2005, 15:30
Die Sache funktioniert ausgezeichnet. Nur eins ist mir aufgefallen: Wenn eine SMS durch die Probealarmliste geblockt wird, dann wird dies vom Guthabenzähler nicht berücksichtigt, ist klar. Wie könnte man das Problem beheben?


mfg Christoph

felix000
28.09.2005, 15:51
Kannst ja einfach das Log auswerten und dort einfach per Batch (find...) die Namen suchen...

...oder stehen geblockte SMS auch in der Log-Datei (weiß es nicht, da ich die Funktion nicht benutz und schon in der Batch blockiere)???

FFW Pietling 2
28.09.2005, 15:56
Also Log auswerten halte ich für zu kompliziert bzw. ich habe nicht auf Anhieb einen anständigen Lösungsansatz gefunden ;-)

Interessieren würde mich, wie du den Probealarmfilter in einer Batch umsetzt. Das wäre ja dann auch indirekt eine Lösung für mein Problem.


mfg

felix000
28.09.2005, 16:01
Ich hab ein Programm das mir als Rückgabewert den Wochentag liefert. Zusätzlich lasse ich dann per IF-Schleife die Zeit (im Format HH:MM) auswerten und dann gegebenfalls blocken.

FFW Pietling 2
28.09.2005, 17:07
Diese Möglichkeit finde ich zwar grundsätzlich nicht schlecht, jedoch bei vielen Schleifen (mehr als 50) mit mehreren Handynummern zu kompliziert.

Die Kontostandfunktion fuktioniert einwandfrei. Jedoch werden den Empfängern eben dann oft zu Unrecht SMS abgebucht (bei geblockten Probealarmen).

Wäre super, wenn irgendwem eine andere Lösungsmöglickeit einfällt! (Ich lasse meine Gehirnzellen natürlich auch arbeiten ;-))


mfg Christoph

Tobias
29.09.2005, 21:38
So, ich bin jetzt auch mal faul und suche keinen Thread raus, obwohl es zu IBSS sicherlich mehr als einen gibt.

Wer ihn hat, schickt mir ne PN, dann führe ich die beiden Themen zusammen ;-)

***closed***