• Gelöst Maxo82

    (@makso1982)


    Hallo

    ich hab da eine blöde Situation.
    Wir haben am See Webcam die auf unseren FTP Server der Homepage die Fotos hochlädt.
    Alles funkt tadellos. Alle 15min neues Foto.

    Die neue ABUS Cam kann extrem viel aber nur eine Sache nicht, und die wäre die Hochgeladenen Fotos immer zu ersetzten oder zu überspielen. Also immer der gleiche Name des Bildes.
    Somit ladet das Plugin NetCam nur das eine Foto was vergebene ist weil die anderen anders heißen.

    Video stream noch nicht möglich da die Internet Leitung zu schwach ist.

    Gibt es eine Plugin oder Code bei Netcam was besagt das im Ordern (XY) am Server die Fotos eins nach dem anderen geladen wird?

    Ich hoffe ich hab mich deutlich ausgedrückt.

    Dankeschön

    Die Seite, für die ich Hilfe brauche: [Anmelden, um den Link zu sehen]

Ansicht von 15 Antworten – 1 bis 15 (von insgesamt 24)
  • Eine einfache Lösung wäre, ein Script zu schreiben, dass kontrolliert, ob es ein neues Bild gibt und wenn ja, auf einen bestimmten Namen kopiert. Und dieses Script dann per Cron-Job regelmäßig aufrufen lassen.

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Wenn der Dateiname nach einem bestimmten Muster aufgebaut wird, könnte auch ein Shortcode erstellt werden, der den Bildnamen entsprechend generiert.

    Thread-Starter Maxo82

    (@makso1982)

    Morgen,

    so die Datei heißen so:

    Zicksee_P11496164_20210607000441910_TIMING
    Zicksee_P11496164_20210607000941808_TIMING
    usw.
    Name + CamID + Datum + Uhrzeit
    Datum und Uhrzeit ändern sich immer. So schickt die Cam die Bilder auf dem Server.
    Namen der Bilder kann ich nicht umschreiben nicht machbar, also seitens Hersteller gesperrt.

    Shortcode schreiben da bin ich nicht der Weltmeister muss ich gestehen.

    Ein Plugin für so einen speziellen Fall kenn ich nicht wirklich.
    Du wirst daher net umhin kommen, dir jemanden zu suchen, der dir das schreibt.

    Ooooooooooder, du vertiefst dich ein bisschen in die Materie 🙂

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Ich gehe davon aus, dass die Bilder auf deinem Webserver im Unterverzeichnis webcam mit einem Timestamp abgelegt werden. Folgenden Coder fügst du entweder der functions.php deines Child-Theme hinzu oder erstellst mit dem Plugin Code Snippets ein neues Code-Snippet:

    add_shortcode( 'webcam', 'webcam_shortcode' );
    function webcam_shortcode() {
    	$files       = scandir( ABSPATH. 'webcam', SCANDIR_SORT_DESCENDING );
    	$newest_file = esc_attr( $files[0] );
    
    	return '<img id="webcam" src="' . get_home_url() . '/webcam/' . $newest_file . '" alt="Ein Bild von unserer Webcam.">';
    
    }

    Fügst du nun auf einer Seite den Shortcode [webcam] ein, wird ein Bild-Tag mit dem aktuellsten Bild eingebunden.
    Du solltest nicht vergessen, einen Cron-Job einzurichten, der ältere Bilder löscht, weil sonst rasch der Webspace mit Bildern überläuft.

    Das Bild wird nicht fortlaufend (sondern erst bei erneutem Laden der Webseite) neu geladen – dazu wäre weiterer Code erforderlich. Bitte denk aber daran, dass es nicht unser Ziel ist, auf Zuruf solchen Code zu programmieren. Wenn du über die angebotenen Einstellungsmöglichkeiten hinaus Änderungen an deiner WordPress-Installation vornehmen möchtest, musst du dir entweder das nötige Grundwissen anlesen oder einen Dienstleister beauftragen. Ich habe mit dem Shortcode-Code (mehr im Sinne eines PoC) eine Ausnahme gemacht, werde das aber nicht weiter „verfeinern“ oder ausarbeiten.

    Thread-Starter Maxo82

    (@makso1982)

    Hallo Mario,

    danke nochmals für den Code, war gerade selbst am tüfteln, aber irgendwas mache ich falsch.
    Die Seite wird alle 5 sec neu geladen, das Bild wird zwar angezeigt wird nicht erneuert, ein scriptfehler ist vorhanden.

    das wäre meine Code gewesen
    Siehst du den Fehler oder hab ich schon was an den Augen.
    Komme nicht dahinten. 🙁

    <html>
    <head>
    <meta http-equiv=“content-type“ content=“text/html; charset=utf-8″ />
    <meta name=“viewport“ content=“width=device-width, initial-scale=1.0″ />
    <meta http-equiv=“refresh“ content=“5;“ /></head>
    <body>
    <?php
    $dir = „webcam/“;
    $aktuell =“webcam/2021_06_07-2021_06_07/Zicksee.jpeg_P11496164_20210607000441910_TIMING.jpg“;
    $bilder = glob($dir . „*.jpg“);
    // var_dump($bilder);
    $mtime = 0;
    foreach ($bilder as $bild) {
    $mt = filemtime($bild);
    if ($mt > $mtime) {
    $mtime = $mt;
    $neuesbild = $bild;
    }
    }
    if (isset($neuesbild) && $neuesbild != $aktuell) {
    rename($neuesbild, $aktuell);
    }
    $bilder = glob($dir . „*.jpg“);
    // var_dump($bilder);
    foreach ($bilder as $bild) {
    if ($bild != $aktuell) unlink($bild);
    }
    $secs = time(5);
    ?>
    “ />
    </body>
    </html>`

    Und das der Link dazu

    https://www.xn--gemeinde-standr-flb.at/test_web/

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Ich hab dir doch fertigen Code zur Verfügung gestellt. Wieso nimmst du nicht den? 🙂

    Thread-Starter Maxo82

    (@makso1982)

    Sorry wollte nur mein willen zeigen. Deinen Code kopiere gerade rein 🙂

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    … und nein, der Code gehört nicht in die Seite.

    Plugin Code Snippets installieren, neues Snippet anlegen, dort den Code einfügen. In die Webseite fügst du dann nur [webcam] ein.

    Thread-Starter Maxo82

    (@makso1982)

    weis ich war ein unabsichtliches copy paste fehler

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Ist noch ein bisschen diesig bei Euch, aber sonst wird das Bild ja jetzt angezeigt. 🙂

    Thread-Starter Maxo82

    (@makso1982)

    jepp aber nicht das aktuelle 🙂

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Wie beschrieben:

    Ich gehe davon aus, dass die Bilder auf deinem Webserver im Unterverzeichnis webcam mit einem Timestamp abgelegt werden.

    Lösch oder verschieb doch mal die Datei zicksee_PE.jpg und schau, ob es dann funktioniert.

    Alternativ könnte auch nach Dateinamen abgerufen werden.

    Thread-Starter Maxo82

    (@makso1982)

    Hab ich gerade gemacht, zicksee_PE.jpg gelöscht.
    Passieren tut jetzt nichts.
    Wobei jpg ist jpg.

    Schau gerade warum er nicht die neueste jpg nimmt,

    Thread-Starter Maxo82

    (@makso1982)

    komischer Schmarrn aber jetzt läufts. Bild gelöscht dann lief es 🙂

    Mercy

Ansicht von 15 Antworten – 1 bis 15 (von insgesamt 24)

Das Thema „Plugin für Live reflash von Fotos am Server“ ist für neue Antworten geschlossen.