1. Go to this page and download the library: Download dp-soft-co/webuzo library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
dp-soft-co / webuzo example snippets
use Webuzo\WebuzoService;
use Webuzo\Facades\Webuzo;
$response = Webuzo::admin()->listUsers();
if ($response->ok()) {
$users = $response->data['users'];
}
// معلومات السيرفر
WebuzoService::getServerInfo();
// إحصائيات المستخدمين
WebuzoService::getStats();
// جلب جميع المستخدمين
WebuzoService::getUsers();
// جلب مستخدم واحد
WebuzoService::getUser('client01');
// جلب مستخدمي ريسيلر
WebuzoService::getUsersByOwner('reseller01');
// إضافة مستخدم جديد مع خطة موارد
$result = WebuzoService::addUser([
'create_user' => 1,
'user' => 'client01',
'domain' => 'client01.com',
'user_passwd' => 'Strong#Pass1',
'cnf_user_passwd' => 'Strong#Pass1',
'email' => '[email protected]',
'owner' => 'reseller01',
'plan' => 'basic',
]);
if ($result['success']) {
WebuzoService::assignResourcePlan('client01', 'users');
}
// إيقاف / تفعيل / حذف مستخدم
WebuzoService::suspendUser('client01');
WebuzoService::unsuspendUser('client01');
WebuzoService::deleteUser('client01');
// قائمة الشهادات
WebuzoService::listCertificates('client01');
// إنشاء / إلغاء / تجديد
WebuzoService::createCertificate('client01', 'client01.com');
WebuzoService::revokeCertificate('client01', 'client01.com');
WebuzoService::renewCertificate('client01', 'client01.com');
// Force HTTPS
WebuzoService::forceHttps('client01', 'client01.com', true); // تفعيل
WebuzoService::forceHttps('client01', 'client01.com', false); // إلغاء
// إنشاء قاعدة بيانات + مستخدم + كل الصلاحيات دفعة واحدة
WebuzoService::createDatabaseWithUser('client01', 'mydb', 'mydbuser', 'StrongPass123');
// النتيجة: database = client01_mydb, db_user = client01_mydbuser
// حذف قاعدة بيانات + مستخدم
WebuzoService::deleteDatabaseWithUser('client01', 'mydb', 'mydbuser');
// إنشاء حساب بريد
WebuzoService::createEmailAccount('client01', 'info', 'client01.com', 'EmailPass123');
// حذف حساب بريد
WebuzoService::deleteEmailAccount('client01', '[email protected]');
// قائمة الكرون جوبز (تحتوي على الـ IDs)
WebuzoService::listCronJobs('client01');
// إنشاء كرون جوب (كل ساعة)
WebuzoService::createCronJob('client01', 'php /home/client01/public_html/artisan schedule:run', '0', '*');
// تعديل كرون جوب
WebuzoService::editCronJob('client01', 3, 'php /home/client01/public_html/artisan schedule:run', '*/5', '*');
// حذف كرون جوب
WebuzoService::deleteCronJob('client01', 3);
// الدخول التلقائي للوحة الأدمن
$result = WebuzoService::adminSsoUrl();
if ($result['success']) {
return redirect($result['url']); // يفتح لوحة الأدمن مباشرة
}
// الدخول التلقائي للوحة مستخدم معين
$result = WebuzoService::userSsoUrl('client01');
if ($result['success']) {
return redirect($result['url']); // يفتح لوحة client01 مباشرة
}
use Webuzo\NetDataService;
// لقطة شاملة للسيرفر (CPU + RAM + Disk + Network + Load + Alerts)
NetDataService::getServerSnapshot();
// معلومات الـ Agent
NetDataService::getInfo();
// استخدام CPU (آخر 60 ثانية)
NetDataService::getCpu(60);
// استخدام RAM
NetDataService::getRam();
// مساحة Disk لكل partition
NetDataService::getDiskSpace();
// Disk I/O (read/write)
NetDataService::getDiskIo();
// استخدام الشبكة
NetDataService::getNetwork();
// Load Average (1m, 5m, 15m)
NetDataService::getLoadAverage();
// التنبيهات النشطة
NetDataService::getAlerts();
// أو جميع التنبيهات
NetDataService::getAlerts(true);
// بيانات أي chart محدد
NetDataService::getChartData('nginx.requests', 300, 60);
// قائمة جميع الـ charts المتاحة
NetDataService::getCharts();
// استهلاك مستخدم معين (bandwidth + disk) من Webuzo
NetDataService::getUserUsage('client01');
use Webuzo\NetDataService;
// لقطة كاملة للسيرفر
Route::get('/netdata/snapshot', fn() => response()->json(NetDataService::getServerSnapshot()));
// CPU
Route::get('/netdata/cpu', fn() => response()->json(NetDataService::getCpu()));
// RAM
Route::get('/netdata/ram', fn() => response()->json(NetDataService::getRam()));
// Disk Space
Route::get('/netdata/disk', fn() => response()->json(NetDataService::getDiskSpace()));
// Network
Route::get('/netdata/network', fn() => response()->json(NetDataService::getNetwork()));
// Load Average
Route::get('/netdata/load', fn() => response()->json(NetDataService::getLoadAverage()));
// Alerts
Route::get('/netdata/alerts', fn() => response()->json(NetDataService::getAlerts()));
// Chart data
Route::get('/netdata/chart/{chart}', fn($chart) => response()->json(NetDataService::getChartData($chart)));
// استهلاك مستخدم
Route::get('/netdata/users/{username}/usage', fn($u) => response()->json(NetDataService::getUserUsage($u)));