API-ISPManager
view release on metacpan or search on metacpan
add_database.pl view on Meta::CPAN
use Data::Dumper;
use API::ISPManager;
#
# Script for add databases account to certain user account in ISPManager
#
die "Params required: host / username / password / db_name / db_user / db_password\n" unless scalar @ARGV == 6;
my $host = $ARGV[0];
my $login = $ARGV[1];
my $password = $ARGV[2];
my $db_name = $ARGV[3];
my $db_user = $ARGV[4];
my $db_pass = $ARGV[5];
$API::ISPManager::DEBUG = '';
my %connection_params = (
username => $login,
password => $password,
host => $host,
path => 'manager',
);
my $db_creation_result = API::ISPManager::db::create( {
%connection_params,
name => $db_name,
dbtype => 'MySQL',
add_mailbox.pl view on Meta::CPAN
use Data::Dumper;
use API::ISPManager;
#
# Script for add mail account to certain mail-domain in ISPManager
#
die "Params required: host / username / password / mailbox_name / password\n" unless scalar @ARGV == 5;
my $host = $ARGV[0];
my $login = $ARGV[1];
my $password = $ARGV[2];
my $mailbox_name = $ARGV[3];
my $mailbox_pass = $ARGV[4];
my @raw_mail = split '@', $mailbox_name;
my $name = $raw_mail[0];
my $domain = $raw_mail[1];
$API::ISPManager::DEBUG = '';
my %connection_params = (
username => $login,
password => $password,
host => $host,
path => 'manager',
);
my $mailbox_creation_result = API::ISPManager::mailbox::create( {
%connection_params,
quota => 0,
name => $name,
add_www_domain.pl view on Meta::CPAN
use Data::Dumper;
use API::ISPManager;
#
# Script for add www domains to certain user account in ISPManager
#
die "Params required: host / username / password / domain / docroot\n" unless scalar @ARGV == 5;
my $host = $ARGV[0];
my $login = $ARGV[1];
my $password = $ARGV[2];
my $domain = $ARGV[3];
my $docroot = $ARGV[4];
my $email = '';
my $ip = `/usr/bin/host -t A $host | head -1 | awk '{print \$4}'`;
chomp $ip;
unless ($ip && $ip =~ m/\d+\.\d+\.\d+\.\d+/) {
die "Get ip failed!\n";
}
$API::ISPManager::DEBUG = '';
my %connection_params = (
username => $login,
password => $password,
host => $host,
path => 'manager',
);
my $user_params = API::ISPManager::misc::usrparam( { %connection_params } );
$email = $user_params->{email};
die "Cannot get user email from panel!\n" unless $email;
my $domain_creation_result = API::ISPManager::domain::create( {
%connection_params,
domain => $domain,
alias => "www.$domain",
owner => $login,
admin => $email,
ip => $ip,
ssi => 'on',
php => 'phpfcgi',
ssl => 'on',
sslport => 443,
docroot => $docroot,
} );
if ($domain_creation_result) {
lib/API/ISPManager.pm view on Meta::CPAN
unless ($ip_list && ref $ip_list eq 'ARRAY' && scalar @$ip_list) {
die 'Cannot get ip list from ISP';
}
my $ip = $ip_list->[0];
my $dname = 'perlaround.ru';
my $client_creation_result = API::ISPManager::user::create( {
%{ $connection_params },
name => 'user_login',
passwd => 'user_password',
ip => '11.11.22.33',
preset => 'template_name',
domain => $dname,
});
# Switch off account:
my $suspend_result = API::ISPManager::user::disable( {
%{ $connection_params },
elid => $use_login,
} );
unless ( $suspend_result ) {
die "Cannot suspend account";
}
# Switch on account
my $resume_result = API::ISPManager::user::enable( {
%{ $connection_params },
elid => $user_login,
} );
unless ( $resume_result ) {
die "Cannot suspend account";
}
# Delete account
my $delete_result = API::ISPManager::user::delete( {
%{ $connection_params },
elid => $login,
} );
unless ( $delete_result ) {
die "Cannot delete account";
}
=cut
# Last raw answer from server
t/01-test.t view on Meta::CPAN
'db list test'
);
### Databases end
### DB users
my $fake_db_user = <<DOC;
<?xml version="1.0" encoding="UTF-8"?>
<doc><plid>MySQL->blog</plid><elem><name>blog</name><read/><write/><manage/></elem></doc>
DOC
is_deeply(
API::ISPManager::db_user::list( { %correct_params, elid => 'MySQL->blog' }, $fake_db_user ), {
'data' => {
'read' => {},
'name' => 'blog',
'manage' => {},
'write' => {}
}
},
'test db_user'
);
### DB users end
upload_file.pl view on Meta::CPAN
use Data::Dumper;
use API::ISPManager;
#
# Script for add mail account to certain mail-domain in ISPManager
#
die "Params required: host / username / password / filename /path\n" unless scalar @ARGV == 5;
my $host = $ARGV[0];
my $login = $ARGV[1];
my $password = $ARGV[2];
my $filename = $ARGV[3];
my $plid = $ARGV[4];
$API::ISPManager::DEBUG = 1;
my %connection_params = (
username => $login,
password => $password,
host => $host,
path => 'manager',
);
my $upload_result = API::ISPManager::file::upload( {
%connection_params,
plid => $plid,
file => $filename,
( run in 1.154 second using v1.01-cache-2.11-cpan-49f99fa48dc )