# Adobe Connect Client
PHP Client for Adobe Connect. Tested version: 9.5.4.

# Client for Adobe Connect API v9.5.4

Not all actions are implemented, but many actions are in development and some others are a sequence of actions, like the RecordingPasscode.

## Installation using [Composer](http://getcomposer.org/)

```bash
$ composer require brunogasparetto/adobe-connect-client
```

## Usage

```php
<?php

use AdobeConnectClient\Connection\Curl\Connection;
use AdobeConnectClient\Client;
use AdobeConnectClient\CommonInfo;

// Create a Connection
$connection = Connection('https://hostname.adobeconnect.com');

// Create the Client
$client =  new Client($connection);

// Get the Common Info from Adobe Connect. Returns a CommonInfo object
$commonInfo = $client->commonInfo();

```

Some actions accept filters and sorters

```php
<?php

use AdobeConnectClient\Connection\Curl\Connection;
use AdobeConnectClient\Client;
use AdobeConnectClient\SCO;
use AdobeConnectClient\Filter;
use AdobeConnectClient\Sorter;

// Create a Connection
$connection = Connection('https://hostname.adobeconnect.com');

// Create the Client
$client =  new Client($connection);

// Log in. Returns a bool
$client->login('username', 'password');

// The folder where search
$folderId = 123;

// Create a filter for date begin and name
$filter = Filter::instance()
  ->dateAfter('dateBegin', new DateTimeImmutable())
  ->like('name', 'ClassRoom');

// Create a sorter to date begin
$sorter = Sorter::instance()
  ->asc('dateBegin');

// Returns a SCO[]
$scos = $client->scoContents($folderId, $filter, $sorter);

```

### IMPORTANT ###

All method are throwable.

## TODO ##

- [ ] Create documentation.
- [ ] Create automatized tests (All actions were manually tested).
- [ ] Implement all methods and entities.

Update a lot the Readme
Update a lot the Readme
