thedarkwinter / Net-DRI

Perl EPP Client: Net-DRI-0.X_tdw based on Net-DRI-0.96_09
GNU General Public License v2.0
19 stars 15 forks source link

Net-DRI-0.13-tdw


Overview

Net-DRI-0.X-tdw is a fork of Net-DRI from Patrick Mevzek based on Net-DRI-0.96_09 (meta::cpan) that includes support for new gTLDs, as well as a few other experimental changes. While some of these changes might be merged into the main release, there is no guarantee that they will be, or that they will be exactly the same if they do, so please consider this fork "mostly stable", but experimental.


Warning!

!! Since 0.12-tdw (2017-06-28),this fork contains the restructure of DRDs from Net-DRI-0.96_09, meaning that you will need to change your scripts. See http://cpansearch.perl.org/src/PMEVZEK/Net-DRI-0.96_09/Changes, along with the note:

"This version changes almost all DRD module names, you will need to change your scripts. This is a consequence of an old design decision that no DRD module should have a TLD as name. Now, by default a DRD of a TLD registry will have the sponsor name as listed on IANA website."

Fee extension

Based on draft-ietf-regext-epp-fees-06 (fee-0.23)

New gTLD backend providers (RO's)

Afnic, Afilias, Amazon (Neustar), ARI (now Neustar), CoCCA, CentralNIC, CoreNIC, Charleston Road Registry, CNNIC, Donuts, Famous Four Media (Nominet), Fury Registry (CIRA), GMO Registry, KNET, KSRegistry, Minds And Machines (Nominet-MMX), Neustar, Nic.BR, Nic.MX, Nominet, OpenRegistry, Registry-in-a-Box from NicAT, Rightside, SIDN, Tango from KNIPP, TCI, TeleInfo, UniRegistry, Verisign, ZACR

Planned/Possible support for providers

None

Trademark services

TMCH (Deloitte) TMDB (IBM): CNIS and SMDRL only

Added/Updated/Fixed support for ccTLDs

UK, IT, ES, NO, SE/NU (IIS module), BE, EU, DE, CH, ZA, CO, MX, LV, DK, US, PH, CN, AE, NZ, EC, UA, EC, IN, RU, UA, RF, SU, CZ, MW, RO, CR, Afilias (IO AC SH), AfiliasGRS (AG BZ LC MN SC VC), CentralNic-Gateway (AM CX FM LA), CL, FI, ID, SK, IE, JP


NGTLD Usage

The NGTLD "Super-DRD" is intended to work for all new gTLD providers with minimal fuss. In principle you can add the registry by selecting the provider and optionally customise the name and TLDs available. In some cases, traditional DRD's are in still availalble, but they are likely to be outdated.

$dri->add_registry('NGTLD',{clid => '...',provider=>'...',name=>'...', tlds=>[]});
Selecting a back end provider
$dri->add_registry('NGTLD',{clid => 'ClientX',provider=>'Neustar'});
$dri->target('Neustar')->add_current_profile(....);
Backend providers with shared environments

Donuts is an example of a backend that provides a single platform for all their TLDs. Normally only specifying the provider will suite your needs

$dri->add_registry('NGTLD',{clid => 'ClientX',provider=>'donuts'});
$dri->target('donuts')->add_current_profile(....);
Backend providers with dedicated environments

Neustar is an example of a backend provider that provides a dedicated environment per TLD, so you may like to use the TLD as the target name. e.g: add a custom target name, by default this is the back end provider name, but in this instance we select buzz Note, if the name you specified matches one of the TLD's and you have not manually specified the tld list, if will use only this TLD. If the name doesn't match a TLD, it will make all TLD's by the prover available in the DRD

$dri->add_registry('NGTLD',{clid => 'ClientX',provider=>'neustar',name=>'buzz'});
$dri->target('buzz')->add_current_profile(....);

Some TLDs have specific extensions that need to be loaded. In the case of NYC it is required to either set name or tlds parameter in order to load the Nexus extension

$dri->add_registry('NGTLD',{clid => 'ClientX',provider=>'ari',name=>'nyc'}); # using name
$dri->target('nyc')->add_current_profile(....);
$dri->add_registry('NGTLD',{clid => 'ClientX',provider=>'ari',name=>'whatever',tlds=['nyc']}); # using tld
Some experimental ngTLD functions
$rc = $dri->domain_check_claims('test.tld',{phase=>'landrush'});
$lp = $dri->get_info('lp');
$claim_key = ($lp->{'exist'}) ? $lp->{'claim_key'} : undef;

$rc = $dri->domain_check_price('test.tld');
$dri->get_info('is_premium');
$dri->get_info('create_price');