Net::Icecast2::Mount - Icecast2 Server Mount API
use Net::Icecast2::Mount; my $icecast_mount = Net::Icecast2::Mount->new( host => 192.168.1.10, port => 8008, protocol => 'https', login => 'source', password => 'hackme', mount => '/my_mount.ogg', ); $icecast_mount->metadata_update( song => 'New song' ); $icecast_mount->fallback_update( '/new_fallback.ogg' ); $icecast_mount->list_clients; $icecast_mount->move_client( '/new_mount_point.ogg' ); $icecast_mount->kill_client( 23444 ); $icecast_mount->kill_source;
Make request for Icecast2 Server Mount API
Description : Icecast2 Server hostname Default : localhost Required : 0
Description : Icecast2 Server port Default : 8000 Required : 0
Description : Icecast2 Server protocol ( scheme ) Default : http Required : 0
Description : Icecast2 Server Mount username Default : source Required : 0
Description : Icecast2 Server Mount password Required : 1
Description : Icecast2 Server Mountpoint Required : 1
Usage : $icecast_mount->metadata_update( song => 'New song' ); Arguments : List or HashRef of data parameters must update Description : This function provides the ability for either a source client or any external program to update the metadata information for a particular mountpoint.
Usage : $icecast_mount->fallback_update( '/new_fallback.ogg' ); Arguments : New fallback mount point Description : This function provides the ability for either a source client or any external program to update the "fallback mountpoint" for a particular mountpoint. Fallback mounts are those that are used in the even of a source client disconnection. If a source client disconnects for some reason that all currently connected clients are sent immediately to the fallback mountpoint.
Usage : $icecast_mount->list_clients; Arguments : No Arguments Description : This function lists all the clients currently connected to a specific mountpoint. The results are sent back in XML form. Return : HashRef like mount => mount point listeners => listeners number listener => Array with info per each listener
Usage : $icecast_mount->move_client( '/new_mount_point.ogg' ); Arguments : New mount point Description : This function provides the ability to migrate currently connected listeners from one mountpoint to another. This function requires 2 mountpoints to be passed in: mount (the *from* mountpoint) and destination (the *to* mountpoint). After processing this function all currently connected listeners on mount will be connected to destination. Note that the destination mountpoint must exist and have a sounce client already feeding it a stream. Return : 1 on success and 0 on failure
Usage : $icecast_mount->kill_client( 23444 ); Arguments : User ID can get from 'list_client' method Description : This function provides the ability to disconnect a specific listener of a currently connected mountpoint. Listeners are identified by a unique id that can be retrieved by via the "List Clients" admin function. This id must be passed in to the request. After processing this request, the listener will no longer be connected to the mountpoint. Return : 1 on success and 0 on failure
Usage : $icecast_mount->kill_source; Arguments : No Argements Description : This function will provide the ability to disconnect a specific mountpoint from the server. The mountpoint to be disconnected is specified via the variable "mount".
Icecast2 server: http://www.icecast.org Icecast2 API Docs: http://www.icecast.org/docs/icecast-trunk/icecast2_admin.html
Related modules Net::Icecast2 Net::Icecast2::Admin
Pavel R3VoLuT1OneR Zhytomirsky <r3volut1oner@gmail.com>
This software is copyright (c) 2012 by Pavel R3VoLuT1OneR Zhytomirsky.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Net::Icecast2, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Net::Icecast2
CPAN shell
perl -MCPAN -e shell install Net::Icecast2
For more information on module installation, please visit the detailed CPAN module installation guide.