commacode / laravel-zoom-integration
Zoom Meeting Integration for Laravel with automatic recording download and embedded viewing.
v1.0.0
2025-05-22 15:21 UTC
Requires
- php: ^8.2
- illuminate/support: ^12.0
README
باكدج Laravel بسيطة وسهلة للاندماج مع Zoom Meeting API. بتسمحلك تعرض أجتماعات Zoom داخل موقعك (داخل iframe)، وكمان تحمل تسجيلات الأجتماعات تلقائيًا لمسار معين عند الانتهاء.
المميزات
- عرض اجتماع Zoom داخل موقع Laravel باستخدام iframe.
- تحميل تلقائي لتسجيلات الميتنجات على السيرفر.
- أوامر Artisan جاهزة لتحميل التسجيلات.
- تكامل سلس مع Laravel 12.
- دعم autoloading و service provider تلقائي.
- ملف إعدادات قابل للتخصيص (config/zoom.php).
المتطلبات
- PHP >= 8.2
- Laravel 12
- حساب Zoom API مع صلاحيات JWT API Key و Secret
التثبيت
أضف الباكدج عبر composer:
composer require commacode/laravel-zoom-integration
إذا ما اشتغلش الـ auto-discovery، سجل الـ Service Provider في config/app.php
كالتالي:
'providers' => [ Commacode\ZoomIntegration\Providers\ZoomServiceProvider::class, ],
انشر إعدادات الباكدج باستخدام الأمر:
php artisan vendor:publish --tag=zoom-config
عدّل ملف الإعدادات config/zoom.php
وضع بيانات Zoom API (JWT) كما يلي:
return [ 'api_key' => env('ZOOM_API_KEY', ''), 'api_secret' => env('ZOOM_API_SECRET', ''), 'recordings_path' => storage_path('app/zoom-recordings'), ];
أضف المتغيرات إلى ملف .env
:
ZOOM_API_KEY=your_zoom_jwt_api_key
ZOOM_API_SECRET=your_zoom_jwt_api_secret
الاستخدام
لعرض ميتنج داخل صفحة Blade:
<x-zoom-meeting :meetingId="$meetingId" />
لتشغيل تحميل تسجيلات الميتنجات تلقائيًا:
php artisan zoom:download-recordings
يمكنك إضافة هذا الأمر في الـ cron job ليعمل تلقائيًا.
الترخيص
MIT © Commacode