www.Telefon-Sparbuch.de
 Least Cost Routing: Programmier-Schnittstelle 

LCR Daten downloaden via Cron Job o.ä.


BETA-TEST:
Dokumentation noch nicht abgeschlossen / evtl. funktioniert auch das hier beschriebenen nicht wie gedacht, von daher bei Problemen einfach mal Rücksprache mit mir halten.

Kommunikation mit

Seite: /tmpl/calc/telephone/lcr/Agfeo/download/index.htm
Anstelle von "Agfeo" kann auch eine der anderen TK-Anlagen gesetzt werden!

Übergabe-Parameter via POST oder GET

TAKE_FILE
Im value wird der Inhalt der Konfigdatei eingetragen (die Datei erhält man unter Einstellungsoptionen "Einstellung-Speichern"). Den Inhalt dieser Datei 1:1 verwenden (URI Kodierung nicht vergessen)!
Einfaches Beispiel

Bei der Ausgabe wird immer das Datum des aktuellen Datenbestandes im Header "Last-Modified" geschrieben (siehe auch RFC 2616 Sektion 14.29). Diesen Datumsstring beim nächsten Aufruf in If-Modified-Since eintragen!
Beispiel Perl: my $last_modified = $ENV{HTTP_LAST_MODIFIED};

If-Modified-Since
Der Wert von "Last-Modified" wird beim Aufruf im Header der Anfrage eingetragen ("If-Modified-Since: $last_modified", gemäß RFC 2616 Sektion 14.25) - abweichend zum RFC erwarte ich den exakten Wert von Last-Modified, also bitte nicht das Datum aufbereiten und in einer anderen Form als erhalten zusenden.
Hat sich der Datenbestand noch nicht geändert erhält man im Header ein "HTML: HTTP/1.1 304 Not Modified" zurück (RFC 2616 Sektion 10.3.5). Wenn sich der Datenbestand geändert hat, wird die LCR Datei berechnet und zurückgeliefert.
If-Modified-Since kann gemäß RFC im Header der Anfrage oder abweichend davon als POST oder GET Wert übergeben werden, wobei der Key "IF_MODIFIED_SINCE" lautet und im Value der Datumswert von Last-Modified eingetragen wird.
Beispiel PHP: header("If-Modified-Since: " . $last_modified);

Für welche Anlage schreibst Du dieses Autoupdate?

Ich würde mich freuen, wenn Ihr mir mitteilt, für welche Anlage Ihr eine Erweiterung geschrieben habt und natürlich auch wenn Ihr mir Euer Script zur Ansicht zusendet :) Falls Ihr es genehmigt, stelle ich ein solches Downloadscript auch gerne anderen Interessierten zur Verfügung, die sich dann etwas Arbeit mit der Erstellung dieser Funktionalität ersparen.

Wichtig: Beachtet bitte If-Modified-Since korrekt zu unterstützen. Ich werde Scripte, die dies nicht beachten und zu häufig updaten nicht zulassen. Auch liegt es nicht im Sinne des Erfinders, wenn Ihr minütliche Upates fordert. In der Regel ändern sich die Tarifdaten 2 bis 3 mal täglich und ich denke wenn Ihr Morgens, am späten Mittag und Abends updatet sind Euere LCR Daten Top aktuell. Bitte Überlastet den Server nicht unnötig und Versucht nicht die Updates zu vollen Stunden vorzunehmen (wenn alle um pünktlich 12:00 Uhr updaten wird der Server die Rechenlast nicht schaffen). Sinnvoll mag auch eine Zufallszahl für die Minuten und Sekunden der Abfragezeit sein...

Habt Ihr Vorschläge, wie diese Dokumentation verbessert werden kann? Dann schickt mir doch bitte Euere Vorschläge und Korrekturen zu, Danke!


Impressum | Haftungsausschluß Copyright © 1998-2008 Telefon-Sparbuch