Отпишусь по результатам.
1. Создал класс: PLC в родительском классе SDevices 2. Создал классе в PLC объект i8830_1 (потому, что их будет аж три)
3. В методе statusUpdated объекта i8830_1 прописал код
Код: Выделить всё
$value=getGlobal('i8830_1.status');
for ($i=0;$i<strlen($value);$i++)
{
if ($params['OLD_VALUE'][$i]!=$params['NEW_VALUE'][$i])
{
setGlobal('cn'.$i.'.status',$value[$i]);
}
}
7. Теперь по приходу сообщения от сервера в формате plc1101010 (plc1 - идентификатор ПЛК, остальное - состояние контактов), данные контактов сохраняются в status объекта i8830_1
8. При изменении status метод statusUpdated распихивает их в status объектов cn0, cn1 и т.д.
9. Т.к. на "боевом" ПК уже были заведены Простые устройства, элементы на сцене к ним привязаны и т.д., воспользовался модулем PropTransfer через который собственно статусы cn0, cn1 и т.д. передаю в объекты Простых устройств.
10. Пока всё работает вроде нормально, тестирую дальше.
Всем участвовавшим, СПАСИБО!