\Aculab\WebServicesWrapperConferenceWebService

Conference management web service class

Summary

Methods
Properties
Constants
setWebServicesServer()
setCryptoMethod()
setProxy()
__construct()
createReservation()
modifyReservation()
removeReservation()
listConferences()
listParticipants()
setParticipantOptions()
ejectParticipant()
No public properties found
VERSION
No protected methods found
No protected properties found
N/A
No private methods found
No private properties found
N/A

Constants

VERSION

VERSION

The wrapper version.

The wrapper version number.

Methods

setWebServicesServer()

setWebServicesServer(string  $wsserver) 

Set the web services server address.

This allows the web service requests to be directed to a specific server. The default is https://ws-<cloud_id>.aculabcloud.net

Parameters

string $wsserver

The base URL of the web services server.

setCryptoMethod()

setCryptoMethod(integer  $method) 

Set the crypto method used when connectiing to the web services server.

This allows a specific crypto method to be used when connecting to the web service server. The values should be one of the STREAM_CRYPTO_METHOD_TLSv1_N_CLIENT constants. The default is STREAM_CRYPTO_METHOD_ANY_CLIENT.

Parameters

integer $method

The crypto method to use.

setProxy()

setProxy(string  $proxy, boolean  $request_fulluri) 

Configures the proxy server to use when making Web Service requests.

Parameters

string $proxy

URI specifying address of proxy server. (e.g. tcp://proxy.example.com:5100).

boolean $request_fulluri

When set to TRUE, the entire URI will be used when constructing the request. While this is a non-standard request format, some proxy servers require it.

__construct()

__construct(string  $cloud_id, string  $username, string  $access_key) 

Create a conference management web service object.

Creates a conference management webservice. This can be used to reserve large conferences and to manage participants of conferences in progress of all sizes.

Parameters

string $cloud_id

The cloud region identifier.

string $username

The cloud account username.

string $access_key

The cloud account's access key.

createReservation()

createReservation(string  $conference_name, integer  $max_participants, \DateTime|string  $start_time, integer  $duration, string  $divert = '') : string

Reserve a conference.

This makes a conference reservation on the Aculab Cloud for a number of participants, at a specified time and for a specified duration.

Parameters

string $conference_name

A name for the conference, consisting of fewer than 48 alphabetic or numeric characters. This will be referenced by applications connecting to the conference.

integer $max_participants

The maximum expected number of participants. Must be between 40 and 350.

\DateTime|string $start_time

The required start time. When using a string it must be a UTC time in the format "YYYY-MM-DD-hh-mm". Must be at least 5 minutes in the future, but no more than 24 hours.

integer $duration

The required duration in minutes. Must be between 15 and 480.

string $divert

An optional parameter that specifies the inbound service to bounce early participants to. If not present, early callers will be busied instead.

Throws

\Aculab\WebServicesWrapper\WebServiceException

Returns

string —

The reservation token.

modifyReservation()

modifyReservation(string  $reservation_token, integer  $duration) : boolean

Modify an existing conference reservation.

This modifies an existing conference reservation identified by its reservation token. Only reserved conferences in the RESERVED, ACTIVE or HOLDING states can be modified, and then only by extending the conference duration, providing that the conference is not already due to finish in the next five minutes. The overall duration cannot be extended beyond a total 480 minutes.

Parameters

string $reservation_token

A conference reservation token as returned by createReservation() or listConferences().

integer $duration

The number of minutes by which to extend the existing conference reservation. Must be between 15 and 60 minutes, and cannot take the total conference duration beyond 480 minutes.

Throws

\Aculab\WebServicesWrapper\WebServiceException

Returns

boolean —

Indicates if the modification was successful.

removeReservation()

removeReservation(string  $reservation_token) : boolean

Remove an existing conference reservation.

This removes an existing conference reservation. A reservation can only be removed if the conference is in the "RESERVED" state, and is not due to start within the next 5 minutes.

Parameters

string $reservation_token

A conference reservation token as returned by createReservation() or listConferences().

Throws

\Aculab\WebServicesWrapper\WebServiceException

Returns

boolean —

Indicates if the removal was successful.

listConferences()

listConferences() : array

List the reserved and currently active conferences.

This lists all of the user's reserved and currently active conferences. Returns an array of \Aculab\WebServicesWrapper\ConferenceDetails objects.

Throws

\Aculab\WebServicesWrapper\WebServiceException

Returns

array —

An array of ConferenceDetails objects.

listParticipants()

listParticipants(string  $conference_name) : \Aculab\WebServicesWrapper\ConferenceParticipants

List the participants in a conference.

This obtains a list of currently connected participants in the named conference. Only conferences in the "ACTIVE" and "HOLDING" states have participants to list. Note that this information is collected asynchonously from the media processing instance hosting the conference and may be up to 15 seconds behind real time.

Parameters

string $conference_name

The conference name.

Throws

\Aculab\WebServicesWrapper\WebServiceException

Returns

\Aculab\WebServicesWrapper\ConferenceParticipants

setParticipantOptions()

setParticipantOptions(string  $conference_name, string  $participant_id, boolean  $muted, boolean  $dtmf_enabled) : boolean

Set the participant options in a conference.

This sets the values of the muted and dtmf_enabled properties of the named participant in the named conference. Note that participant options can only be changed if the conference is in the "ACTIVE" state.

Parameters

string $conference_name

The conference name.

string $participant_id

A conference participant id as returned by listParticipants().

boolean $muted

Set to true to mute the participant, or false to umute the participant.

boolean $dtmf_enabled

Set to true to enable dtmf key actions for the participant, or false to disable these.

Throws

\Aculab\WebServicesWrapper\WebServiceException

Returns

boolean —

Indicates if the operation succeeded.

ejectParticipant()

ejectParticipant(string  $conference_name, string  $participant_id) : boolean

Eject a participant from a conference.

This ejects the named participant from the named active conference. Note that participants can only be ejected if the conference is in the "ACTIVE" state.

Parameters

string $conference_name

The conference name.

string $participant_id

A conference participant id as returned by listParticipants().

Throws

\Aculab\WebServicesWrapper\WebServiceException

Returns

boolean —

Indicates if the ejection succeeded.