vaporic / laravel-zoom
Laravel Zoom 包
Requires
- php: ^7.1
- firebase/php-jwt: ^5.0
- guzzlehttp/guzzle: ~6.0|~5.0|~4.0
- illuminate/support: ^5.2
Requires (Dev)
- orchestra/testbench: ^4.0
- phpunit/phpunit: ^8.0
README
用于管理 Laravel 中 Zoom API 的包
安装
您可以通过 composer 安装此包
composer require vaporic/laravel-zoom
服务提供者应自动注册 For Laravel > 5.4。
对于 Laravel < 5.5,打开 config/app.php 并在 providers 数组中追加
vaporic\Zoom\Providers\ZoomServiceProvider::class
配置文件
发布配置文件
php artisan vendor:publish --provider="vaporic\Zoom\Providers\ZoomServiceProvider"
这将在您的 config 目录中创建一个 zoom/config.php,您可以在其中添加 api_key 和 api_secret 的值。
使用方法
一切均已设置,以与 Laravel 语法相似。
不幸的是,Zoom API 并非非常统一,有点杂乱无章,因此目前有一些技巧可以使它正常工作。我们将重构和改进这一点。
我们使用关系,因此您需要检查 Zoom API,例如,要获取会议或网络研讨会列表,您需要传递一个用户 ID。我们使用一些关系魔法以更 Laravel 的方式实现这一点。
要获取会议列表
$zoom = new \vaporic\Zoom\Zoom; $meetings = $zoom->user->find('test@domain.com')->meetings()->all();
查找所有
查找所有函数返回 Laravel Collection,因此您可以使用所有 Laravel Collection 魔法
$zoom = new \vaporic\Zoom\Zoom; $users = $zoom->user->all();
过滤
API 中可以过滤结果的情况非常少,但您可以使用 where 函数。请再次查看 API 文档,了解您可以在哪里添加查询到请求。执行操作的方式如下
$zoom = new \vaporic\Zoom\Zoom; $thing = $zoom->thing->where('Name', '=', 'Test Name')->get();
您也可以仅传递名称和值,如果它需要等于
$zoom = new \vaporic\Zoom\Zoom; $thing = $zoom->thing->where('Name', 'Test Name')->get();
要获取单个项目,请使用 'first' 方法
$zoom = new \vaporic\Zoom\Zoom; $thing = $zoom->thing->where('Name', 'Test Name')->first();
按 ID 查找
就像 Laravel 一样,我们可以使用 'find' 方法返回 ID 的单个匹配结果。对于用户/注册者/评委,您也可以使用电子邮件以及 ID。
$zoom = new \vaporic\Zoom\Zoom; $meeting = $zoom->meeting->find('000000000');
创建条目
我们可以使用 save 函数创建和更新记录,以下是一个创建的完整 save 脚本。
$user = $zoom->user->create([ 'name' => 'Test Name', 'first_name' => 'First Name', 'last_name' => 'Last Name', 'email' => 'test@test.com', 'password' => 'secret', 'type' => 1 ]); $meeting = $user->meetings()->create([ 'type' => '2', 'start_time' => '2019-06-29T20:00:00Z' ]); $registrant = $meeting->registrants()->create([ 'email' => 'registratn@domain.com', 'first_name' => 'Test', 'last_name' => 'Registrant' ]);
还有一些用于添加子对象的辅助函数
$meeting = $zoom->meeting->find('000000000'); $recurrance = $zoom->recurrance->create(['fields' => 'values']); $meeting->addRecurrance($recurrance); $meeting->save();
资源
我们涵盖了主要资源
Meetings
Panelists
Registrants
Users
Webinars
但一些也有子资源,例如
Recurrance
Occurance
Settings (for meetings and webinars)
Tracking Fields
我们计划随着时间的推移添加额外的资源/子资源
变更日志
请参阅 变更日志 了解最近更改的更多信息。
贡献
请参阅 贡献指南 了解详细信息。
安全性
如果您发现任何安全相关的问题,请通过电子邮件 colin@macsi.co.uk 而不是使用问题跟踪器。
鸣谢
许可
MIT 许可证(MIT)。有关更多信息,请参阅 许可文件。