Aktuelles
Digital Eliteboard - Das Digitale Technik Forum

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Settings Script für Senderlisten update

couki

Ist oft hier
Premium
Registriert
14. Oktober 2015
Beiträge
130
Reaktionspunkte
17
Punkte
360
Also ich hab schon mehrere Scripts mir angeschau die sowas ähnliches aber wesentlich professioneller gelöst haben. Hab mir jetzt was ganz simples (für meinen zweck ausreichend) zusammen gebastelt.
#!/bin/sh
echo "Senderlisten Update by couki"

cd
cd /etc/enigma2
rm -rf userbouquet.dbe00.tv
BQ=" "
wget $BQ --no-check-certificate
rm -rf userbouquet.dbe02.tv
BQ=" "
wget $BQ --no-check-certificate
init 4 && init 3
exit 0

Das klappt mit OpenPli super. Was muss ich ändern das wenn z.B. "userbouquet.dbe00" nicht auf dem Webserver exestiert, die Datei auf der Box nicht durch "rm" gelöscht wird.?
Dann wäre es perfekt.

Gruß
 
Das hat mit dem Image nichts zu tun.
Also ja.
Es kommt aber darauf an, was genau Du vor hast. Viel einfacher geht es über Open-Web-If und Bouquet-Editor und Exportieren/Importieren.
Natürlich nur, wenn man physisch vor Ort ist.
 
Bei dem VTI Images ab 15.0.xx ist ein wenig anderst, da muss in die Datei STBBOOT.sh was rein, sonst geht es nach einem Reboot nicht.
/etc/enigma2/events/STBBOOT.sh
da das eintragen
Code:
#!/bin/sh
cd /usr/script/
./kanallisteupdater.sh > /tmp/kanallisteupdater.log 2>&1 &
 
Habe jetzt auch mal die Zeit gefunden, ein kleines Updateskript zu basteln
Bash:
#!/bin/sh
clear
echo "================================"
echo "Senderlistenupdate by Alex V 0.1"
echo "================================"
sleep 5
URL='https://url.testurl.com/senderliste'
NAME=senderliste.tar.gz
OVERSION=/tmp/$NAME
LVERSION=/usr/share/enigma2/senderliste

###Paketprüfung
PAKET=curl
if [[ -f $(which $PAKET 2>/dev/null) ]]
    then
    echo -e "\033[32m$PAKET ist bereits installiert...\033[0m"

    else
    echo -e "\033[33m$PAKET wird installiert...\033[0m"
        opkg update && opkg install $PAKET
fi

#Prüfen ob lokales Paket vorhanden, falls nicht Fakepaket erstellen
[ ! -d $LVERSION ] && mkdir $LVERSION
[ ! -f $LVERSION/$NAME ] && touch -t 195001011536 $LVERSION/$NAME

# Lokale Version feststellen
SVERSIONDATE=$(stat -c %y $LVERSION/$NAME | cut -d ' ' -f1)

# Onliversion feststellen:
if curl -o/dev/null -sfIL "$URL/$NAME" 2>&1; then
        echo ""
        echo "Onlinversion vorhanden:"
        wget -q -O $OVERSION $URL/$NAME
        SONLINEDATE=$(stat -c %y $OVERSION | cut -d ' ' -f1)
else
    echo -e "\t\033[1;31;40mKeine Onlineversion vorhanden! --> Abbruch!\033[0m"
    exit 1
fi
 
echo " Senderliste Lokal   =  ($SVERSIONDATE)"
echo " Senderliste Online  =  ($SONLINEDATE)"

# Lokales Datum und Onlindatum vergleichen
if [ $LVERSION/$NAME -ot $OVERSION ]; then
    echo ""
    echo -e "\033[33mOnlineversion ist aktueller, Update wird durchgeführt!\033[0m"
    wget -q -O $LVERSION/$NAME $URL/$NAME
    sleep 1
    rm /etc/enigma2/userbouquet.*
    rm /etc/enigma2/bouquets.*
    tar -xzf /tmp/$NAME -C /etc/enigma2
    sleep 1
    echo "Bouquets werden neu geladen"
    wget -q -qO - http://127.0.0.1/web/servicelistreload?mode=0 > /dev/null 2>&1
    sleep 1

else
    echo -e "\033[32mKein Update notwendig...\033[0m"
    exit 1
fi
echo -e "\033[32mUpdate abgeschlossen!\033[0m"

Die gepackte Senderliste liegt mit dem in $NAME definierten Namen im Netz in der in $URL definierten Adresse.
  • Zuerst wird überprüft ob ein lokales Senderlistenpaket vorhanden ist. Fall nein, wird ein Paket mit dem Erstelldatum 01.01.1950 erstellt.
  • Nun wird überprüft, ob online ein Senderlistenpaket erreichbar ist und falls ja, dieses heruntergeladen
  • Danach werden die Pakete verglichen und falls das Onlinepaket neuer ist, werden in /etc/enigma2 die Daten gelöscht und dann wird dies nach /etc/enigma2 entpackt.
  • Zum Schluss erfolgt noch ein Reload der Senderlisten
Verbesserungsvorschläge sind gern gesehen

ACHTUNG: Diese Script wurde nur auf openATV 7.3 getestet. Sollte aber auf allen Open-Alliance Images laufen.
Hallo. Welche Dateien müssen denn alles in der senderliste.tar.gz sein? Alle aus etc/enigma2?
 
Zurück
Oben