1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Reader / Oscam überwachen

Dieses Thema im Forum "Oscam Talk Archiv" wurde erstellt von winklernorbert28, 18. Januar 2014.

  1. winklernorbert28
    Offline

    winklernorbert28 Hacker

    Registriert:
    14. Juli 2013
    Beiträge:
    331
    Zustimmungen:
    30
    Punkte für Erfolge:
    28
    Ort:
    Tirol
    Hallo,

    wollte mal wissen, wie es bei euch so abläuft. Im Normalfall läuft ja Oscam sehr stabil und es sollte selten zu Probleme kommen.
    Aber welche Sicherheit habt ihr, falls der Reader mal nicht richtig eingelesen wird. Es kann ja mal vorkommen, dass man im Urlaub ist
    oder es stressig auf der Arbeit hat und man nicht ständig kontrollieren kann ob alles läuft.

    Die Funktion und Überprüfung mit Crontabs habe ich schon versucht. Habe dazu allerdings ein sehr einfaches Script genommen.
    Eventl. könntet ihr mir paar Vorschläge geben und gibt es auch eine Art Email Benachrichtigung?
    Bin schon gespannt auf die Antworten. Habe derzeit 2 Reader. LG Norbert
     
    #1
  2. phantom

    Nervigen User Advertisement

  3. al-x83
    Offline

    al-x83 Super-Moderator Digital Eliteboard Team

    Registriert:
    10. Januar 2012
    Beiträge:
    13.435
    Zustimmungen:
    12.699
    Punkte für Erfolge:
    113
    Geschlecht:
    männlich
    Beruf:
    SysAdmin
    Ort:
    Paradise City
    AW: Reader / Oscam überwachen

    Bei IPC kann man es z.B. einrichten, dass man 'ne Crashmail vom Watchdog bekommt.
    Gibt hier aber auch so schon Threads die sich mit Watchdosg mit Em-Mail brnachrichtigung auseinander setzen.
     
    #2
  4. winklernorbert28
    Offline

    winklernorbert28 Hacker

    Registriert:
    14. Juli 2013
    Beiträge:
    331
    Zustimmungen:
    30
    Punkte für Erfolge:
    28
    Ort:
    Tirol
    AW: Reader / Oscam überwachen

    Ja Email Benachrichtigung wäre nicht dringend notwendig. Wichtige wäre nur dass überprüft wird ob Oscam läuft und ob die Reader Problemlos eingelesen sind
     
    #3
  5. al-x83
    Offline

    al-x83 Super-Moderator Digital Eliteboard Team

    Registriert:
    10. Januar 2012
    Beiträge:
    13.435
    Zustimmungen:
    12.699
    Punkte für Erfolge:
    113
    Geschlecht:
    männlich
    Beruf:
    SysAdmin
    Ort:
    Paradise City
    AW: Reader / Oscam überwachen

    Hab das Script hier bei pebkac gefunden. Dazu musst du allerdings curl installiern (apt-get install curl):

    Code:
    #!/bin/bash
    #
    #### CONFIG - START
    
    ## OScam WebIf with SSL? [1=yes , 0=no]
    OSssl="0"
    
    ## /path/to/oscam.conf?
    OScfg="/var/etc/oscam.conf"
    
    ## Cards to monitor
    CARD["1"]="mille"
    CARD["2"]="sky"
    CARD["3"]="skd"
    CARD["4"]="skdhd"
    
    ## monitoring Error message (%CARDNAME% gets replaced by the script (its a placeholder!))
    ##  multible error messages possible, simple add for each an own array
    OSerror["1"]="ERROR Phoenix_GetStatus: ioctl error in card detection for %CARDNAME%"
    OSerror["2"]="%CARDNAME% .* Input/output error"
    
    ## OScam's Logfile?
    OSlog="/var/log/oscam.log"
    
    ## reporting logfile for this script?
    OStolog="/var/log/oscam.error"
    
    #### CONFIG - END
    
    
    OSip="127.0.0.1"
    [ "$OSssl" = 1 ] && URL="https://" || URL="http://"
    
    # Simple URL encoding
    proc_url_encode() {
        out=${1//%/%25}; out=${out//\{/%7B}; out=${out//\}/%7D}; out=${out//|/%7C};
        out=${out//\\/%5C}; out=${out//^/%5E}; out=${out//~/%7E}; out=${out//[/%5B};
        out=${out//]/%5D}; out=${out//\`/%60}; out=${out//#/%23}; out=${out//>/%3E};
        out=${out//\$/%24}; out=${out//&/%26}; out=${out//+/%2B}; out=${out//,/%2C};
        out=${out//\//%2F}; out=${out//:/%3A}; out=${out//;/%3B}; out=${out//=/%3B};
        out=${out//\?/%3F}; out=${out// /%20}; out=${out//</%3C};
        out=${out//\!/%21}; out=${out//\"/%22}; out=${out//\@/%40}; out=${out//\'/%27};
        out=${out//\(/%28}; out=${out//\)/%29}; out=${out//\*/%2A}; out=${out//\-/%2D};
        out=${out//\_/%5F}; out=${out//\./%2E}; out=${out//\€/%80};
        echo $out
    }
    
    proc_parse_cfg() {
        i=0
        while read line; do
            line=$(echo $line | sed -e 's/ //g')
            if [[ "$line" =~ ^[^#]*= ]]; then
                cfg_name[$i]=$(echo $line | cut -d'=' -f 1)
                cfg_value[$i]=$(echo $line | cut -d'=' -f 2-)
                ((++i))
            fi
        done < $1
    }
    
    get_cfg_value() {
        i=0
        for name in ${cfg_name[@]}; do
            [ "$1" = "$name" ] && echo "${cfg_value[$i]}" && break
            ((++i))
        done
    }
    
    proc_get_infos() {
        proc_parse_cfg $OScfg
        WEBPORT=$(get_cfg_value httpport)
        [ -z "$WEBPORT" ] && "ERROR: WebIf isnt enabled! Abort!" && exit 1
        if [[ "$WEBPORT" =~ "\+" ]]; then
            URL="https://"
            WEBPORT=$(echo $WEBPORT | tr -d '+')
        fi
        USERNAME=$(get_cfg_value httpuser)
        if [ ! -z "$USERNAME" ]; then
            PASSWORD=$(get_cfg_value httppwd)
            URL="$URL"`proc_url_encode "${USERNAME}"`":"`proc_url_encode "${PASSWORD}"`"@${OSip}:${WEBPORT}"
        else
            URL="${URL}$OSip:$WEBPORT"
        fi
    }
    
    proc_get_infos
    
    for card in "${CARD[@]}" ; do
        for idx in "${!OSerror[@]}" ; do
            Em=${OSerror[$idx]}
            ERRORmsg=${Em//%CARDNAME%/$card}
            founds=`tail -10 $OSlog | grep "$ERRORmsg" | wc -l`
            if [ $founds -gt 0 ]; then
                echo "`date +%d-%b-%Y` `date +%H:%M:%S`: $card Card lost" >> $OStolog
                curl -s --digest "$URL/readers.html?label=${card}&action=disable" >/dev/null
                curl -s --digest "$URL/readers.html?label=${card}&action=enable" >/dev/null
            fi
        done
    done
    
    exit 0

    Mit der Funktoinsweise musst dich allerdings selbst auseinandersetzen.
    Aber bei einem gut konfigurierten Sysem sollte ein Reader nicht einfach so aus steigen.
     
    #4
    winklernorbert28 und zerva165 gefällt das.

Diese Seite empfehlen