Устройства Online

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Alex
Сообщения: 2357
Зарегистрирован: Пт апр 20, 2012 12:53 pm
Благодарил (а): 42 раза
Поблагодарили: 262 раза

Устройства Online

Сообщение Alex » Вт апр 24, 2012 6:14 pm

Как бы статус устройства со странички «Устройства Online» прицепить к объекту и (или) вывести,например, на «Домашнюю страницу»?
Vit
Сообщения: 867
Зарегистрирован: Вт янв 17, 2012 12:31 pm
Благодарил (а): 121 раз
Поблагодарили: 78 раз

Re: Устройства Online

Сообщение Vit » Чт апр 26, 2012 12:22 pm

Alex писал(а):Как бы статус устройства со странички «Устройства Online» прицепить к объекту и (или) вывести,например, на «Домашнюю страницу»?
1.Прицепить к объекту можно прописав в коде команду
sg('Объект.Свойство','значение');


2.Вывести значение на "Домашнюю страницу"

%Объект.Значение%

пробуйте, по возможности выкладывайте скрины и описание что реализуете и что получается.
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 76 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Устройства Online

Сообщение sergejey » Чт апр 26, 2012 4:07 pm

Боюсь, что прямого обращения к статусу устройств нету. Как вариант прописать код на изменение статуса устройства, чтобы этот код сохранялся в глобальное свойство, а далее использовать его там где нужно.

Например, код при входе устройства в статус offline:

Код: Выделить всё

sg("ThisComputer.MyDeviceStatus","offline");
При входе в online:

Код: Выделить всё

sg("ThisComputer.MyDeviceStatus","online");
ну и дальше можно использовать это свойство как говорит Виталий где угодно

%ThisComputer.MyDeviceStatus% -- в меню к примеру

или в коде скриптов:

Код: Выделить всё

if (gg("ThisComputer.MyDeviceStatus")=="online") {
 // какое-то действие
}
P.S. "gg" -- от getGlobal, "sg" -- от setGlobal (чтение/установка значений свойств объекта)
За это сообщение автора sergejey поблагодарил:
Samir77 (Вс июл 01, 2018 8:32 pm)
Рейтинг: 1.16%

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Alex
Сообщения: 2357
Зарегистрирован: Пт апр 20, 2012 12:53 pm
Благодарил (а): 42 раза
Поблагодарили: 262 раза

Re: Устройства Online

Сообщение Alex » Чт апр 26, 2012 4:09 pm

Всё понятно, спасибо.
Теперь проблема с самой функцией "Устройства Online". Работает как-то неадекватно.

Настраиваем (в этот момент контролируемое устройство включено) — всё нормально.
Отключаем устройство — пишет "offline" - всё правильно.
Через 10-20 секунд показывает "статус неизвестен" - хотя по идее должен быть «статус offline».
Ещё через 5-10 секунд показывает "статус online”, хотя устройство всё так же отключено
?!
raptorialfungus
Сообщения: 75
Зарегистрирован: Чт ноя 29, 2012 4:13 pm
Благодарил (а): 0
Поблагодарили: 9 раз

Re: Устройства Online

Сообщение raptorialfungus » Ср дек 05, 2012 11:27 am

Хотелось бы развить данную тему.
Как все-таки в элементы "Меню управления" добавлять код?
Например, я делаю следующий элемент.
Изображение
Правильный алгоритм такой:
1. перебрать в коде объекты класса Hosts
Изображение
2. отобразить кнопку с именем name и цветом в зависимости от значения свойства status
Как? Написать свой модуль и потом [#module name="hostsonline"#]?
Или можно более просто? Как хотя бы написать простое условие?
if (gg('PC.status')) {
выводим зеленую кнопку
}

Сейчас я в "Устройства Онлайн" добавил вот такие коды в действия при переходе в Online/Offline.
setGlobal('PC.status',1);
setGlobal('PC.color','green');
setGlobal('PC.updated',date('Y-m-d H:i:s'));
Но это называется "через одно место".
За это сообщение автора raptorialfungus поблагодарил:
Samir77 (Вс июл 01, 2018 8:32 pm)
Рейтинг: 1.16%
Андрей
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 76 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Устройства Online

Сообщение sergejey » Ср дек 05, 2012 11:39 am

Один из вариантов это вставить html-блок в меню с таким кодом: [#module name="pinghosts" mobile="1"#] -- на его месте будет выведен список устройств со статусом online/offline.

Шаблон вывода задан в файле \templates\pinghosts\pinghosts_search_site_mobile.html

только имей в виду, что при обновлении он перепишется поверху, так что если придёшь к симпатичному дизайну в этом файле, то присылай мне -- я его внесу в основной репозиторий кода )
За это сообщение автора sergejey поблагодарил:
Samir77 (Вс июл 01, 2018 8:32 pm)
Рейтинг: 1.16%

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
raptorialfungus
Сообщения: 75
Зарегистрирован: Чт ноя 29, 2012 4:13 pm
Благодарил (а): 0
Поблагодарили: 9 раз

Re: Устройства Online

Сообщение raptorialfungus » Ср дек 05, 2012 11:49 am

sergejey писал(а):Один из вариантов это вставить html-блок в меню с таким кодом: [#module name="pinghosts" mobile="1"#]
Аааа, вот как это было сделано. Как раз на хабре был этот скриншот. Теперь понятно. :D
Просто очень много не задокументировано и не отображено в дефолтном интерфейсе.
Спасибо.

Ну а все-таки, код можно как-то добавлять? Или только переменные использовать?
всякие [#if STATUS ...#]dsfsdfsd[#endif#]?
только имей в виду, что при обновлении он перепишется поверху
OK. Правда я у себя веду лог своих изменений, потому что их уже довольно много.

Сейчас в планах добавить модули по отслеживанию балансов мобильных телефонов и почтовых отправлений. В моем предыдущем варианте "Умного дома" это уже сделано. Очень удобно иметь это перед глазами и оповещать в определенных случаях в общий лог.

Андрей
Андрей
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 76 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Устройства Online

Сообщение sergejey » Ср дек 05, 2012 12:27 pm

raptorialfungus писал(а): Ну а все-таки, код можно как-то добавлять? Или только переменные использовать?
всякие [#if STATUS ...#]dsfsdfsd[#endif#]?
php-код прямо в шаблон нет, но можно его сколько угодно в сам модуль добавлять, в ту часть кода, которая как раз формирует данные для отображения в шаблоне (\modules\pinghosts\pinghosts_search.inc.php). это специально сделано, чтобы не усложнять представление логикой -- вся логика в php, в шаблонах только самый минимум.
raptorialfungus писал(а):
только имей в виду, что при обновлении он перепишется поверху
OK. Правда я у себя веду лог своих изменений, потому что их уже довольно много.
Сейчас в планах добавить модули по отслеживанию балансов мобильных телефонов и почтовых отправлений. В моем предыдущем варианте "Умного дома" это уже сделано. Очень удобно иметь это перед глазами и оповещать в определенных случаях в общий лог.
Ок )
Как будет чем поделиться, так милости просим ))

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Vit
Сообщения: 867
Зарегистрирован: Вт янв 17, 2012 12:31 pm
Благодарил (а): 121 раз
Поблагодарили: 78 раз

Re: Устройства Online

Сообщение Vit » Ср дек 05, 2012 12:34 pm

raptorialfungus писал(а):
sergejey писал(а):Один из вариантов это вставить html-блок в меню с таким кодом: [#module name="pinghosts" mobile="1"#]
Аааа, вот как это было сделано. Как раз на хабре был этот скриншот. Теперь понятно. :D
Просто очень много не задокументировано и не отображено в дефолтном интерфейсе.
Спасибо.

Ну а все-таки, код можно как-то добавлять? Или только переменные использовать?
всякие [#if STATUS ...#]dsfsdfsd[#endif#]?
только имей в виду, что при обновлении он перепишется поверху
OK. Правда я у себя веду лог своих изменений, потому что их уже довольно много.

Сейчас в планах добавить модули по отслеживанию балансов мобильных телефонов и почтовых отправлений. В моем предыдущем варианте "Умного дома" это уже сделано. Очень удобно иметь это перед глазами и оповещать в определенных случаях в общий лог.

Андрей
Выкладывайте интересные вещи,, Сергей внесет их в обновления....будет многим интересно и полезно такое реализовать...
dmw
Сообщения: 469
Зарегистрирован: Вт мар 12, 2013 1:22 am
Благодарил (а): 41 раз
Поблагодарили: 81 раз

Re: Устройства Online

Сообщение dmw » Вт янв 20, 2015 9:38 am

sergejey писал(а):вставить html-блок в меню с таким кодом: [#module name="pinghosts" mobile="1"#] -- на его месте будет выведен список устройств со статусом online/offline.
А есть возможность вывести список только online?
Ответить