Все форумы  Просмотр полученых благодарностей
Ссылка на пост #1 Добавлено: 3 апреля 2013 09:38
-belka-
Посетители
Азъ: потеряшка
Возраст: --
Пол:
С нами: 11 лет 5 месяцев
Сообщений: 2
Поблагодарил: 0
Благодарностей: 1
Предупреждений: 0

Репутация:

Награды:


Короче говоря, было свободное время, разобрался в sh. Написал пару улучшений (скрипты только для 3220 v1, возможно допиливаются до v2), который визуализирует работу mpcs с помощью диода qss:
1) qss - быстро мограет - mpcs загружается
2) qss - светится - mpcs работает
3) qss - не свиться - mpcs выгружена
4) qss - быстро моргнул (светился-быстро погас-засветился снова) - ключь найден
5) qss - моргнул длинно 3 раза (светился-погас-засветился снова) - ошибка mpcs
6) нажатее кнопки QSS до 2 секунд - диод QSS гаснет - перезагружает mpcs
7) нажатее кнопки QSS от 2 секунд и больше ( после того как QSS погаз и снова загорелся
- можно отпускать) - перезагружает роутер командой reboot (без cброса настроек)
Выкладываю, может кому пригодится:
/etc/init.d/mpcs_init
Код:[Выделить]
#!/bin/sh /etc/rc.common # Copyright (C) 2006 OpenWrt.org START=99 QSSled=&a
mp;# 34;/sys/class/leds/tl-mr3x20:
;green&# 58;qss" # путь к диоду QSS в переменную start() { /usr/sbin/mpcs_ext & # запускаем mpcs } stop() { exec > /dev/null 2> /dev/null # скрываем все stdout и stderr killall -9 mpcs # снять задачу mpcs rm /tmp/mcps.mem # удаление временных файлов mpcs rm /tmp/*.fifo # удаление временных файлов mpcs rm /tmp/mpcs.led # удаление файла семофора для моргания QSS killall grep # снять задачу grep поиска в логе mpcs killall tee # снять задачу tee killall cat # снять задачу cat echo 0 > $QSSled/brightness # откл. диод QSS }


usr/sbin/mpcs_ext
Код:[Выделить]
#!/bin/sh # Copyright (C) 2013 anoxiety # в файле /etc/mpcs/mpcs.conf указываем путь к лог файлу LogFile = /tmp/pipe.mpcs.log QSSled="/s
ys/class/leds/tl-mr3x20:green
8;qs s" # путь к диоду QSS в переменную OKfilter=" tuner .*: found " # то, что ищем в логе mpcs, чтоб мигнуть диодом QSS ERRORfilter=": timeout|: rejected|: not found|incimplete request|too many errors|errno=|failed" # ошибки #exec > /dev/null 2> /dev/null # скрываем все stdout и stderr ledBlink() { # описываем функцию моргания qss local times="$1" # сколько раз мограть local OFFpause="$2" # время выключения local ONpause="$3" # време свечения local blinkLED="$4" # выбор диода для мигания for k in `seq 1 $ (8.14₴)times` # цикл кол-во морганий do echo 0 > $blinkLED/brightness # откл. диод QSS for i in `seq 0 $ (0₴)OFFpause` ; do echo > /dev/null; done # цикл для паузы 0.2 сек, проц грузит не более 50% echo 1 > $blinkLED/brightness # вкл. диод QSS for i in `seq 0 $ (0₴)ONpause` ; do echo > /dev/null; done # цикл для паузы 0.2 сек, проц грузит не более 50% done } if [ ! -f /tmp/mpcs ] ; then # если файла mpcs нету - распакуем его echo timer > $QSSled/trigger; echo 200 > $QSSled/delay_off ;echo 200 > $QSSled/delay_on # быстро мограем диодом QSS cp -f /etc/mpcs/mpcs.bz2 /tmp/ # копируем архив mpcs.bz2 из /etc/mpcs/ в /tmp/ sleep 3 # ждем 3 сек. пока скопируется bunzip2 -f /tmp/mpcs.bz2 # распаковываем файл mpcs в папку /tmp/ chmod +x /tmp/mpcs # даем раcпакованному файлу mpcs права 0755 mkfifo /tmp/pipe.mpcs.log # создаем FIFО канал для совместного доступа к файлу лога mpcs mkfifo /tmp/pipe.tee.read.log # создаем FIFО канал для совместного доступа к файлу лога mpcs echo 0 > $QSSled/brightness; echo 1 > $QSSled/brightness # вкл. диод QSS fi if top -bn1 | grep [t]mp/mpcs > /dev/null; then # если процесс mpcs запущен - выгружаем его echo 0 > $QSSled/brightness # откл. диод QSS killall -9 mpcs # снять задачу mpcs rm /tmp/mcps.mem # удаление временных файлов mpcs rm /tmp/*.fifo # удаление временных файлов mpcs rm /tmp/mpcs.led # удаление файла семафора для моргания QSS killall grep # снять задачу grep поиска в логе mpcs killall tee # снять задачу tee killall cat # снять задачу cat sleep 2 # пауза 2 сек. fi /tmp/mpcs -c /etc/mpcs & # запуск mpcs с ключем -с это путь к конф. файлам /etc/mpcs touch /tmp/mpcs.led # создание файла семафора для моргания QSS echo 1 > $QSSled/brightness # вкл. диод QSS touch /tmp/bufer.mpcs.log.txt cat /tmp/pipe.mpcs.log | tee /tmp/pipe.tee.read.log > /tmp/bufer.mpcs.log.txt & while [ -f /tmp/mpcs.led ]; do # цикл работает если файл семафор mpcs.led существует grep -qE "$OKfilter|$ERRORfilter" /tmp/pipe.tee.read.log && ( # ищем в логе текст, если находим - выполняем дальше if grep -qE "$OKfilter" /tmp/bufer.mpcs.log.txt; then ledBlink 1 500 200 "/sys/class/leds/tl-mr3x20:green
:qss" # моргать 1 раз, выкл 500, вкл. 200 если ок else ledBlink 3 3000 2000 "/sys/class/leds/tl-mr3x20:green
:qss" # моргать 3 раз, выкл 3000, вкл. 2000 fi > /tmp/bufer.mpcs.log.txt # чистим лог файл ); done & # конец цикла


