IO-EPP

 view release on metacpan or  search on metacpan

lib/IO/EPP/IRRP.pm  view on Meta::CPAN

package IO::EPP::IRRP;

=encoding utf8

=head1 NAME

IO::EPP::IRRP

=head1 SYNOPSIS

    use IO::EPP::IRRP;

    # Parameters for IO::Socket::SSL
    my %sock_params = (
        PeerHost        => 'epp.ispapi.net',
        PeerPort        => 700,
        Timeout         => 30,
    );

    # Create object, get greeting and call login()
    my $conn = IO::EPP::IRRP->new( {
        user => 'login',
        pass => 'xxxxx',
        sock_params => \%sock_params,
        test_mode => 0, # real connect
    } );

    # Check domain
    my ( $answ, $code, $msg ) = $conn->check_domains( { domains => [ 'info.name', 'name.info' ] } );

    # Call logout() and destroy object
    undef $conn;

=head1 DESCRIPTION

Work with iRRP/iDotz/Hexonet epp api:

A large number of add-ons, but all special data is passed through the key-value extension

Some of the transfer Functions have been replaced with the key-value extension

To change the contacts of many zones you need to use trade

Description of EPP from iRRP/Hexonet:
L<https://wiki.hexonet.net/wiki/EPP_examples>

Special EPP functions, as Query*List:
L<http://www.irrp.net/document.pdf>
(domain, contact, transfer, zone, event, nameserver, accounting)

TLD lists: L<https://wiki.hexonet.net/wiki/Main_Page>  and New GTLD  L<https://wiki.hexonet.net/wiki/NewTLD_Main_Page>

=cut

use IO::EPP::Base;
use parent qw( IO::EPP::Base );

use strict;
use warnings;

my $kv_ext = 'xmlns:keyvalue="http://schema.ispapi.net/epp/xml/keyvalue-1.0" xsi:schemaLocation="http://schema.ispapi.net/epp/xml/keyvalue-1.0 keyvalue-1.0.xsd"';

sub make_request {
    my ( $action, $params ) = @_;

    my ( $self, $code, $msg, $answ );

    unless ( $params->{conn} ) {
        $params->{sock_params}{PeerHost} ||= 'epp.ispapi.net';
        $params->{sock_params}{PeerPort} ||= 700;

        ( $self, $code, $msg ) = __PACKAGE__->new( $params );



( run in 0.688 second using v1.01-cache-2.11-cpan-39bf76dae61 )