Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > CyberWrt

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.02.2014, 13:01   #21
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 44
Сообщений: 573
Вес репутации: 600
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: CyberWrt модуль "Школьник-4"

Хорошо, потестирую, спасибо. Я выше выложил новую версию, видимо её тоже нужно подправить.
Две последние цифры версии - это build и revision в стиле Микрософт. Они означают дату сборки, которая вычисляется по особому алгоритму. Обычно используется в .Net проектах.
__________________
Россия навсегда!
uni вне форума   Ответить с цитированием
Старый 21.02.2014, 13:04   #22
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: CyberWrt модуль "Школьник-4"

А в каких файлах были изменения?
Admin вне форума   Ответить с цитированием
Старый 21.02.2014, 13:07   #23
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 44
Сообщений: 573
Вес репутации: 600
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: CyberWrt модуль "Школьник-4"

В нескольких, я уже точно не помню. scheduler.cgi и main.js точно, ещё в main.html версию всегда меняю. Да, ещё зависимость от модуля Драйвер_Аудио убрал и добавил установку драйверов в свой инсталлятор.
__________________
Россия навсегда!

Последний раз редактировалось uni; 21.02.2014 в 13:10.
uni вне форума   Ответить с цитированием
Старый 21.02.2014, 14:56   #24
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: CyberWrt модуль "Школьник-4"

Файлы поменял
Выкладываю Вам в том виде в котором они лежат на сервере, если будете вносить изменения то желательно в таком виде выкладывать, что бы мне каждый раз не править
И еще обратите внимание что я добавил кусок кода вначале файла index
Этот код при первом старте модуля запускает фаил install.sh
Так же подправил скрипт install.sh так как он не работал
Вложения
Тип файла: rar schoolbell.rar (268.1 Кб, 174 просмотров)
Admin вне форума   Ответить с цитированием
Старый 21.02.2014, 15:13   #25
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 44
Сообщений: 573
Вес репутации: 600
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: CyberWrt модуль "Школьник-4"

Хорошо, спасибо, я посмотрю.
П.С. Расширения нельзя было убирать. В скриптах я полные пути использую, поэтому всё, видимо, поломалось. Теперь код исправлять надо.
__________________
Россия навсегда!

Последний раз редактировалось uni; 21.02.2014 в 15:29.
uni вне форума   Ответить с цитированием
Старый 02.03.2014, 03:36   #26
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 44
Сообщений: 573
Вес репутации: 600
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: CyberWrt модуль "Школьник-4"

Предварительный вариант переделанных исходников с использованием jQuery. Код на js написан в стиле ООП (с использованием классов).

index.cgi на самом деле вообще не нужен. Всю работу по взаимодействию с командной оболочкой можно возложить на асинхронные запросы. У меня за это отвечает скрипт action.cgi, который обрабатывает POST запросы от странички.

Есть небольшая проблема при начальной загрузке данных в скрипт. Почему-то такая инициализация происходит не всегда, хотя если делать это вручную, активируя вкладки, то всё работает нормально.

Текущие исходники сильно отличаются по структуре от ранних вариантов.
Вложения
Тип файла: zip schoolbell_0.1.5174.9751.zip (393.1 Кб, 199 просмотров)
__________________
Россия навсегда!
uni вне форума   Ответить с цитированием
Старый 03.03.2014, 11:12   #27
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: CyberWrt модуль "Школьник-4"

Модуль загрузил на сервер, проверить пока не могу, потому как отъехал по работе
Admin вне форума   Ответить с цитированием
Старый 03.03.2014, 13:36   #28
St@rz
Senior Member
 
Регистрация: 30.05.2011
Возраст: 50
Сообщений: 291
Вес репутации: 0
St@rz is on a distinguished road
По умолчанию Re: CyberWrt модуль "Школьник-4"

