capkovic / sknic-api
Automating operations on sk-nic.sk webpage.
This package's canonical repository appears to be gone and the package has been frozen as a result.
Installs: 2 299
Dependents: 0
Suggesters: 0
Security: 0
Stars: 9
Watchers: 3
Forks: 4
Open Issues: 1
This package is not auto-updated.
Last update: 2024-02-12 23:29:03 UTC
README
Installation
add this to composer.json
"require": {
"capkovic/sknic-api": "dev-master"
}
Domain info
$api = new \sknic\SknicDomainInfo(); $api->setUsername('login'); $api->setPassword('pass'); $api->setDomain('sk-nic.sk'); $api->loadDomainInfo(); echo $api->getRegistrar(); echo $api->getOwner(); echo $api->getState(); echo $api->getExpirationDate();
Register domain
$api = new \sknic\SknicRegister(); $api->setUsername('login'); $api->setPassword('pass'); $api->waitForLock(); // aquire lock, so other proccesses can't use this session try { $api->registerDomain('newdomain', 'ABCD-0001'); } catch (Exception $e) { var_dump($e); // error via exception } $api->unlock();
Pay domain - collective invoice
$api = new \sknic\SknicPay(); $api->setUsername('login'); $api->setPassword('pass'); $api->waitForLock(); try { $api->payDomain('newdomain'); } catch (Exception $e) { var_dump($e); } $api->unlock();
Pay domain - variables from Proforma for external processing
$api = new \sknic\SknicPay(); $api->setUsername('login'); $api->setPassword('pass'); $api->waitForLock(); try { echo $api->getDomainPrice('domain'); echo $api->getProformaPrice('domain'); echo $api->getProformaVariableSymbol('domain'); } catch (Exception $e) { var_dump($e); } $api->unlock();
- getDomainPrice - Price from generated Invoice
- getProformaPrice - Price from proforma (this price didn't include discounts)
- getProformaVariableSymbol - Variable symbol for Wire transfer
NS change
$api = new \sknic\SknicNsChange(); $api->setUsername('login'); $api->setPassword('pass'); $api->waitForLock(); try { $api->change('newdomain', array('nserver1'=>'ns1.mynameserver.sk')); } catch (Exception $e) { var_dump($e); } $api->unlock();
Owner change
$api = new \sknic\SknicOwnerChange(); $api->setUsername('login'); $api->setPassword('pass'); $api->waitForLock(); try { $api->change('mydomain', 'ABCD-0001'); $pdf = $api->getPdf(); // form to sign } catch (Exception $e) { var_dump($e); } $api->unlock();
Transfer (registrator change)
$api = new \sknic\SknicTransfer(); $api->setUsername('login'); $api->setPassword('pass'); $api->waitForLock(); try { $api->change('mydomain'); $pdf = $api->getPdf(); // form to sign } catch (Exception $e) { var_dump($e); } $api->unlock();
Using multiple sessions and locks
Add these lines after you instantiate Sknic... class:
$storage = new \sknic\FileSessionStorage(); $storage->setFilePath('/tmp/sknic_session_2'); $api->setSessionStorage($storage);
default session storage and lockfile is in /tmp/sknic_sessions