API-BigBlueButton

 view release on metacpan or  search on metacpan

lib/API/BigBlueButton.pm  view on Meta::CPAN

    };

    for my $need_param ( REQUIRE_PARAMS ) {
        confess "Parameter $need_param required!" unless $self->{ $need_param };
    }

    return bless $self, $class;
}

sub abstract_request {
    my ( $self, $data ) = @_;

    my $request = delete $data->{request};
    my $checksum = delete $data->{checksum};
    confess "Parameter request required!" unless $request;

    my $url = $self->{use_https} ? 'https://' : 'http://';
    $url .= $self->{server} . '/bigbluebutton/api/' . $request . '?';

    if ( scalar keys %{ $data } > 0 ) {
        $url .= $self->generate_url_query( $data );
        $url .= '&';
    }
    $url .= 'checksum=' . $checksum;

    return $self->request( $url );
}

sub request {
    my ( $self, $url ) = @_;

lib/API/BigBlueButton/Requests.pm  view on Meta::CPAN


    This parameter is optional.

SEE MORE L<https://code.google.com/p/bigbluebutton/wiki/API#create>

=cut

sub create {
    my ( $self, %params ) = @_;

    my $data = $self->_generate_data( 'create', \%params );
    return $self->abstract_request( $data );
}

=item B<join($self,%params)>

Joins a user to the meeting specified in the meetingID parameter.

%params:

fullName

t/002_bigbluebutton.t  view on Meta::CPAN

    my $checksum = '1233dfgdfg';
    my $bbb;

    before each => sub {
        $bbb = API::BigBlueButton->new(
            secret => 'mysecret',
            server => 'myserver',
        );
    };

    it "Without data" => sub {
        my $url;
        API::BigBlueButton->expects( 'request' )
            ->returns( sub { $url = $_[1]; return 1 } )->at_least(1);

        my $res = $bbb->abstract_request( {
            request  => 'create',
            checksum => $checksum,
        } );

        ok( $res );
        like( $url, qr/myserver.+create\?checksum=$checksum/ );
    };

    it "With data" => sub {
        my $url;
        my $key = 'myparam';
        my $val = 'myvalue';

        API::BigBlueButton->expects( 'request' )
            ->returns( sub { $url = $_[1]; return 1 } )->at_least(1);

        API::BigBlueButton->expects( 'generate_url_query' )
            ->returns( sub { return $key . '=' . $_[1]->{ $key } } )->at_least(1);

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 0.980 second using v1.00-cache-2.02-grep-82fe00e-cpan-4673cadbf75 )