SipStat - Anzeigen des OnlineStatus auf der HP

Malte.

Mitglied
Mitglied seit
4 Jun 2004
Beiträge
656
Punkte für Reaktionen
0
Punkte
0
Ich habe mich noch mal hingesetzt und die bisherige Version von SipStat etwas erweitert. Ingesamt sollte es durch mehr Optionen besser einsetzbar geworden sein.
Ganz neu: FTP-Upload Es soll Leute geben, die zwar irgendwo Java laufen lassen können, dort aber keinen Webspace haben und umgekehrt. Mit den neuen FTP-Optionen kann man das ermittelte Statusbildchen dann per FTP auf den Webserver laden.

Alles Weitere steht (hoffentlich) im Readme.
Ansonsten sollte die Bedienung sich gegenüber SipStat 0.1 nicht geändert haben.
 

Anhänge

  • sipstat_0.3.zip
    47.5 KB · Aufrufe: 146
hi,

testen kann ich es leider gerade nicht, aber sieht ganz nett aus. vielleicht wäre ne jar-datei sinnvoll, bei so vielen klassen.

ansonsten setze ich momentan nur noch sipstat.php ein, weil das flexibler ist. das habe ich mittlerweile auch wieder neu geschrieben, so dass keine externe klasse mehr benötigt wird.
 
vielleicht wäre ne jar-datei sinnvoll, bei so vielen klassen.

Ne JAR-Datei ist im Paket schon mit drin. ;-)

das habe ich mittlerweile auch wieder neu geschrieben
Kannst Du das dann bitte auch noch mal hochladen?! Oder habe ich was übersehen?
 
Habe jetzt die aktuelle Version über ein script mit dem Schalter -runonce als cronjob laufen. Leider ist die Statusanzeige nicht zuverlässig.

Normalerweise bin ich immer online, ausser bei Störungen. Die Statusicons (zwei accounts) zeigen aber unabhängig voneinander mal offline, mal online.

Wenn ich es mit dem Status auf der Webseite vergleiche stimmt es auch nicht überein. Das script läuft sauber durch, bekommt aber offenbar den falschen Status.

jo
 
Ich nehme an, dass Du Icons direkt geprüft hast und nicht über den Browser einen möglicherweise nicht aktuellen Cache dazwischen hattest.

Leider klappt das manchmal mit dem Einloggen bei Sipgate nicht richtig, dann gibt es eine Timout-Exception, die abgefangen wird. Dann wird als Status offline angenommen, da ja kein positives Ergebnis gefunden wurde.
 
Danke für die Aufklärung.

Das script läuft bis auf die von Dir erklärten Probleme im wesentlichen problemlos, so ein bis zweimal am Tag bricht es mit einer Fehlermeldung ab, beim nächsten Aufruf geht es dann wieder.

Ich rufe es per cron alle 15 Min. mit -runonce auf, als "Dauerläufer" klappt es hier nicht so gut.

jo
 
Wenn Du selbst Java kompilieren kannst, kannst Du ja mal versuchen, die Timeouts hochzusetzen. Die Angabe ist in ms (also 1000 = 1 Sek.)
Zurzeit sind 1000 und 2000 eingestellt, Du könntest also auch mit größeren Werten experimentieren.
 
Nachdem ich hier die Fritz!Box eingeschleift habe, gibt es ein FTP Problem

Ausgabe mit -verbose bis zum relevanten Fehler:

Code:
useftp:true
Login to secure.sipgate.de
Reading cookie
Connectin to secure.sipgate.de
Reading page
Writing phone status to file: 1
Trying to transfer graphics file via FTP
Command:
Reply code: 220
Messages: 220 ProFTPD 1.2.5rc1 Server ready.
Data:
Command: CWD /htdocs/callme/sipgate2
Reply code: 250
Messages: 250 CWD command successful.
Data:
Command: STOR online.gif
Reply code: 503
Messages: 503 No PORT command issued first.

Die gifs werden also nicht hochgeladen, deshalb kann auch am Status nichts geändert werden.

Mit -ftppassive geht es auch nicht.

FTP an sich funktioniert aus dem Netz und von dem Rechner. Hat jemand eine Idee?

jo
 
moin moin zzusamm :)

