←  [DE] Benutzerunterstützung

Forums

»

Oscam Reader überwachen und wieder starten...

treehe's Photo treehe 5 Jan 2020

Hier ein kleines Script, falls ihr ein Oscam-Reader, der gerne abstürzt, überwachen wollt: 

https://workupload.com/file/aqtzQZ6s

#!/bin/sh
#created by treehe 2020-01-05

# wichtige installations hinweise !!!

 # 1. box mit dem internet verbinden !  ( ping myip.com -w 1 )
 # 2. curl installieren  ( opkg install curl )
 # 3. busybox-cron installieren  ( opkg install busybox-cron )
 
 # 4. watchdog.sh muss ins verzeichnis /usr  ( mv watchdog.sh /usr ) 
 # 5. und dateirechte auf 755 stellen  ( chmode 755 /usr/watchdog.sh )
 
 # 6. cron eintrag in die datei roots im verzeichnis /etc/crond/crontabs 
 #    * * * * * /usr/watchdog.sh  ( echo "* * * * * /usr/watchdog.sh" >>/etc/crond/crontabs/root )
 #    * * * * * sleep 30; /usr/watchdog.sh  ( echo "* * * * * sleep 30; /usr/watchdog.sh" >>/etc/crond/crontabs/root )

 # 7. alle parameter hinter dem = zeichen anpassen (keine leerzeichen!!!)
 
      oscam_username=treehe
      oscam_password=kla4taste
      oscam_ipadresse=127.0.0.1
      oscam_port=9000
      oscam_reader=upcN3_card
 
 # 8. box neustarten ( init 4 && sleep 5 && reboot )
 
######################################################################################################################################
#                                                     ab hier nichts mehr aendern!!!                                                 #
######################################################################################################################################
echo "script gestarted $(date)" 
echo "" 
echo "solange reader weniger als 2 tiers hat"
while [ $(curl --digest -u "$oscam_username:$oscam_password" "http://$oscam_ipadresse:$oscam_port/entitlements.html?label=$oscam_reader" | grep -c "tier") -lt 2 ]
 do
  echo "warte 15 sekunden" 
  sleep 15
  echo "wenn reader weniger als 2 tiers hat"
  if [ $(curl --digest -u "$oscam_username:$oscam_password" "http://$oscam_ipadresse:$oscam_port/entitlements.html?label=$oscam_reader" | grep -c "tier") -lt 2 ]
  then
   echo "starte reader neu"
   curl --digest -u "$oscam_username:$oscam_password" "http://$oscam_ipadresse:$oscam_port/status.html?action=restart&label=$oscam_reader"
   echo ""
   echo "restart $oscam_reader $(date)" 
   echo "restart $oscam_reader $(date)" >>/tmp/$oscam_reader.bad   # alle reader restarts seit boxstart
  else 
   echo ""
  fi
 done
echo "$oscam_reader run $(date)"
echo "$oscam_reader run $(date)" >/tmp/$oscam_reader.run  # letzter reader test
echo ""
echo "script beendet $(date)"
exit 0
######################################################################################################################################
Quote

mimisiku's Photo mimisiku 5 Jan 2020

Ein netter versuch aber wäre es nicht besser OScam besser zu konfigurieren? Ich nütze hier 4 Karten und OScam stürtzt nie ab...
Quote

treehe's Photo treehe 5 Jan 2020

@mimisiku

 

Habe eine NagraCAK7Karte im No Global Pairing in Betrieb, die startet leider nur jedes 2. Mal.

Deshalb habe mich nochmals hingesetzt und schon die V2  https://workupload.com/file/3Wb8Skwz erstellt.

Wenn du mir eine bessere Mipsel Openpli Oscam kompileren kannst nur zu melde dich bei mir.

 

Gruss Treehe

#!/bin/sh
#created by treehe 2020-01-05 v2

