Perl استخدام لوحة التحكم: حساب وحدات
لقد صممت وحدات Cpanel::Accounting Perl لإعطاء التطبيقات التي تستخدم Perl طريقة سهلة لإستغلال الحسابات. إذا كنت تتصل مع سرفر بعيد يجب عليك أن تضبط usessl variable إلى القيمة 1. تحتاج هذه الوحدة إلى Net::SSLeay Perl module لكي يتم تنصيبها.
تدعم Cpanel::Accounting الطرق التالية:
New - لتكوين حساب Cpanel::Accounting جديد
showversion - لإظهار أي إصدار من مدير الإستضافة يستخدم السرفر البعيد
listaccts - لإظهار قائمة بالحسابات الفعالة حاليا
listpkgs - لإظهار قائمة بالمجموعات المتوفرة ليتم تكوينها
addpkg - لإضافة مجموعة
editpkg - لتعديم مجموعة
createacct - لتكوين حساب جديد على السرفر
killacct - لإلغاء حساب على السرفر
suspend - إيقاف حساب على السرفر
unsuspend - لإبطال إيقاف حساب على السرفر
فيما يلي عينة من برنامج Perl.
كود PHP:
#!/usr/bin/perl
BEGIN {
push (@INC,"/usr/local/cpanel");
}
use Cpanel::Accounting;
my($whm) = Cpanel::Accounting->new;
$whm->{host} = "localhost";
$whm->{user} = "<USERNAME HERE>";
$whm->{accesshash} = '<REMOTE ACCESS KEY HERE>';
$whm->{usessl} = 1;
my %ACCTS = $whm->listaccts();
if ($whm->{error} ne "") {
print "There was an error while processing your request: Cpanel::Accounting returned [$whm->{error}]\n";
exit;
}
#$name,$hasshell,$bwlimit,$quota,$ip,$cgi,$frontpage,$cpmod,$maxftp,$maxsql,$maxpop,$maxlst,$maxsub,$maxpark,$maxaddon
$response = $whm->editpkg("testpkg2",0,50000,5000,0,1,1,"bluelagoon",10,10,10,10,10,10,10);
if ($whm->{error} ne "") {
print "There was an error while processing your request: Cpanel::Accounting returned [$whm->{error}]\n";
exit;
}
foreach $acct (sort keys %ACCTS) {
@ACCTCT = @{$ACCTS{$acct}};
print "$acct @ACCTCT\n";
}
$response = $whm->killacct("<USERNAME TO TERMINATE>");
if ($whm->{error} ne "") {
print "There was an error while processing your request: Cpanel::Accounting returned [$whm->{error}]\n";
exit;
}
print $response;
my %PKGS = $whm->listpkgs();
if ($whm->{error} ne "") {
print "There was an error while processing your request: Cpanel::Accounting returned [$whm->{error}]\n";
exit;
}
foreach $package (sort keys %PKGS) {
@PKCTS = @{$PKGS{$package}};
print "$package @PKCTS\n";
}
$response = $whm->createacct("<DOMAIN NAME HERE>","<USERNAME HERE>","<PASSWORD HERE>","<PACKAGE HERE>");
if ($whm->{error} ne "") {
print "There was an error while processing your request: Cpanel::Accounting returned [$whm->{error}]\n";
exit;
}
print $response;
$response = $whm->suspend('<USERNAME HERE>');
if ($whm->{error} ne "") {
print "There was an error while processing your request: Cpanel::Accounting returned [$whm->{error}]\n";
exit;
}
print $response . "\n";
$response = $whm->unsuspend('<USERNAME HERE>');
if ($whm->{error} ne "") {
print "There was an error while processing your request: Cpanel::Accounting returned [$whm->{error}]\n";
exit
}
print $response . "\n";