NAME

Elive::StandardV2 - Perl bindings for the Elluminate Live Standard Bridge (V2)

VERSION

Version 0.00_6

** DEVELOPER RELEASE - UNDER CONSTRUCTION **

SYNOPSIS

    use Elive::StandardV2;
    use Elive::StandardV2::Session;

    Elive::StandardV2->connect( 'http://myserver/mysite',
                                'some_user' => 'some_pass' );

    my %session_data = (
	sessionName => 'My Demo Session',
	creatorId => $connection->user,
	startTime =>  $session_start . '000',
	endTime => $session_end . '000',
	openChair => 1,
	mustBeSupervised => 0,
	permissionsOn => 1,
	groupingList => [qw(mechanics sewing)],
    );

    my $session = $class->insert(\%session_data);

    my $url = $session->url( userId => 'bob');
    print "bob's session link is: $url\n";

DESCRIPTION

Implements Elluminate Live! Standard Bridge V2 API bindings

** DEVELOPER RELEASE - UNDER CONSTRUCTION **

METHODS

data_classes

returns a list of all implemented entity classes

connect

use Elive::StandardV2;
use Elive::StandardV2::Connection;

#
# Setup the default connection
Elive::StandardV2->connect('http://myServer.com/test1', 'user1', 'pass1');
my $c1 = Elive::StandardV2->connection;
#
# Setup a secondary connection
my $c2 = Elive::StandardV2::Connection->connect('http://user2:pass2@myServer.com/test2');

Connects to an Elluminate server instance. Dies if the connection could not be established. If, for example, the SOAP connection or authentication failed.

See also Elive::StandardV2::Connection.

connection

$e1 = Elive::StandardV2->connection
    or warn 'no elive connection active';

Returns the default Elive connection handle.

update

Abstract method to commit outstanding object updates to the server.

$obj->{foo} = 'Foo';  # change foo attribute directly
$foo->update;         # save

$obj->bar('Bar');     # change bar via its accessor
$obj->update;         # save

Updates may also be passed as parameters.

# change and save foo and bar. All in one go.
 $obj->update({foo => 'Foo', bar => 'Bar'},
              command => $cmd,      # soap command to use
              params => \%params,   # additional soap params,
              changed => \@props,   # properties to update,
             );

fetch

insert

Abstract method to create new entity instances on the server:

    my $multimedia = Elive::StandardV2::Multimedia->insert(
             {
                    filename => 'demo.wav',
                    creatorId =>  'bob',
                    content => $content,
	     },
         );

list

Abstract selection method. Most commands allow a ranging expression to narrow the selection. This is passed in using the filter option. For example:

my $bobs_sessions = Elive::StandardV2::Session->list(filter => {userId => 'bob'});

delete

Abstract method to delete entities:

$multimedia->delete;

AUTHOR

David Warring, <david.warring at gmail.com>

BUGS

Please report any bugs or feature requests to bug-elive-standardv2 at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Elive-StandardV2. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Elive::StandardV2

You can also look for information at:

ACKNOWLEDGEMENTS

LICENSE AND COPYRIGHT

Copyright 2010-2011 David Warring.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.