Pitti's Skript-Bibliothek

Die Überschrift klingt wahrscheinlich größer als alles nachher ist :loveips:

Aber nochmal kurz einen Schritt zurück.
Über den Jahreswechsel habe ich mal wieder ein Script geschrieben, welches aus frei verfügbaren EPG Daten ein schönes TV-Guide ins Webfront zaubert. Jedenfalls fanden das ein paar Jungs im Chat - da hatte ich einfach mal um Feedback gefragt :innocent:

Natürlich kam auch schnell die Frage ob ich das Skript veröffentliche - natürlich würde ich das machen … aber!

Ich habe mich vor einiger Zeit entschieden keine lauffähigen „AllInOne“-Scripte mehr zu programmieren. Sondern immer wiederkehrende Funktionen die das Scripten erleichtern in ein separates Script auszulagern.

Warum? Das habe ich in einen kurzen Blog-Artikel (Meine erste Skript-Bibliothek - Wilkware) versucht zu beschreiben. Sozusagen als Vorbereitung auf die nachfolgende Veröffentlichung/Beschreibung des TV-Guide Scriptes und aller weiteren!

Die Bibo umfasst sehr viele Funktionen die man auch hier im Forum findet - in der einen oder anderen Form - und ist jetzt keine große Erfindung von mir … habe es meistens für mich ‚synchronisiert‘ und aufeinander abgestimmt und Kleinigkeiten aus der Modulentwicklung einfließen lassen! Also Dankeschön an ALLE die dazu beigetragen haben :slight_smile:

Also, habt Euch wohl
Heiko (@pitti)

3 „Gefällt mir“

Hi Pitti. Vielen Dank für die Arbeit die du hier für uns machst :+1:

Könnte man da auch wenn du mal Zeit hast das Skript für die grafische Sonnenstandsberechnung (via googlemaps) irgendwie da reinpacken.
ich weiß das es noch nicht fertig ist :smiling_face:

1 „Gefällt mir“

Danke Dir!

Grundsätzlich ja, aber leider funktioniert das Rendern der Seite auch bei mir nicht mehr :frowning:
Ich habe vorhin auch nochmal versucht das wieder zum laufen zu bringen, aber die Seite ist einfach der Horror (Coockies, Werbung ohne Ende, Layer, Frames, unendlich viel Javascript …).
Habe es auch noch mit einem anderen Tool (wkhtmltoimage) versucht - leider ohne Erfolg :frowning:

Sorry, aber ohne weitere Ideen komme ich da nicht weiter!

Gruß Heiko

1 „Gefällt mir“

Meine Bibliothek hat wieder Zuwachs bekommen. Diesmal geht es um die Integrierung des Dienstes quickchart.io

Ich habe dazu auch mal auf die Schnelle ein Blog-Artikel geschrieben - dort steht alles genau (versucht :slight_smile: ) drin.

Gruß Heiko

2 „Gefällt mir“

[UPDATE] Version 1.4.20230315

  • NEU: Locals Skript für personalisierte Daten hinzugefügt
  • NEU: Solarprognose Skripte für solarprognose.de und solcast.com
  • NEU: Einige neue globale Funktionen hinzugefügt
  • FIX: CreateProfileInteger in Functions korrigiert

Bei den globalen Funktionen sind folgende hinzugekommen:

  • RegisterArchive - Variablelogging ins Archive aktivieren
  • UnregisterArchive - Variablelogging wieder deaktivieren
  • UnregisterProfil - Variableprofil löschen wenn nicht mehr benutzt (Idee von @Nall-chan)
  • ExtractGuid - Funktion zum Erhalten der GUID von Modulen und Aktionen; macht das Schreiben von Skripten unabhängig von der lokalen Installation (basiert auf Idee von @sokkederheld)
  • CreateEventByNameFromTo - Erzeugt eine wiedeholendes Event für einen Zeitraum von/bis

LÖSUNG FÜR PERSONALISIERTE DATEN

