Перейти до

Рекомендованные сообщения

Опубликовано:

Власне є такий скрипт, крутиться на dreambox dm500

#!/bin/sh

STARTDELAY=25

PINGHOST="192.168.0.35"

PINGDELAY=15

START_BTN_SET="401:0:0:300 4:0:0:300 108:0:0:300 352:2:600:0"

STOP_BTN_SET="1:3:300:0"

START_TIME=1200
END_TIME=1300

time_is_range() {
    local CURTIME=`date +%k%M`
    if [ $CURTIME -lt $START_TIME ] || [ $CURTIME -ge $END_TIME ]; then
        return 1
    fi
    return 0
}

check_connect() {
    if ! time_is_range; then return 1; fi
    if [ "$1" = "TRUE" ]; then
        while ping -c 1 "$PINGHOST" 2>/dev/null 1>&2; do
            sleep $PINGDELAY
            if ! time_is_range; then return 1; fi
        done
    elif [ "$1" = "FALSE" ]; then
        while ! ping -c 1 "$PINGHOST" 2>/dev/null 1>&2; do
            sleep $PINGDELAY
            if ! time_is_range; then return 1; fi
        done
    fi
    return 0
}

# поспим немного до полного запуска энигмы
sleep $STARTDELAY

# запускаем бесконечный цикл
while : ; do
    # если нет конекта, то ждем пока не появиться
    if check_connect FALSE; then
        # запускаем dreamnetcast...
        /var/bin/rc.sh $START_BTN_SET
        # и переодично проверяем соединение...
        check_connect TRUE
        # если разорвалось останавливаем dreamnetcast...
        /var/bin/rc.sh $STOP_BTN_SET
    else
        sleep 10
    fi
    # и повторяем бесконечный цикл сначала
done

потрібно, щоб він працював не в доин проміжок часу як зараз, а в декількох...

Хто допоможе?

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    • Немає користувачів, що переглядають цю сторінку.
×
×
  • Створити нове...