для перезагрузки mpcs кнопкой qss нужно выполнить в putty:
Код:[Выделить]
uci add system button uci set system.@button[-1].button=wps
nnuci set system.@button[-1].action=presse
d uci set system.@button[-1].handler='
mpcs_ext &' uci add system button uci set system.@button[-1].button=wps
nnuci set system.@button[-1].action=releas
ed uci set system.@button[-1].handler='
echo 0 >/sys/class/leds/tl-mr3x20:green&
amp; #58;system/brightness; echo 0 >/sys/class/leds/ath9k-phy0/brightnes
s; echo 0 >/sys/class/leds/tl-mr3x20:green&
amp; #58;3G/brightness; echo heartbeat > /sys/class/leds/tl-mr3x20:green:
qss/trigger; reboot' uci set system.@button[-1].min=2 uci set system.@button[-1].max=30 uci
set system.@led[0].interval=500 u
ci commit system


Нувот и все. Еще. Я убрал из прошивки дантеса подключение драйверов при загрузке через insmode. Модули с драйверами к своему шнурку просто нужно скопировать при через wincsp в соответствующие папки в роутере и они будут подключены.

Вы не можете скачивать файлы с нашего форума, необходимовойтиилизарегистрироваться

Вы не можете скачивать файлы с нашего форума, необходимовойтиилизарегистрироваться

Вы не можете скачивать файлы с нашего форума, необходимовойтиилизарегистрироваться

Сообщение отредактировано 3 апреля 2013 09:40. Редактировалось 1 раз(а)

Мой телевизор:

Мой ресивер:

Мои спутники:

    XML error in File: https://www.tricolor.tv/rss/

    XML error: error parsing attribute name at line 533

Футбол

