TransMatrix писал(а):По факту - $linked_room, это один из объектов класса Rooms!
хм, не нашёл там такого объекта, или не там смотрю?
в каком месте вы нашли этот код с $linked_room ?
Модератор: immortal
TransMatrix писал(а):По факту - $linked_room, это один из объектов класса Rooms!
хм, не нашёл там такого объекта, или не там смотрю?
Код: Выделить всё
$linked_room=$this->getProperty('linkedRoom');
...
if ($linked_room) {
callMethodSafe($linked_room.'.onActivity', array('sensor'=>$ot));
}
Код: Выделить всё
say("сработало действие",2);
Код: Выделить всё
say("событие из метода",2);
Это плата за простоту и уменьшение порога входа в систему.Gelezako писал(а):Ещё большой минус в том что методы вызываются по 2-3 раза подряд. На практике нужно вызвать их только один раз. Кто как с этим борется?
но какое решение, подскажите плизxor писал(а): По неоднократному вызову методов в простых девайсов viewtopic.php?f=7&t=3574&start=210#p61455
Я написал для теста, что бы выяснить везде ли срабатывает. И когда выяснилось что вызов происходит из всех мест, я спросил зачем это. Это реально запутывает. Скорей всего это сделано сознательно, но я не понимл идеи, поэтому и спросил. После вашего комента всё прояснилось.nightwind писал(а):Gelezako Зачем ты написал в трех объектах этот свой say("событие из метода",2) ?
Пиши только там, где нужно.Если важно движение в комнате - пиши в обработчике комнаты, а в других не пиши. Если надо контролировать сколько раз или когда срабатывает датчик (может быть их несколько в комнате) - пиши в обработчике датчика.
Костыль - при первом вызове ставь таймер на сколько там тебе надо секунд, чтобы датчик успел отдергаться и отослать все. И проверяй в самом начале - если таймер установлен - то на выход сразу.Gelezako писал(а): Но осталась проблема с много кратным вызовом метода. (