15.02.2014, 13:40 | #1 |
Senior Member
|
CyberWrt модуль "Школьник-4"
Школьник-4
Музыкальный программируемый школьный звонок Текущая версия модуля: 0.2.5186.21677 Текущий этап: Опытная эксплуатация. Архив: schoolbell-0.2.5186.21677.zip Исходники на github: https://github.com/ViacheslavMezentsev/schoolbell Статья на хабре: Музыкальный программируемый школьный звонок «Школьник-4» Преимущества: - замена человека, всегда точная подача звонков; - более приятная психологическая атмосфера в школе; - возможность настройки управления через локальную сеть или WiFi (необходима квалификация); - настройка звонка осуществляется через браузер смартфона, планшета, ноутбука или ПК; - работа в ручном режиме (выбранное расписание) или автоматическом - по годовому плану. Недостатки: - требуется наличие системы проводного вещания (звонок подключается к свободному входу усилителя); - предустановлено 5 мелодий (обычно больше не требуется), возможности загружать свои через интерфейс пока нет; - роутер, на котором основан звонок, не имеет возможности сохранять время при выключении питания, но может синхронизироваться через сеть, если настроен для работы в сети, где есть выход в Интернет. Поэтому при включении нужно выполнить операцию синхронизации через интерфейс. - доступно для изменения 4 произвольных расписания (в будущем появится возможность добавлять произвольное количество, хотя этого обычно не требуется); Порядок работы 1. Устанавливаете модуль или собираете его самостоятельно для своей системы. 2. Редактируете расписания, сохраняете. 3. Составляете годовой план, сохраняете. 4. Включаете автоматический режим, сохраняете. 5. Кнопка Перезапуск. Примечание. Если роутер не подключён к локальной сети или по другой причине не может синхронизироваться через сеть для установки времени, то эту операцию нужно выполнить вручную (кнопка Синхронизировать). Изменить часовой пояс можно при помощи модуля Часовые пояса. Файлы action.cgi — обработчик post-запросов от странички; index.cgi — необходим как часть модуля CyberWrt; json.cgi — парсер JSON на shell-скрипте; scheduler.cgi — формировать задания для crond; main.html — основная страничка; style.css — стили для вкладок; jquery-1.11.0.min.js — библиотека jQuery; main.js — содержит классы для работы с объектами на страничке: расписаниями, настройками, планом и т.д. webtoolkit.base64.js — кодек Base64; *.json — конфигурационные файлы; *.mp3 — мелодии; log.txt — журнал сообщений, циклически перезаписывается Последний раз редактировалось uni; 29.11.2014 в 18:51. Причина: Обновление модуля |
15.02.2014, 18:20 | #3 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
Re: CyberWrt модуль "Школьник-4"
Сообщите когда модуль будет готов, я его в репозиторий размещу
|
16.02.2014, 22:05 | #4 |
Senior Member
|
Re: CyberWrt модуль "Школьник-4"
Хочу рядом с выбранной мелодией вставить мелкий флеш-плеер и не пойму как. Может кто знает? Простая вставка кода не работает (на картинке ниже около первой записи справа после плюсика пустое место), не знаю с чем связано, может с правами на файлы. Плеер должен загружаться локально.
Вот плеер: http://flash-mp3-player.net/players/maxi/ Вот код: Код:
<object type="application/x-shockwave-flash" data="/medias/player_mp3_maxi.swf" width="25" height="20"> <param name="movie" value="/medias/player_mp3_maxi.swf"> <param name="FlashVars" value="mp3=/medias/ca_colle.mp3&showslider=0&width=25"> </object>
__________________
Россия навсегда! |
17.02.2014, 20:21 | #5 |
Senior Member
|
Re: CyberWrt модуль "Школьник-4"
Я неправильно относительный путь указывал. Теперь работает.
Код:
td = document.createElement( "td" ); td.innerHTML = '<object type="application/x-shockwave-flash" data="/modules/schoolbell/player_mp3_maxi.swf" width="25" height="20">' + '<param name="movie" value="/modules/schoolbell/player_mp3_maxi.swf">' + '<param name="FlashVars" value="mp3=/modules/schoolbell/1.mp3&showslider=0&width=25">' + '</object>';
__________________
Россия навсегда! |
18.02.2014, 12:06 | #6 |
Senior Member
|
Re: CyberWrt модуль "Школьник-4"
Для проигрывания мелодии средствами браузера можно использовать HTML5.
Код:
function Play( file ) { var player = document.createElement( 'audio' ); player.src = file; player.play(); // Тестирование поддержки новых тегов HTML5. //var test_audio= document.createElement("audio"); //try and create sample audio element //var test_video= document.createElement("video"); //try and create sample video element //var mediasupport={audio: (test_audio.play)? true : false, video: (test_video.play)? true : false}; // //alert("Audio Element support: " + mediasupport.audio + "\n" + "Video Element support: " + mediasupport.video ); } Код:
inp = document.createElement( "input" ); inp.type = 'button'; inp.value = '>'; inp.setAttribute( 'onclick', 'Play( "/modules/schoolbell/" + this.parentNode.children[0].value + ".mp3" );' );
__________________
Россия навсегда! |
18.02.2014, 17:10 | #7 |
Senior Member
|
Re: CyberWrt модуль "Школьник-4"
Доделал планировщик.
Осталось доработать - автоматическую смену расписания каждый день, согласно плана; - установку времени/зоны из браузера; - доработка предварительных звонков (у меня проблемы с арифметикой и условиями в скриптах). Вообще, писать модули на скриптах очень сложно. Причём, чем сложнее модуль, тем труднее его отладка. Не думаю, что этим способом можно построить надёжную систему. Средство программирования должно обеспечивать пошаговую отладку и просмотр состояния/переменных системы. JSON очень удобен для хранения конфигурационных файлов и файлов с данными.
__________________
Россия навсегда! |
18.02.2014, 22:30 | #8 |
Senior Member
|
Re: CyberWrt модуль "Школьник-4"
Выкладываю предварительную версию исходников модуля. Добавлены вкладки.
__________________
Россия навсегда! Последний раз редактировалось uni; 18.02.2014 в 22:34. |
18.02.2014, 22:37 | #9 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
Re: CyberWrt модуль "Школьник-4"
Выкладывать в репозиторий или еще рано?
|
18.02.2014, 22:45 | #10 |
Senior Member
|
Re: CyberWrt модуль "Школьник-4"
Если можно, то попробовать протестировать. Выкладывать ещё рано, т.к. некоторые вещи не доделаны:
- восстановление времени из браузера; - более удобная навигация между расписаниями (сейчас нужно в настройках выбрать нужное, только потом его можно увидеть на вкладке, что не очень удобно). В целом же, по идее, это рабочая версия. Да, кстати, надо ещё номер версии добавить для модуля.
__________________
Россия навсегда! |
Здесь присутствуют: 3 (пользователей: 0 , гостей: 3) | |
|
|