teodortalov / citrix
围绕 Citrix - GoToMeeting 和 GoToWebinar API 的 PHP 封装。由 teodortalov/citrix 衍生而来。
This package is auto-updated.
Last update: 2024-08-28 14:35:48 UTC
README
通过 Composer 安装
require "teodortalov/citrix: *"
认证并开始使用只需15秒
您只需要使用 Citrix API 进行认证的消费者密钥,您可以通过在 Citrix 开发者中心 注册来获取。注册并添加您的应用程序后,您将获得 消费者密钥、消费者密钥 和 回调 URL。您需要 消费者密钥 才能使用此库使您的应用程序通过 Citrix 进行认证。
直接认证
除了 消费者密钥 外,对于 直接认证,您还需要您的 用户名 和 密码,这是您用于登录 GoToWebinar.com 的账户。
您可以这样认证到 Citrix,以及您的 GoToWebinar 账户
$client = new \Citrix\Authentication\Direct('CONSUMER_KEY');
$client->auth('USERNAME', 'PASSWORD');
通常,您最需要的是 access_token
和 organizer_key
。您可以这样获取它们
$client->getAccessToken(); //returns your access token
$client->getOrganizerKey(); //returns the organizer key
代码将为您处理所有认证事宜,因此您无需真正担心这一点。
获取即将举行的网络研讨会
为了获取所有即将举行的网络研讨会,您必须这样做
$goToWebinar = new \Citrix\GoToWebinar($client); //@see $client definition above
$webinars = $goToWebinar->getUpcoming();
var_dump($webinars); //this gives you all upcoming webinars
获取过去的网络研讨会
为了获取所有过去的网络研讨会,您必须这样做
$goToWebinar = new \Citrix\GoToWebinar($client); //@see $client definition above
$webinars = $goToWebinar->getPast();
var_dump($webinars); //this gives you all upcoming webinars
如果您想获取网络研讨会的注册/加入 URL,您可以这样做
$webinar = reset($webinars); $webinar->getRegistrationUrl(); //https://attendee.gotowebinar.com/register/456905497806
为网络研讨会注册用户
您可以为网络研讨会轻松注册某人。基本上,您需要做的只是这样
$data = array('email' => 'joe.smith@gmail.com', 'firstName' => 'Joe', 'lastName' => 'Smith');
$consumer = new \Citrix\Entity\Consumer($client);
$consumer->setData($data)->populate();
//register a user for the very first upcoming webinar, @see Getting upcoming webinars
$webinar = reset($webinars);
$webinar->registerConsumer($consumer);
如上所述,$client
您可以从 15秒内认证并开始使用 部分,而 $webinar
您可以从 获取即将举行的网络研讨会 部分。
或者,您可以通过将 webinarKey
和用户数据直接提供给 GoToWebinar
类来为网络研讨会注册用户
$webinarKey = 123123;
$registrantData = array('email' => 'joe.smith@gmail.com', 'firstName' => 'Joe', 'lastName' => 'Smith');
$goToWebinar = new \Citrix\GoToWebinar($client); //@see $client definition above
$goToWebinar->register($webinarKey, $registrantData);
错误处理
代码可以处理错误,但它会静默失败。您可以这样做检查错误
$data = array('email' => 'joe.smith@gmail.com', 'firstName' => 'Joe', 'lastName' => 'Smith');
$consumer = new \Citrix\Entity\Consumer($client);
$consumer->setData($data)->populate();
//register a user for the very first upcoming webinar, @see Getting upcoming webinars
$webinar = reset($webinars);
$registration = $webinar->registerConsumer($consumer);
if($registration->hasErrors()){
//get the first error that occurred and use it as the exception message
throw new \Exception($registration->getError());
}
//no errors, continue...
die('Registration was successful.');
您也可以这样显示/获取所有错误
$registration->getErrors();
您还可以这样推送新的错误
$registration->addError('Something went wrong!!!');
错误处理应在所有地方可用,因此您始终可以调用 hasErrors()
并检查错误。
贡献 - 分支,分支,分支
如果您想帮助维护此项目,或者如果您对库的设计或实现有任何问题或评论,我将很高兴听到您的意见。
即将推出什么?
更多内容,首先是文档,以便您的 IDE 能够工作。单元测试,以及更多来自 Citrix API 的内容。