Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

Для управления ISP Manager применяется предоставляемый этим инструментом API. Ниже приведен скрипт, использующий perl-модуль API::ISPManager. Этот модуль периодически обновляется. Скрипт написан для одной из старых версий ISP Manager, находящейся в эксплуатации у одного из наших клиентов:

Code Block
perl
perl
titleispman.pl
collapsetrueperl
#!/usr/bin/perl -w
use API::ISPManager;
use warnings;

my $connection_params = {
    username => 'ispoperator',
    password => 'mysecretpass',
    host     => 'ispmanager.isp.ru',
    path     => 'manager',
};

if(!$ARGV[0] || !$ARGV[1]) {
    die "ERROR. Not param in ARGV. Use ./ispman.pl on/off user";
    }

my $user_login=$ARGV[1];
if($ARGV[0]  eq "on") {
        my $resume_result = API::ISPManager::user::enable( {
        %{ $connection_params },
        elid => $user_login,
        } );
        unless ( $resume_result ) {
        die "ERROR. Cannot resume account";
      }
    } elsif ($ARGV[0] eq "off") {
        my $suspend_result = API::ISPManager::user::disable( {
        %{ $connection_params },
        elid => $user_login,
        } );
        unless ( $suspend_result ) {
        die "ERROR. Cannot suspend account";
      }
    } else {
    die "ERROR. What do you want from me?.... use ./ispman.pl on/off user";
}

exit(0);

...