# wichtige installations hinweise !!!

 # 1. box mit dem internet verbinden !  ( ping myip.com -w 1 )
 # 2. curl installieren  ( opkg install curl )
 # 3. busybox-cron installieren  ( opkg install busybox-cron )
 
 # 4. watchdog.sh muss ins verzeichnis /usr  ( mv watchdog.sh /usr ) 
 # 5. und dateirechte auf 755 stellen  ( chmode 755 /usr/watchdog.sh )
 
 # 6. cron eintrag in die datei roots im verzeichnis /etc/crond/crontabs 
 #    */1 * * * * /usr/watchdog.sh  ( echo "*/1 * * * * /usr/watchdog.sh" >>/etc/crond/crontabs/root )

 # 7. alle parameter hinter dem = zeichen anpassen (keine leerzeichen!!!)
 
      oscam_username=myname           # http://www.streamboard.tv/wiki/OSCam/de/Config/oscam.conf#httpuser 
      oscam_password=geheimpasswort   # http://www.streamboard.tv/wiki/OSCam/de/Config/oscam.conf#httppwd
      oscam_url=127.0.0.1             # localhost oder externe ip-adresse deiner partnerbox wo die oscam laeuft
      oscam_port=8001                 # http://www.streamboard.tv/wiki/OSCam/de/Config/oscam.conf#httpport 
      oscam_reader=MasterCard         # name des readers den du gerne ueberwachen moechtest

 
 # 8. box neustarten ( init 4 && sleep 5 && reboot )
 
#################################################################################################################################
#                                                   ab hier nichts mehr aendern!!!                                              #
#################################################################################################################################
#!/bin/sh
clear; echo ""; echo "watchdog.sh start at $(date)"; echo "watchdog.sh start at $(date)" >/tmp/$oscam_reader.run;  # letzter positiver reader test
echo ""; echo "$oscam_username $oscam_password $oscam_url $oscam_port $oscam_reader"; echo ""; echo ""; 


loop=$((1)) #setze loop auf 1
while [ $loop != 4 ]  # wiederholen bis loop ungleich 4 ist
 do
 sec=$((15)) #setze sec auf 15
 if [ "$sec" -lt "10" ]; then secs=" $sec"; else secs="$sec"; fi 

 while [ $sec != 0 ]  # wiederholen solang sec ungleich 0 ist
  do
  sleep 1
  echo -en "wait $secs sec befor check $oscam_reader \e[1A\r"; echo -e "loop $loop of 3  \r"; 
  : $((sec--)); if [ "$sec" -lt "10" ]; then secs=" $sec"; else secs="$sec"; fi 
 done

 echo -en "                                                                                   \e[1A\r"; echo "";  
 if [ $(curl --digest -u "$oscam_username:$oscam_password" "http://$oscam_url:$oscam_port/entitlements.html?label=$oscam_reader" | grep -c "tier") -lt 2 ]
 then
  echo "card failure ... restart $oscam_reader";
  if [ $(which curl| grep -c "curl") -lt 2 ]; then echo ""; else  echo "curl not found ... try an installation"; opkg install curl; fi;
  if [ $(which curl| grep -c "curl") -lt 2 ]; then echo ""; echo "$(which curl) ok"; echo ""; else  echo "installation failed ... program abort!"; exit 0; fi;
  curl --digest -u "$oscam_username:$oscam_password" "http://$oscam_url:$oscam_port/status.html?action=restart&label=$oscam_reader";
  echo ""; echo "$oscam_reader restarted"; echo "restart $oscam_reader $(date)" >>/tmp/$oscam_reader.bad   # alle reader restarts seit boxstart
 else  
  echo ""; echo "$oscam_reader ok"; echo "$oscam_reader ok $(date)" >/tmp/$oscam_reader.ok;  # letzter positiver reader test
  fi; 

 echo ""; echo ""; : $((loop++)); 

done
echo ""; echo "watchdog.sh end at $(date)"; echo "";
exit 0
#################################################################################################################################

 


Edited by treehe, 5 January 2020 - 20:25.
Quote

anudanan's Photo anudanan 5 Jan 2020

Welche oscam Version nutzt du denn?
Ich habe aktuell eine 11572 mit cak7 Patch selber compiliert für mipsel openpli und arm openpli

Die könnte ich dir geben
Quote

treehe's Photo treehe 5 Jan 2020

schicke dir eine PM danke.

Edited by treehe, 5 January 2020 - 21:57.
Quote