function testAdd($where) { global $PluginSccmSccm, $PluginSccmConfig; $PluginSccmSccm->getDevices($where); $REP_XML = GLPI_PLUGIN_DOC_DIR . '/sccm/xml/'; foreach ($PluginSccmSccm->devices as $device_values) { $PluginSccmSccmxml = new PluginSccmSccmxml($device_values); $PluginSccmSccmxml->setAccessLog(); $PluginSccmSccmxml->setAccountInfos(); $PluginSccmSccmxml->setHardware(); $PluginSccmSccmxml->setOS(); $PluginSccmSccmxml->setBios(); $PluginSccmSccmxml->setProcessors(); $PluginSccmSccmxml->setSoftwares(); $PluginSccmSccmxml->setUsers(); $PluginSccmSccmxml->setNetworks(); $PluginSccmSccmxml->setDrives(); $SXML = $PluginSccmSccmxml->sxml; $SXML->asXML($REP_XML . $PluginSccmSccmxml->device_id . ".ocs"); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $PluginSccmConfig->getField('fusioninventory_url')); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml')); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $SXML->asXML()); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0); curl_setopt($ch, CURLOPT_REFERER, $PluginSccmConfig->getField('fusioninventory_url')); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $ch_result = curl_exec($ch); curl_close($ch); echo "Ajout OK"; } }
static function executeSync() { $REP_XML = GLPI_PLUGIN_DOC_DIR . '/sccm/xml/'; $PluginSccmConfig = new PluginSccmConfig(); $PluginSccmConfig->getFromDB(1); $PluginSccmSccm = new PluginSccmSccm(); if ($PluginSccmConfig->getField('active_sync') == 1) { Toolbox::logInFile('sccm', "Inject start \n", true); $PluginSccmSccm->getDevices(); Toolbox::logInFile('sccm', "getDevices OK \n", true); Toolbox::logInFile('sccm', "Generate XML start : " . count($PluginSccmSccm->devices) . " files\n", true); foreach ($PluginSccmSccm->devices as $device_values) { $PluginSccmSccmxml = new PluginSccmSccmxml($device_values); $PluginSccmSccmxml->setAccessLog(); $PluginSccmSccmxml->setAccountInfos(); $PluginSccmSccmxml->setHardware(); $PluginSccmSccmxml->setOS(); $PluginSccmSccmxml->setBios(); $PluginSccmSccmxml->setProcessors(); $PluginSccmSccmxml->setSoftwares(); $PluginSccmSccmxml->setUsers(); $PluginSccmSccmxml->setNetworks(); $PluginSccmSccmxml->setDrives(); $SXML = $PluginSccmSccmxml->sxml; $SXML->asXML($REP_XML . $PluginSccmSccmxml->device_id . ".ocs"); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $PluginSccmConfig->getField('fusioninventory_url')); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml')); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $SXML->asXML()); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0); curl_setopt($ch, CURLOPT_REFERER, $PluginSccmConfig->getField('fusioninventory_url')); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $ch_result = curl_exec($ch); curl_close($ch); Toolbox::logInFile('sccm', "Ajout OK - " . $PluginSccmSccmxml->device_id . " \n", true); } } else { echo __("Synchronization is disabled by configuration.", "sccm"); } }