Італія. Серія А, 34 тур
28 квітня 2024
13:30 Інтер Інтер  0:0  ТоріноТоріно
Франція. Ліга 1, 31 тур
28 квітня 2024
14:00 Мец Мец -:- ЛілльЛілль
Іспанія. Ла Ліга, 33 тур
28 квітня 2024
15:00 Кадіс Кадіс -:- МальоркаМальорка
Франція. Ліга 1, 31 тур
28 квітня 2024
16:00 Лорьян Лорьян -:- ТулузаТулуза
16:00 Страсбур Страсбур -:- НіццаНіцца
16:00 Клермон Клермон -:- РеймсРеймс
Англія. Прем'єр-ліга, 35-й тур
28 квітня 2024
16:00 Борнмут Борнмут -:- БрайтонБрайтон
16:00 Тоттенгем Тоттенгем -:- АрсеналАрсенал
Італія. Серія А, 34 тур
28 квітня 2024
16:00 Болонья Болонья -:- УдінезеУдінезе
Німеччина. Бундесліга, 31 тур
28 квітня 2024
16:30 Боруссія Менхенгладбах Боруссія Менхенгладбах -:- Уніон БерлінУніон Берлін
Іспанія. Ла Ліга, 33 тур
28 квітня 2024
17:15 Гранада Гранада -:- ОсасунаОсасуна
Франція. Ліга 1, 31 тур
28 квітня 2024
18:05 Ренн Ренн -:- БрестБрест
Німеччина. Бундесліга, 31 тур
28 квітня 2024
18:30 Майнц Майнц -:- КельнКельн
Англія. Прем'єр-ліга, 35-й тур
28 квітня 2024
18:30 Ноттінгем Форест Ноттінгем Форест -:- Манчестер СітіМанчестер Сіті
Італія. Серія А, 34 тур
28 квітня 2024
19:00 Наполі Наполі -:- РомаРома
19:00 Аталанта Аталанта -:- ЕмполіЕмполі
Іспанія. Ла Ліга, 33 тур
28 квітня 2024
19:30 Вільярреал Вільярреал -:- Райо ВальєканоРайо Вальєкано
Франція. Ліга 1, 31 тур
28 квітня 2024
20:00 Ліон Ліон -:- МонакоМонако
Німеччина. Бундесліга, 31 тур
28 квітня 2024
20:30 Дармштадт Дармштадт -:- ГайденгаймГайденгайм
Італія. Серія А, 34 тур
28 квітня 2024
21:45 Дженоа Дженоа -:- КальяріКальярі
21:45 Фіорентина Фіорентина -:- СассуолоСассуоло
Іспанія. Ла Ліга, 33 тур
28 квітня 2024
22:00 Реал Бетіс Реал Бетіс -:- СевільяСевілья
Франція. Ліга 1, 31 тур
28 квітня 2024
22:00 Марсель Марсель -:- ЛансЛанс

Обновлено: 13:50 28.04.2024

Телепрограмма

СТБ
09:15 - "МастерШеф", 13 сезон, 12 эп.
13:45 - "Супермама", 7 сезон, 29 эп.
14:50 - "Супермама", 7 сезон, 30 эп.
15:50 - "Супермама", 7 сезон, 31 эп.
Sport 1
13:30 -  Баскетбол. Чемпионат Испании. АБК Лига. Реал - Обрадойро. Прямая трансляция.
15:30 - Футбол. Чемпионат Венгрии. Высшая лига. ДВТК - Кечкемет.
17:20 - Автоспорт. Going Pro SRO Euro GT, 4 эп.
18:00 -  Футбол. Чемпионат Австрии. Бундеслига. Ред Булл Зальцбург - Штурм. Прямая трансляция.
ICTV
13:00 - "Единые новости". Телемарафон.
14:00 - "Единые новости". Телемарафон.
15:00 - "Единые новости". Телемарафон.
16:00 - "Единые новости". Телемарафон.
Кинопремьера
12:40 - Х/ф "Оружие".
14:00 - Х/ф "Криминальный город 2".
15:45 - Х/ф "Криминальный город: Разборки в Пусане".
17:30 - Х/ф "Черный шум".
Вся телепрограмма

Мы в Вконтакте

Мы в Facebook

Голосование

Сколько телевизоров у Вас дома?

1
2
3
4
5
6
7

Случайное фото

Sat-integral club

Re: ПО Sat-Integral S-1218-28HD / S-1248-58-68HD / S-1311 HD COMBO v3.42

Цитата: Vidok от Сегодня в 07:28:18добре що можна прописати шість плейлистів платний і безкоштовних ...

Re: ПО Sat-Integral S-1432 HD COMBO/S-1412 HD ROCKET версии 1.32/1.86

Цитата: Yuriy Protas от Сегодня в 07:29:45У мене єсть маленький телевізор,прикріпив до нього 1218 і ...

Re: ПО Sat-Integral S-1432 HD COMBO/S-1412 HD ROCKET версии 1.32/1.86

Цитата: SSK5230 от Сегодня в 07:04:54ещё раз напишу за ресиверы 1218 и 1228. У них можно прописать ...

Re: ПО Sat-Integral S-1218-28HD / S-1248-58-68HD / S-1311 HD COMBO v3.42

Цитата: SSK5230 от Сегодня в 07:22:26скажу так, ютубом никогда не заморачивался я не пытался ...

Re: ПО Sat-Integral S-1218-28HD / S-1248-58-68HD / S-1311 HD COMBO v3.42

Цитата: Vidok от Сегодня в 07:12:24і ще коли заходжу в ютуб подивитись якийсь фільм я завжди ...

PHP: mail() через внешние SMTP msmtp

Ситуация следующая. ...

webhook telegram Read timeout expired

Вы выполняете ...