public static function createFromDef($_def) { if (!isset($_def['packettype']) || !isset($_def['subtype']) || !isset($_def['id'])) { log::add('rfxcom', 'error', 'Information manquante pour ajouter l\'équipement : ' . print_r($_def, true)); return; } $device = self::devicesParameters($_def['packettype']); if (!isset($device['subtype'][$_def['subtype']])) { log::add('rfxcom', 'info', 'Sous-type non trouvé : ' . print_r($_def, true) . ' dans : ' . print_r($device, true)); return; } $rfxcom = rfxcom::byLogicalId($_def['id'], 'rfxcom'); if (count($rfxcom) > 0) { $rfxcom = $rfxcom[0]; } if (!is_object($rfxcom)) { $eqLogic = new rfxcom(); $eqLogic->setName($_def['id']); } $eqLogic->setLogicalId($_def['id']); $eqLogic->setEqType_name('rfxcom'); $eqLogic->setIsEnable(1); $eqLogic->setIsVisible(1); $eqLogic->setConfiguration('device', $_def['packettype'] . '::' . $_def['subtype']); $eqLogic->save(); $eqLogic->applyModuleConfiguration(); }