Ich hatte mir ein kleines Skript gebastelt welches vom WebIf einer Oscam die Laufzeiten der Smartkarten ausliest und ein paar Tage vor Ablauf bescheid sagt, dass es bald wieder so weit ist sie zu verlängern.
Das WebIf der Oscam ist mit Benutzername und Passwort abgesichert. Alles kein Problem (bisher) da ich im bisher verwendeten WWW-Reader die Authentifizierung eingeschaltet und Benutzername und Passwort hinterlegt hatte.
Heute abend nun blieben die HD+ Sender dunkel ohne das ich eine Vorwarnung bekommen hatte. Also habe ich das überprüft und musste feststellen, dass der WWW-Reader ein „Access denied“ zurück meldet obwohl die Zugangsparameter stimmern (mehrfach geprüft).
Auch Sys_GetURLContentEX liefert selbiges negatives Ergebnis. Schalte ich auf der Oscam die Authentifizierung aus, so läuft auch das Skipt wieder.
Nachdem das Skript mit Authentifizierung eine ganze Weile funktioniert hat frage ich mich nun natürlich wo mein Fehler steckt. Hat jemand von Euch eine Anregung?
Damit klappt schon mal die Authentifizierung wieder. Dafür schon mal ein dickes Danke.
Fragt sich nur warum das mit Bordmitteln nicht mehr funktioniert nachdem es schon einmal lief.
Wäre ich nicht zu doof für DOM/XPath, dann würde ich das Skript auch komplett schreiben, damit du dein Datum wieder direkt hast, aber irgendwas will hier grad nicht :rolleyes:
…du darfst jetzt noch den Ablauftag herausfinden mit „$ablauftag = substr($ablaufdatum, -2, 2);“ und diesem dann gegen den aktuellen Tag „abgleichen“ (mit „$wochentag = date(„w“);“) und wenn weniger als X Tage bis Karten-Ablauf, dann Push-Nachricht oder sonstwas auslösen.
Und wenn du es hast, bitte mir schicken oder hier posten
Funktioniert soweit alles wunderbar. Danke also fürs Spaß verderben.
Einen kleinen Fehler habe ich noch gefunden. Wenn die Karte mehrere Entitlements gespeichert hat dann ist von der Laufzeit nur das letzte interessant. Die Zeile
$ablaufdatum = $output[0];
sollte daher lauten
$ablaufdatum = $output[count($output)-1];
Da ich zentrale Skripte für Sprachausgabe, Push bzw. Email habe die über eine Variable mit dem Nachrichteninhalt getriggert werden macht es wenig Sinn das Gesamtwerk hier zu posten.
Ich hatte „$ablaufdatum = $output[0];“ als Beispiel genommen Jeder hat ja unterschiedliche Karten, Entitlements, … Je nachdem was für einen interessant ist, muss man diesen Teil halt anpassen. Da reicht ja eine einfache Ausgabe per echo, um zu prüfen, ob das gewünschte Datum ausgegeben wird. Oder alternativ mit dem Browser „Element untersuchen“ machen und dann den XPath anpassen
Aber freut mich, dass es klappt!
Hast du das noch eingebaut mit „X Tage vor Ablauf des Entitlements“ benachrichtigen? Oder lässt du dir einfach nur das Datum schicken?