if (!filter_var(network::getNetworkAccess('external', 'ip'), FILTER_VALIDATE_IP) && network::getNetworkAccess('external', 'ip') != '') { $return['jeedom::url'] = network::getNetworkAccess('internal'); } foreach (plugin::listPlugin(true) as $plugin) { if ($plugin->getAllowRemote() == 1) { $return['plugin'][] = $plugin->getId(); } } $address = isset($params['address']) && $params['address'] != '' ? $params['address'] : getClientIp(); config::save('jeeNetwork::master::ip', $address); config::save('jeeNetwork::master::apikey', $params['apikey_master']); config::save('jeeNetwork::slave::id', $params['slave_id']); if (config::byKey('internalAddr') == '') { config::save('internalAddr', $params['slave_ip']); } jeeNetwork::testMaster(); $jsonrpc->makeSuccess($return); } if ($jsonrpc->getMethod() == 'jeeNetwork::reload') { foreach (plugin::listPlugin(true) as $plugin) { try { $plugin->launch('slaveReload'); } catch (Exception $ex) { } } $jsonrpc->makeSuccess('ok'); } if ($jsonrpc->getMethod() == 'jeeNetwork::halt') { jeedom::haltSystem(); $jsonrpc->makeSuccess('ok'); }