NAME

Elive::View::Session - Session view and insert/update via ELM 2.x

DESCRIPTION

A session is a consolidated view of meetings, meeting parameters, server parameters and participants.

METHODS

insert

Creates a new session on an Elluminate server.

    use Elive::View::Session;

    my $session_start = time();
    my $session_end = $session_start + 900;

    $session_start .= '000';
    $session_end .= '000';

    my $preload = Elive::Entity::Preload->upload('c:\\Documents\intro.wbd');

    my %session_data = (
	name => 'An example session',
	facilitatorId => Elive->login->userId,
	password => 'example', # what else?
	start =>  $session_start,
	end => $session_end,
	privateMeeting => 1,
	costCenter => 'example',
	recordingStatus => 'remote',
	raiseHandOnEnter => 1,
	maxTalkers => 2,
	inSessionInvitation => 1,
	boundaryMinutes => 15,
	fullPermissions => 1,
	supervised => 1,
	seats => 2,
        participants => [
            -moderators => [qw(alice bob)],
            -others => '*staff_group'
        ],
        add_preload => $preload
    );

    my $session = Elive::View::Session->insert( \%session_data );

A series of sessions can be created using the recurrenceCount and recurrenceDays parameters.

#
# create three weekly sessions
#
my @sessions = Elive::View::Session->insert({
                        ...,
                        recurrenceCount => 3,
                        recurrenceDays  => 7,
                    });

update

Updates a previously created session.

$session->seats(5);
$session->update;

...or equivalently...

$session->update({seats => 5});

list retrieve buildJNLP check_preload add_preload remove_preload is_participant is_moderator list_preloads list_recordings

These methods are available from the base class Elive::Entity::Session.

adapter allModerators boundaryMinutes costCenter deleted enableTelephony end facilitatorId followModerator fullPermissions id inSessionInvitation maxTalkers moderatorNotes moderatorTelephonyAddress moderatorTelephonyPIN name participantTelephonyAddress participantTelephonyPIN participants password privateMeeting profile raiseHandOnEnter recordingObfuscation recordingResolution recordingStatus redirectURL restrictedMeeting seats serverTelephonyAddress serverTelephonyPIN start supervised telephonyType userNotes videoWindow

These attributes are available from the base class Elive::Entity::Session.

BUGS AND LIMITATIONS

The insert() and update() methods in this class rely on older ELM 2.x commands. These do not support newer ELM 3.x features including restricted meetings, invited guests, groups, exit URLs and a number of other newer options and flags - these are listed in elive_raise_meeting.

Sites running ELM 3.0 / Elluminate Live 9.5 or newer may want to consider using Elive::Entity::Session, which implements the newer createSession and updateSession commands.