Gość s6s Opublikowano 23 Listopada 2013 Udostępnij Opublikowano 23 Listopada 2013 Jak z poziomu skryptu shell'a sprawdzić czy głowica nie działa aktualnie (czyli czy ktoś akurat nie ogląda tv w danej chwili albo nie nagrywa się planowa audycja tv)? ok, coś takiego udało mi się wymodzić, żeby sprawdzić czy string zwracany przez: strng=`wget -q -O - "http://127.0.0.1/web/about" |grep e2servicename\> | /usr/bin/cut -d '>' -f2 | /usr/bin/cut -d '<' -f1 )` zawiera nazwę audycji/stacji (kiedy głowica włączona) czy nic nie zawiera kiedy tuner przełączy się w stan "sleep". (Przy okazji wiemy jak otrzymać nazwę audycji (kiedy EPG podaje) lub stacji (kiedy nic nie ma w EPG)) Ale czy to nie za bardzo "karkołomna" metoda i nie da się prościej? Scalono Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
mickey Opublikowano 25 Listopada 2013 Udostępnij Opublikowano 25 Listopada 2013 Działało, kiedy używałem: #!/bin/bash timers_file=/etc/enigma2/timers.xml time_now=`date +%s` timer_state=0 while read -r line; do line_start=`echo "$line" | awk '{ print $1 }'` if [ "$line_start" = "<timer" ] then timer_begin=`echo "$line" | awk '{ print $2 }' | sed 's/"/ /g' | awk '{print $2}'` timer_end=`echo "$line" | awk '{ print $3 }' | sed 's/"/ /g' | awk '{print $2}'` if [ "$time_now" -ge "$timer_begin" ] && [ "$time_now" -le "$timer_end" ] then timer_state=1 fi fi done < $timers_file echo "$timer_state" Zwraca 0 jeżeli aktualnie nic się nie nagrywa i 1 jeżeli coś się jednak nagrywa ... bazując na danych z timers.xml. Jeżeli włączymy nagranie w czasie oglądania, używając czerwonego R to niestety nie dopisuje się to do timers.xml :( Wydaje się, że jeżeli coś się odtwarza lub nagrywa to powinny być ustawione parametry w /proc/stb/vmpeg ... ale mimo aktywnego nagrania są tam zera. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość herpoi Opublikowano 25 Listopada 2013 Udostępnij Opublikowano 25 Listopada 2013 A tu się nie pojawia timer odpalony z klawisza? http://ip_boxa/web/timerlist Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość s6s Opublikowano 25 Listopada 2013 Udostępnij Opublikowano 25 Listopada 2013 cat /proc/stb/vmpeg/0/framerate pokazuje zero kiedy tuner w 'sleep' a cztery "cyfry" szensnastkowe kiedy podczas oglądania... Podczas stanu sleep kiedy nagrywa planowe zadanie rzeczywiście pokazuje niestety zero (tak samo zresztą i w stanie czuwania kiedy "nie ma wolnego tunera" i obraz ciemny) Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
mickey Opublikowano 25 Listopada 2013 Udostępnij Opublikowano 25 Listopada 2013 Właśnie wiem... Wydawało mi się, że tam powinno coś być jeżeli jeden z tunerów pracuje (coś dekoduje) a są wartości różne od 0 tylko kiedy obraz jest wyświetlany :( Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
AbrahaM Opublikowano 15 Stycznia 2014 Udostępnij Opublikowano 15 Stycznia 2014 Właśnie wiem... Wydawało mi się, że tam powinno coś być jeżeli jeden z tunerów pracuje (coś dekoduje) a są wartości różne od 0 tylko kiedy obraz jest wyświetlany :( odkopuje. na podstawie pliku LCD generowanego przez oscam, można wywnioskować czy coś się dekoduje. Po więcej (jak to ustawiać) odsyłam do: http://www.streamboard.tv/wiki/OSCam/en/Config/oscam.conf#enablelcd - po testach zobaczysz co oscam tam umieszcza :) Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość s6s Opublikowano 17 Stycznia 2014 Udostępnij Opublikowano 17 Stycznia 2014 Ale to oznacze, że musi męczyć dysk HDD ciągłym zapisywaniem bzdur, nie da się jakoś ominąć owej konieczności? Jakiś bufor w tmpfs albo co... jakby ograniczyć wielkość pliku do minimum żeby nie zapychać też pamięci? Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
tux Opublikowano 17 Stycznia 2014 Udostępnij Opublikowano 17 Stycznia 2014 Ale to oznacze, że musi męczyć dysk HDD ciągłym zapisywaniem bzdur, nie da się jakoś ominąć owej konieczności? Jakiś bufor w tmpfs albo co... jakby ograniczyć wielkość pliku do minimum żeby nie zapychać też pamięci? Włącz myślenie - możesz definować ścieżki! Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość s6s Opublikowano 17 Stycznia 2014 Udostępnij Opublikowano 17 Stycznia 2014 Ważna uwaga, w owym opisie z linku: http://www.streamboard.tv/wiki/OSCam/en/Config/oscam.conf#enablelcd występuje pewna niedbałość. Otóż żeby 'lcd' działało należy owe wpisy konfiguracyjne poprzedzić nagłówkiem [lcd] , czyli w sumie np.: [lcd] enablelcd = 1 # NEU - NEW - NOUVEAU - NUOVO svn:6285/01/23/2012 lcd_outputpath = /tmp #wartość domyślna jeżeli nic nie wpiszesz - a poza tym trzeba wpisać ścieżkę FOLDERu! lcd_hideidle = 0 lcd_writeinterval = 10 (przy najmniej mnie jedynie pod powyższym warunkiem działa) ------------ Aha, jeszcze dodam, że mam oscam'a z ostatniej aktualizacji przez opkg, i mówi on, że obsługuje lcd: # cat /tmp/.oscam/oscam.version Version: oscam-1.20-unstable_svn-r9072 ... LCD support: yes ... ------------------- Przy okazji, pojęcia nie ma do czego służy owa funkcja "lcd" w oscam'ie (czy mógłby ktoś jednym zdaniem oświecić pliiiz?) a w szczególności, czy owe informacje zawarte w plikach oscam.lcd.* można wykorzystać jedynie aby określić czy tuner odbiera kanały kodowane - czy również FTA? Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
AbrahaM Opublikowano 17 Stycznia 2014 Udostępnij Opublikowano 17 Stycznia 2014 (Przy okazji, pojęcia nie ma do czego służy owa funkcja "lcd" w oscam'ie, czy mógłby ktoś jednym zdaniem oświecić pliiiz?) Mama mia. W wątku o czym tu dyskutujemy? o sprawdzaniu czy coś się dekoduje, cytuję za innym guru oscamowym (Jej@n) W pliku (lcd, dopisek mój) otrzymujemy sporo informacji takich jak: - pełne dane o wersji OSCam'a - uptime - dane z tabelki "Totals" w zakładce USERS - informacje o czytnikach i userach przykładowe dane (także cytuję za Jej@n) Version: 1.20-unstable_svn Revision: 8829 up: 10:34:08 totals: 2728/0/6/0/1/0 uptime: 38048 Typ| Label | Idle | w | s | b | e | St ---+------------+--------------+---+---+---+---+---- R0 | alfa | 00:00:38 | 0| 0| 0| 0| OK R1 | beta | 00:00:13 | 0| 0| 0| 0| OK P0 | dcw | 10:34:08 | 0| 0| 0| 0| CON P1 | chi | 00:00:00 | 0| 0| 0| 0| CON P2 | phi | 02:28:35 | 0| 0| 0| 0| CON P3 | delta | 00:00:01 | 2/213 cards | CON P4 | kappa | 00:00:53 | 1/ 1 card | CON P5 | sigma | 00:00:18 | 5/ 29 cards | CON P6 | ex301 | 00:00:38 | 0| 0| 0| 0| CON P7 | ex302 | 00:00:00 | 0| 0| 0| 0| CON P8 | ex303 | 00:00:13 | 0| 0| 0| 0| CON P9 | ex304 | 00:00:00 | 0| 0| 0| 0| CON ---+------------+--------------+---+---+---+--++---- Typ| Label | Channel | Time ---+------------+-----------------------------+----- U0 | nbox | nc+ :Polsat HD | 227 U1 | dm500 | nc+ :Filmbox Action | 393 ---+------------+-----------------------------+----- Te dane można wykorzystać w skrypcie, choćby do sprawdzania czy odbiornik coś dekoduje, wtedy "będzie widać" że użytkownikowi dvbapi przyrasta ilość zapytań o ECM. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość s6s Opublikowano 17 Stycznia 2014 Udostępnij Opublikowano 17 Stycznia 2014 czyli z tego ca napisałes wynikałoby, że tylko kodowane kanały... A ja zauważam, że na kanale FTA - jak tuner włączony to tabelka pokazuje np.: Typ| Label | Idle | w | s | b | e | St ---+------------+--------------+---+---+---+---+---- R0 | sci0 | 00:00:00 | 0| 0| 0| 0| OFF ---+------------+--------------+---+---+---+--++---- Typ| Label | Channel | Time ---+------------+-----------------------------+----- ---+------------+-----------------------------+----- a jak w standby (i bez nagrywania) to: Typ| Label | Idle | w | s | b | e | St ---+------------+--------------+---+---+---+---+---- ---+------------+--------------+---+---+---+--++---- Typ| Label | Channel | Time ---+------------+-----------------------------+----- ---+------------+-----------------------------+----- czyli wiersza z R0 wówczas brak - czy można więc oprzeć sie własnie na tym żeby po prostu sprawdzać czy w tabelce znajduje się wiersz z danymi czytnika karty? Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
AbrahaM Opublikowano 17 Stycznia 2014 Udostępnij Opublikowano 17 Stycznia 2014 czyli z tego ca napisałes wynikałoby, że tylko kodowane kanały... A ja zauważam, że na kanale FTA - jak tuner włączony to tabelka pokazuje np.: [ciach by abraham] czyli wiersza z R0 wówczas brak - czy można więc oprzeć sie własnie na tym żeby po prostu sprawdzać czy w tabelce znajduje się wiersz z danymi czytnika karty? Nie miałem potrzeb by to testować, więc pisałem o tym co wynikało z dokumentacji i/lub innych źródeł które znałem. Logicznie rzecz biorąc, Twoja uwaga jest słuszna, w wypadku odbiorników można by sprawdzać obecność czytnika R0. Co rozwiązuje kwestie Twojego pytania, od którego się ten wątek zaczął. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Gość s6s Opublikowano 19 Stycznia 2014 Udostępnij Opublikowano 19 Stycznia 2014 A, czyli (w skrypcie) badać coś w rodzaju: . /etc/oscam/oscam.conf if [ -n "$lcd_outputpath" ]; then plik="$lcd_outputpath/oscam.lcd.tmp" else plik=/tmp/.oscam/oscam.lcd.tmp fi czytniki="R0 R1 P0 P1 U0 U1" for szukany in $czytniki; do if [ -n "$( cat $plik | grep "$szukany | " )" ]; then # znaleziono więc nie wolno nic robić więc: return fi done sync && system.sh restart #albo inna akcja do wykonania w przypadku niewykorzystanego tunera ... Ale jednak trzeba uwzględnic fakt, że plik oscam.lcd.tmp aktualizuje się co kilkadziesiąt sekund więc jeżeli chcemy np. restartować tuner to trzeba by najpierw zliczyć kolejne po sobie stany niewykorzystania tunera przynajmniej przez pół mnuty (zeleżnie od parametru lcd_writeinterval z pliku konfiguracyjnego oscam.conf Jak to zrobić...? Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.