Цитата:
Сообщение от uni Посмотреть сообщение
...Есть небольшая проблема при начальной загрузке данных в скрипт. Почему-то такая инициализация происходит не всегда, хотя если делать это вручную, активируя вкладки, то всё работает нормально...
А если загрузку файлов скриптов в head в начале страницы убрать, а раздел script перенести в конец страницы (после div сделать)?

Код:
<head>
<script src="*.js"></script>
</head>
<div></div>
<script language="JavaScript" type="text/javascript"></script>

Последний раз редактировалось St@rz; 03.03.2014 в 13:47.
St@rz вне форума   Ответить с цитированием
Старый 03.03.2014, 15:27   #29
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 44
Сообщений: 573
Вес репутации: 600
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: CyberWrt модуль "Школьник-4"

Да я уже по всякому пробовал. Странное поведение. Когда по вкладкам щёлкаю, то работает нормально, а вот загрузка нормально не проходит. Я убрал post запросы из обработчика window.onload() и поместил их просто выше по тексту. Ведь не обязательно данные загружать только в конце. Они сами по себе, их можно и раньше подгрузить.

Так работает стабильнее.

Код:
<script language="JavaScript" type="text/javascript">

// Расписания.
$.post( '/cgi-bin/modules/schoolbell/action.cgi',
        { action : 'loadschedules' },
        function( data ) { schedules.Load( data ); },
        'json' );

// Мелодии.
$.post( '/cgi-bin/modules/schoolbell/action.cgi',
        { action : 'loadmelodies' },
        function( data ) { melodies.Load( data ); },
        'json' );

// Действия после загрузки страницы.
window.onload = function() {

    // Обновляем первую вкладку.
    $('#TabSheet1').click();

    // Обновление часиков.
    startTime();
}

</script>
Но всё равно, мне нужно показать дату и состояние cron при загрузке странички. Пытаюсь div использовать, но служба иногда даже подвисает при попытке обновлять таким образом при загрузке. Не пойму в чём дело. Видимо, post запросы как-то перемешиваются с данными странички при загрузке, либо скорости не хватает, чтобы успеть на запрос ответить.

Всё хорошо работает при загруженной страничке, а вот инициализацию не могу победить.
__________________
Россия навсегда!
uni вне форума   Ответить с цитированием
Старый 03.03.2014, 15:35   #30
uni
Senior Member
 
Аватар для uni
 
Регистрация: 29.10.2013
Адрес: Екатеринбург, Нижневартовск, Энергодар
Возраст: 44
Сообщений: 573
Вес репутации: 600
uni has a spectacular aura aboutuni has a spectacular aura about
Отправить сообщение для uni с помощью ICQ
По умолчанию Re: CyberWrt модуль "Школьник-4"

Цитата:
Сообщение от Admin Посмотреть сообщение
Модуль загрузил на сервер, проверить пока не могу, потому как отъехал по работе
Пока работает нестабильно. Я выкладываю исходники как пример работы с разными библиотеками. Может быть кому-то будет интересным. Я скажу, когда получится более менее стабильный вариант, чтобы его можно было реально использовать. В выложенном архиве я не исправил scheduler.cgi, он ещё пытается работать по старой схеме, поэтому расписания не будут устанавливаться.

Нашёл тут хорошую комбинацию для фильрации нужного значения в json-файле:
Код:
settings=`/www/cgi-bin/modules/schoolbell/json.cgi -l < /www/modules/schoolbell/settings.json`
mode=$(echo "$settings" | egrep "\[\"mode\"\]" | cut -f2 | egrep -o '[^\"]*')
а settings.json выглядит так:
Код:
{"mode":"1","schedule":"1","preinterval":"2","premelody":"0"}
json.cgi выводит все данные по порядку по строкам, c с помощью egrep фильтруем нужную строку с параметром, cut -f2 берёт второй столбец, т.е. значение параметра. Далее просто убираем кавычки и значение из json получено. Это может показаться сложновато, зато на стороне клиента использование json очень прозрачно.
__________________
Россия навсегда!
uni вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 2 (пользователей: 0 , гостей: 2)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 02:05. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика