Устройства Online
Модератор: immortal
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Устройства Online
Как бы статус устройства со странички «Устройства Online» прицепить к объекту и (или) вывести,например, на «Домашнюю страницу»?
-
- Сообщения: 867
- Зарегистрирован: Вт янв 17, 2012 12:31 pm
- Благодарил (а): 121 раз
- Поблагодарили: 78 раз
Re: Устройства Online
1.Прицепить к объекту можно прописав в коде командуAlex писал(а):Как бы статус устройства со странички «Устройства Online» прицепить к объекту и (или) вывести,например, на «Домашнюю страницу»?
sg('Объект.Свойство','значение');
2.Вывести значение на "Домашнюю страницу"
%Объект.Значение%
пробуйте, по возможности выкладывайте скрины и описание что реализуете и что получается.
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Устройства Online
Боюсь, что прямого обращения к статусу устройств нету. Как вариант прописать код на изменение статуса устройства, чтобы этот код сохранялся в глобальное свойство, а далее использовать его там где нужно.
Например, код при входе устройства в статус offline:
При входе в online:
ну и дальше можно использовать это свойство как говорит Виталий где угодно
%ThisComputer.MyDeviceStatus% -- в меню к примеру
или в коде скриптов:
P.S. "gg" -- от getGlobal, "sg" -- от setGlobal (чтение/установка значений свойств объекта)
Например, код при входе устройства в статус offline:
Код: Выделить всё
sg("ThisComputer.MyDeviceStatus","offline");
Код: Выделить всё
sg("ThisComputer.MyDeviceStatus","online");
%ThisComputer.MyDeviceStatus% -- в меню к примеру
или в коде скриптов:
Код: Выделить всё
if (gg("ThisComputer.MyDeviceStatus")=="online") {
// какое-то действие
}
- Рейтинг: 1.16%
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Устройства Online
Всё понятно, спасибо.
Теперь проблема с самой функцией "Устройства Online". Работает как-то неадекватно.
Настраиваем (в этот момент контролируемое устройство включено) — всё нормально.
Отключаем устройство — пишет "offline" - всё правильно.
Через 10-20 секунд показывает "статус неизвестен" - хотя по идее должен быть «статус offline».
Ещё через 5-10 секунд показывает "статус online”, хотя устройство всё так же отключено
?!
Теперь проблема с самой функцией "Устройства Online". Работает как-то неадекватно.
Настраиваем (в этот момент контролируемое устройство включено) — всё нормально.
Отключаем устройство — пишет "offline" - всё правильно.
Через 10-20 секунд показывает "статус неизвестен" - хотя по идее должен быть «статус offline».
Ещё через 5-10 секунд показывает "статус online”, хотя устройство всё так же отключено
?!
-
- Сообщения: 75
- Зарегистрирован: Чт ноя 29, 2012 4:13 pm
- Благодарил (а): 0
- Поблагодарили: 9 раз
Re: Устройства Online
Хотелось бы развить данную тему.
Как все-таки в элементы "Меню управления" добавлять код?
Например, я делаю следующий элемент.

Правильный алгоритм такой:
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'));
Но это называется "через одно место".
Как все-таки в элементы "Меню управления" добавлять код?
Например, я делаю следующий элемент.

Правильный алгоритм такой:
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
Один из вариантов это вставить html-блок в меню с таким кодом: [#module name="pinghosts" mobile="1"#] -- на его месте будет выведен список устройств со статусом online/offline.
Шаблон вывода задан в файле \templates\pinghosts\pinghosts_search_site_mobile.html
только имей в виду, что при обновлении он перепишется поверху, так что если придёшь к симпатичному дизайну в этом файле, то присылай мне -- я его внесу в основной репозиторий кода )
Шаблон вывода задан в файле \templates\pinghosts\pinghosts_search_site_mobile.html
только имей в виду, что при обновлении он перепишется поверху, так что если придёшь к симпатичному дизайну в этом файле, то присылай мне -- я его внесу в основной репозиторий кода )
- Рейтинг: 1.16%
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 75
- Зарегистрирован: Чт ноя 29, 2012 4:13 pm
- Благодарил (а): 0
- Поблагодарили: 9 раз
Re: Устройства Online
Аааа, вот как это было сделано. Как раз на хабре был этот скриншот. Теперь понятно.sergejey писал(а):Один из вариантов это вставить html-блок в меню с таким кодом: [#module name="pinghosts" mobile="1"#]

Просто очень много не задокументировано и не отображено в дефолтном интерфейсе.
Спасибо.
Ну а все-таки, код можно как-то добавлять? Или только переменные использовать?
всякие [#if STATUS ...#]dsfsdfsd[#endif#]?
OK. Правда я у себя веду лог своих изменений, потому что их уже довольно много.только имей в виду, что при обновлении он перепишется поверху
Сейчас в планах добавить модули по отслеживанию балансов мобильных телефонов и почтовых отправлений. В моем предыдущем варианте "Умного дома" это уже сделано. Очень удобно иметь это перед глазами и оповещать в определенных случаях в общий лог.
Андрей
Андрей
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Устройства Online
php-код прямо в шаблон нет, но можно его сколько угодно в сам модуль добавлять, в ту часть кода, которая как раз формирует данные для отображения в шаблоне (\modules\pinghosts\pinghosts_search.inc.php). это специально сделано, чтобы не усложнять представление логикой -- вся логика в php, в шаблонах только самый минимум.raptorialfungus писал(а): Ну а все-таки, код можно как-то добавлять? Или только переменные использовать?
всякие [#if STATUS ...#]dsfsdfsd[#endif#]?
Ок )raptorialfungus писал(а):OK. Правда я у себя веду лог своих изменений, потому что их уже довольно много.только имей в виду, что при обновлении он перепишется поверху
Сейчас в планах добавить модули по отслеживанию балансов мобильных телефонов и почтовых отправлений. В моем предыдущем варианте "Умного дома" это уже сделано. Очень удобно иметь это перед глазами и оповещать в определенных случаях в общий лог.
Как будет чем поделиться, так милости просим ))
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 867
- Зарегистрирован: Вт янв 17, 2012 12:31 pm
- Благодарил (а): 121 раз
- Поблагодарили: 78 раз
Re: Устройства Online
Выкладывайте интересные вещи,, Сергей внесет их в обновления....будет многим интересно и полезно такое реализовать...raptorialfungus писал(а):Аааа, вот как это было сделано. Как раз на хабре был этот скриншот. Теперь понятно.sergejey писал(а):Один из вариантов это вставить html-блок в меню с таким кодом: [#module name="pinghosts" mobile="1"#]![]()
Просто очень много не задокументировано и не отображено в дефолтном интерфейсе.
Спасибо.
Ну а все-таки, код можно как-то добавлять? Или только переменные использовать?
всякие [#if STATUS ...#]dsfsdfsd[#endif#]?
OK. Правда я у себя веду лог своих изменений, потому что их уже довольно много.только имей в виду, что при обновлении он перепишется поверху
Сейчас в планах добавить модули по отслеживанию балансов мобильных телефонов и почтовых отправлений. В моем предыдущем варианте "Умного дома" это уже сделано. Очень удобно иметь это перед глазами и оповещать в определенных случаях в общий лог.
Андрей
-
- Сообщения: 469
- Зарегистрирован: Вт мар 12, 2013 1:22 am
- Благодарил (а): 41 раз
- Поблагодарили: 81 раз
Re: Устройства Online
А есть возможность вывести список только online?sergejey писал(а):вставить html-блок в меню с таким кодом: [#module name="pinghosts" mobile="1"#] -- на его месте будет выведен список устройств со статусом online/offline.