hab leider auch ein problem mit dem genialen script von Malte :(

ich lasse folgenden befehl in der dosbox laufen:
java SipStat username password -useftp ftp-url / ftpusername ftpPW -copyfiles -runonce
(der "slash" ist das maindir vom ftp-vrz).
wenn ich nun den befehl mit -runonce laufen lasse funktioniert alles wunderbar
(sowohl das icon auf der lokalen HDD als auch auf dem webspace werden aktualisiert)

wenn ich nun den befehl im 10min-takt (also ohne runonce) ausführe,
wird das icon leider nur einmal am anfang geändert, danach geschieht nichts mehr, egal ob ich mit sipgate online bin oder nicht :(

kann mir jemand helfen, oder sagen was ich falsch mache?

Greez,
der scoo

edit: kann ich diesen befehl auch direkt auf dem server laufen lassen irgendwie?
(ich weiß aber nicht, ob der server ne java runtime hat, normal wird java ja lokal ausgeführt soweit ich weiß)
 
@rollo:
Der Fehler
Reply code: 503 No PORT command issued first.
scheint ja anzudeuten, dass Dein FTP-Server irgendein (PORT) Kommando erwartet, bevor man die Datei hochladen kann.
Kannst Du selbst Java kompilieren? Vielleicht könnten wir dann zusammen nach der Lösung suchen.

@Scoo:
Der Grund, warum ich diesen FTP-Upload eingebaut habe, war eben genau der, dass der Webserver keine Java-Runtime hat. Jetzt habe ich es mit -runonce als cronjob auf einem anderen Rechner laufen, der cron startet das Skript alle 10 Min und läd dann das Bild auf den Webserver.
Vielleicht solltest Du das mal mit -verbose laufen lassen und gucken, was das Programm ausgibt, wenn anscheinend nichts mehr passiert.
 
Hi Malte,
also ich hab das Prog im verbose-mode laufen lassen, es scheint alles ok
(hier mal das protokoll mit -runonce, OHNE runonce kommt im prinzip das gleiche nur leider wird der status nicht geändert (Writing phone status to file: 0 --> das hat er im "Dauerlauf" nicht umgeschrieben. hab das grad getestet, war währenddessen mit sipgate off und erst nachdem ich runonce gesetzt hab hat er das tatäslcih geändert mit dem status. vorher nicht (und ich war lange genug aus sipgate raus, hab das auf deren HP vorher gecheckt, ob das tel wirklich off ist)
naja und die copyfiles-option läuft irgendwie grad auch nicht mehr
(kapier ich net)

-verbose -copyfiles -runonce

SipStat 0.3 von Andreas Groll, Malte Huelder for www.ip-phone-forum.de
useftp:true
Login to secure.sipgate.de
Reading cookie
Connectin to secure.sipgate.de
Reading page
Writing phone status to file: 0
Copying graphics file
Trying to transfer graphics file via FTP
Command:
Reply code: 220
Messages: 220 ProFTPD 1.2.4 Server (ProFTPD Default Installation) [wolf]
Data:
Command: CWD /
Reply code: 250
Messages: 250 CWD command successful.
Data:
Command:
Reply code: 226
Messages: 226 Transfer complete.
Data:
Command: RNFR offline.gif
Reply code: 350
Messages: 350 File or directory exists, ready for destination name.
Data:
Command: RNTO phoneStatus.gif
Reply code: 250
Messages: 250 rename successful.
Data:
Command: QUIT
Reply code: 221
Messages: 221 Goodbye.
Data:
Ready


edit: CRONJOB = Taskplaner unter Windows ??
(oder was ist das genau)
 
Also der Kopierteil und der FTP-Teil, die hängen davon ab, was der Status der ermittelt. Ist irgendwie auch logisch, wenn als Status (auch fälschlich) offline ermittelt wurde, dann wird natürlich auch die offline-Grafik kopiert etc.

Zum Thema cron: Das ist ein Tool (unter Unix/Linux), das regelmäßig wiederkehrende Tasks (cronjobs) ausführt. Ob das unter Windows mit Taskplaner auch so geht, kann ich jetzt nicht sagen.
 
danke Dir.

Also kann ich ohne so nen Cronjob-tool (ist unter Win NICHT direkt der Taskplaner, der kann nur täglich, wöchentlich usw.)
die automatische funktion von dem script nicht nutzen?
(eigentlich ist doch da ne automatik drin, nur die läuft ja leider nicht richtig wie oben beschrieben)
 
So sieht's anscheinend aus - leider. :-(
Ich kann mich gerade auch nicht drum kümmern, vielleicht erinnerst Du mich per PN noch mal dran, dass ich versuche, den Fehler zu finden, wenn ich wieder Zeit habe.
Wenn Du in der Zwischenzeit so eine Art cron/Taskplaner findest, der unter Windows auch alle 10 Min. etwas ausführen kann, dann wäre es schön, wenn Du das hier posten könntest - es wird sicherlich auch andere interessieren.

Noch mal zum Verständnis:
Der komplette Ablauf wie oben genannt (von Login to... bis Ready) wiederholt sich alle 10 Min. genauso, ohne den Status zu verändern, obwohl der sich in der Zwischenzeit tatsächlich geändert hatte?
 
hehe
ja, ich werd mal suchen.

leider ist die nicht -funktionierende automatik momentan meine einzige lösung :(
mit batch befehl geht's irgendwie gar anicht, dann kommt er scheinbar in ne endlosschleife bevor der FTP-upload beginnt und nix passsiert mehr *heul*

naja, bis später dann
 
So, ich habe was gefunden.
Das Prog nennt sich Z-Cron und bietet Programmaufrufe im 5-Minuten Takt.

Z-Cron

(Freeware)

edit: falls euch die Seite zu langsam ist nehmt diese:
Z-Cron andere URL
 
SipStat 0.3b

Hier ist eine neue Version von SipStat.
Sie zeichnet sich durch längere Timeouts aus, da die Sipgate-Seite offensichtlich manchmal langsam antwortet. Außerdem ist die Erkennung des Status beim "Dauerlauf" des Programm verbessert worden.
Zu guter Letzt werden auftretende Exceptions während der Kommunikation mit Sipgate nun auch bei Angabe von -verbose mit ausgegeben.
 

Anhänge

  • sipstat_0.3b.zip
    45.8 KB · Aufrufe: 25
Für eine einfach Lösung des Online Status gibt es auch einen Passenden
Link vom Support bei Sipgate. Ist noch nicht offiziell und im Testbetrieb, aber es funktioniert wunderbar.
 
@malte

werde es mal testen, habe aber jetzt die php variante auf einem server laufen. Das läuft recht zuverlässig.

@udo

hoffe, das läuft dann ähnlich elegant wie bei purtel oder fwd, Nachteil der Lösungen ist immer die festgelegte Größe der Grafiken.

jo
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.