2017 © Pedro Peláez
 

library citrix

Laravel package for Citrix API wrapper for GoToWebinar

image

slakbal/citrix

Laravel package for Citrix API wrapper for GoToWebinar

  • Monday, December 18, 2017
  • by slakbal
  • Repository
  • 1 Watchers
  • 3 Stars
  • 1,493 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 4 Forks
  • 0 Open issues
  • 8 Versions
  • 5 % Grown

The README.md

THIS PACKAGE WILL NOT BE MAINTAINED ANY LONGER, please move over to the new rewrite: https://github.com/slakbal/gotowebinar

Citrix GotoWebinar API Provider for Laravel

This package is a Citrix GotoWebinar API service provider and facade for Laravel 5.1+. It was inspired by Teodor Talov's Citrix API wrapper package., (*1)

Installing

You can use Composer to install the library, (*2)

composer require slakbal/citrix

Find the providers array in the config/app.php file and add the following Service Provider:, (*3)

'providers' => [
  // ...
  Slakbal\Citrix\CitrixServiceProvider::class
];

Now find the aliases array in the same config file and add the following Facade class:, (*4)

'aliases' => [
  // ...
  'GotoWebinar' => Slakbal\Citrix\Facade\GotoWebinar::class
];

Config

Before you can use the Citrix service provider you have configure it. You can create API access keys here: CITRIX Developer portal., (*5)

Note that you need to have an active or trial account for the API to function properly. Just dev credentials alone will not work., (*6)

The provider currently only support Direct authentication. An OAuth2 authentication will be added later also., (*7)

The following environment values are required in your .env file. The provider doesn't publish any config, etc. thus your project stays clean., (*8)

CITRIX_DIRECT_USER=test@test.com
CITRIX_DIRECT_PASSWORD=testpassword
CITRIX_CONSUMER_KEY=123123123123

Usage

Webinar Resource


// Return list of all the Webinars $webinars = GotoWebinar::getAllWebinars(); // Return the list of all upcoming Webinars $webinars = GotoWebinar::getUpcomingWebinars(); // Return list of historical Webinars - date format standard: W3C - ISO 8601 $dateRange = [ 'fromTime' => "2016-01-01T01:00:00Z", 'toTime' => "2016-03-23T20:00:00Z", ]; $webinars = GotoWebinar::getHistoricalWebinars( $dateRange ); // Return a specific Webinar $webinar = GotoWebinar::getWebinar( $webinarKey ); // Create a Webinar - date format standard: W3C - ISO 8601 $webinar = [ 'subject' => 'API Test 2', 'description' => 'This Webinar is created via the API', 'startTime' => "2016-03-23T19:00:00Z", 'endTime' => "2016-03-23T20:00:00Z", ]; $webinar = GotoWebinar::createWebinar( $webinar ); // Update a Webinar - date format standard: W3C - ISO 8601 $webinar = [ 'subject' => 'API Test 2.2', 'description' => 'This Webinar is updated via the API', 'startTime' => "2016-03-24T19:00:00Z", 'endTime' => "2016-03-24T20:00:00Z", ]; $webinar = GotoWebinar::updateWebinar( $webinarKey, $params, $sendNotification = true); // Delete a specific Webinar $result = GotoWebinar::deleteWebinar( $webinarKey, $sendNotification = true );

Attendee and Registrant Resource

// Return a list of attendees for a specific Webinar
$attendees = GotoWebinar::getWebinarAttendees( $webinarKey );


// Register an attendee for a specific Webinar
$webinarKey = '7102152795910768396';

$registrant = [ 'firstname'    => 'Peter',
                'lastname'     => 'Pan',
                'email'        => 'peter.pan@gmail.com',
                'organization' => 'Neverland', ];

$result = GotoWebinar::registerAttendee( $webinarKey, $registrant );


// Return a list of registrants for a specific Webinar
$registrants = GotoWebinar::getWebinarRegistrants( $webinarKey );


// Return a specific registrant from a specific Webinar
$registrant = GotoWebinar::getWebinarRegistrant( $webinarKey, $registrantKey );


// Remove a specific registrant from a specific Webinar
$result = GotoWebinar::deleteWebinarRegistrant( $webinarKey, $registrantKey );

Session Resource

// Return list of sessions for the Organizer ()
$sessions = GotoWebinar::getOrganizerSessions();


// Return list of attendees for a specific Webinar and specific session
$attendees = GotoWebinar::getWebinarSessionAttendees( $webinarKey, $sessionKey );


// Return a specific attendee for a specific Webinar and specific session
$attendee = GotoWebinar::getWebinarSessionAttendee( $webinarKey, $sessionKey, $registrantKey );

Your contribution or bug fixes are welcome!, (*9)

Next steps will be to build out more robuster error handling, add OAuth2 Authentication and adding the GotoMeeting provider into the package also., (*10)

Enjoy!, (*11)

Slakkie, (*12)

The Versions

18/12 2017

dev-master

9999999-dev

Laravel package for Citrix API wrapper for GoToWebinar

  Sources   Download

MIT

The Requires

 

by Leslie Price

18/12 2017

1.0.5

1.0.5.0

Laravel package for Citrix API wrapper for GoToWebinar

  Sources   Download

MIT

The Requires

 

by Leslie Price

18/12 2017

1.0.4

1.0.4.0

Laravel package for Citrix API wrapper for GoToWebinar

  Sources   Download

MIT

The Requires

 

by Leslie Price

20/11 2017

1.0.3

1.0.3.0

Laravel package for Citrix API wrapper for GoToWebinar

  Sources   Download

MIT

The Requires

 

by Leslie Price

20/09 2017

dev-develop

dev-develop

Laravel package for Citrix/LogMeIn API wrapper for GoToWebinar

  Sources   Download

MIT

The Requires

 

The Development Requires

by Leslie Price

gotowebinar logmein citrix laravel-gotowebinar slakbal

17/08 2017

1.0.2

1.0.2.0

Laravel package for Citrix API wrapper for GoToWebinar

  Sources   Download

MIT

The Requires

 

by Leslie Price

11/03 2016

1.0.1

1.0.1.0

Laravel package for Citrix API wrapper for GoToWebinar

  Sources   Download

MIT

The Requires

 

by Leslie Price

24/02 2016

1.0.0

1.0.0.0

Laravel package for Citrix API wrapper for GoToWebinar

  Sources   Download

MIT

The Requires

 

by Leslie Price