Immer wieder hat man beim programmieren und veröffentlichen von Skripten das Problem mit privaten bzw. geheimen Daten (API-KEYs, Mailadressen, Passwörter, IDs usw.). Meistens geht es ganz schnell und die Daten sind im Forum. Da ich aber nichts am Script ändern will (auch keine Kleinigkeiten) habe ich schon länger über einen Weg nachgedacht.

Ich habe das jetzt ähnlich den globalen Funktionen gelöst. Es gibt jetzt ein System.Locals.ips.php Skript welches ich auch in die __autoload.php reinziehe und dort alle meine Einstellungen über ein ARRAY-define setze.

define('__WWX', [
    'MY_APIKEY' => 'xyz-xyz-xyz',
    // weitere Einträge
    // ....
]);

Im Skript kann man dann einfach per …

$api-key = __WWX['MY_APIKEY'];

… drauf zugreifen. Da ich ein Liebhaber der 3-Buchstaben-Abkürzung bin :slight_smile: ist es bei mir WWX (WilkWareEXtension). Das kann aber jeder ändern und halten wie ein Dachdecker :slight_smile:

Ob das der Weißheit letzter Schluss ist, keine Ahnung - ich mach das jetzt mal so :slight_smile:
Also nicht wundern wenn ihr in meinen Skripten so ein Konstrukt seht :loveips:

Das schöne ist, wenn man das nicht mag - einfach wie früher durch seinen eigenen Wert direkt ersetzen und alles läuft!

Gruß Heiko

2 „Gefällt mir“

[UPDATE] Version 1.5.20231005

  • NEU: SolarEdge Monitoring Skript
  • NEU: Globale Get-Funktionen hinzugefügt
  • FIX: Test auf bereits Angelegte Objekte in Create-Funktionen korrigiert bzw. vereinheitlicht

Die neuen Get-Funktionen machen den Code etwas übersichtlicher beim späteren Zugriff auf die nach der Installation angelegten Variablen, Skripte usw. das wurde ja dann bisher auch mit den Create-Funktionen gemacht. Macht den Code etwas besser lesbarer und verständlicher!

Gruß Heiko

[UPDATE] Version 1.6.20231019

  • NEU: Medien Skript

Da sich der user-Ordner langsam aber sicher verabschiedet, stelle ich schon mal nach und nach alles auf IPS-Medienobjekte um. Das neue Script hilft via Webhook (/hook/medien) diese dann in HTMLBox’en auszuspielen!

Gruß Heiko

[UPDATE] Version 1.7.20231020

  • NEU: Dashboard Skript (Meldungsanzeige im WebFront / Tile Visu)

Da die neu 7.0 Tile Visu immer mehr an Beliebtheit gewinnt, habe ich schnell mal mein altes Meldungsskript um eine entsprechende Anzeigen-Varinte ergänzt. Gleichzeitig mal unter Versionskontrolle gestellt - weiß selber nach so langer Zeit nicht mehr warum und wie es gewachsen ist :slight_smile:

Gruß Heiko

[UPDATE] Version 1.8.20231106

  • NEU: PirateWeather Skript (Wetterdaten vom Nachfolger von Dark Sky)
  • FIX: Style Checks für SolarEdge jetzt korrekt

@firewire hatte mich nach meiner Darstellung der Wetterdaten gefragt. Das Skript ist aber über die Jahre immer wieder „gewachsen“ und war so nicht zum weitergeben. Hab das jetzt mal genutzt um etwas aufzuräumen. Ist vielleicht nicht meine beste Arbeit, aber funktional :smiley:
Mehr dazu in einem separaten Post.

Gruß Heiko

[UPDATE] Version 1.9.20231107

  • FIX: Veraltete System-Calls im Meldungsskript (System.Dashboard.ips.php)

Gruß Heiko

[UPDATE] Version 2.0.20231117

  • NEU: PHP Style Check Action eingeführt
  • NEU: Unterstützung der Themes (hell/dunkel) für Tile Visu (PirateWeather & Dashboard)
  • NEU: Erweiterung für PirateWeather Skript um Vorhersage und Klimadaten
  • FIX: Icondarstellung im Dashboard Skript funktioniert jetzt korrekt

Gruß Heiko