Skip to content

MinaWilliam/zoom-api

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel package for Zoom video conferencing

Latest Version on Packagist Total Downloads

Package to manage the Zoom API in Laravel

Installation

You can install the package via composer:

composer require minawilliam/zoom-api

The service provider should automatically register for Laravel > 5.4.

For Laravel < 5.5, open config/app.php and, within the providers array, append:

MinaWilliam\Zoom\Providers\ZoomServiceProvider::class

Configuration file

Publish the configuration file

php artisan vendor:publish --provider="MinaWilliam\Zoom\Providers\ZoomServiceProvider"

This will create a zoom/config.php within your config directory, where you add value for api_key and api_secret.

Usage

To get a list of user meetings or webinars

$zoom = new \MinaWilliam\Zoom\Zoom();
$meetings = $zoom->meetings->list('zoomUserId');
$webinars = $zoom->webinars->list('zoomUserId');

Find all

To get a list of all users

$zoom = new \MinaWilliam\Zoom\Zoom();
$users = $zoom->users->list();

Creating Items

We can a user by passing an array of user details

$user = $zoom->users->create([
    'name' => 'Test Name',
    'first_name' => 'First Name',
    'last_name' => 'Last Name',
    'email' => 'test@test.com',
    'password' => 'secret',
    'type' => 1
]);
    
$webinar = $zoom->webinars->create('zoomUserId', [
    'topic' => 'string',
    'agenda' => 'string',
    'type' => 'integer', // 5 - Webinar, 6 - Recurring webinar with no fixed time, 9 - Recurring webinar with a fixed time.
    'start_time' => $start_at->toDateTimeLocalString(), // Webinar start time in GMT/UTC.
    'timezone' => $start_at->tzName, // webinar timezone
    'duration' => 'integer' // duration in minutes,
    'password' => 'string' // zoom webinar password,
]);

Update Items

We can a user by passing an array of user details

$webinar = $zoom->webinars->update('webinarId', [
    'topic' => 'string',
    'agenda' => 'string',
]);

//end webinar/meeting by updating its status.
$zoom->webinars->updateStatus('webinarId', 'end')
$zoom->meetings->updateStatus('meetingId', 'end')

RESOURCES

We cover the main resources

users 
   methods (list, retrieve, create, update, updatePassword, remove, assistantsList, addAssistant, deleteAssistants, deleteAssistant, deletesSchedulers, deletesScheduler)
meetings 
    methods (list, retrieve, create, update, updateStatus, remove, records)
mebinars
    methods (list, retrieve, create, update, updateStatus, remove, records)

We aim to add additional resources/sub-resources over time

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email mwfayez@gmail.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

About

PHP/Laravel package and SDK for communicating with Zoom APIs: users, meetings, and webinars

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%