Instantiates a Flickr::Upload instance, using either the Flickr Authentication or the OAuth Authentication. The key or consumer_key argument is your API key and the secret or consumer_secret argument is the API secret associated with it. To get an API key and secret, go to https://www.flickr.com/services/api/key.gne.

upload

Taking a Flickr::Upload instance $ua as an argument, this is basically a direct interface to the Flickr Photo Upload API. Required parameters are photo and, when using Flickr Authentication, auth_token. Note that the auth_token must have been issued against the API key and secret used to instantiate the uploader.

When using OAuth, auth_token is not required, and the Flickr::Upload instance must instead contain a valid Net::OAuth access token which can be added by calling the Flickr::APIoauth_access_token method.

If the async option is non-zero, the photo will be uploaded asynchronously and a successful upload returns a ticket identifier. See https://www.flickr.com/services/api/upload.async.html. The caller can then periodically poll for a photo id using the check_upload method. Note that photo and ticket identifiers aren't necessarily numeric.

This function will check the status of one or more asynchronous uploads. A list of ticket identifiers are provided (@ticketids) and each is checked. This is basically just a wrapper around the Flickr API flickr.photos.upload.checkTickets method.

On success, a list of hash references is returned. Each hash contains a id (the ticket id), complete and, if completed, photoid members. invalid may also be returned. Status codes (for complete) are as documented at https://www.flickr.com/services/api/upload.async.html and, actually, the returned fields are identical to those listed in the ticket tag of the response. The returned list isn't guaranteed to be in any particular order.

Creates an HTTP::Request object loaded with all the flick upload parameters. This will also sign the request, which means you won't be able to mess any further with the upload request parameters.

Takes all the same parameters as upload, except that the photo argument isn't required. This in intended so that the caller can include it by messing directly with the HTTP content (via $DYNAMIC_FILE_UPLOAD or the HTTP::Message class, among other things). See t/ directory from the source distribution for examples.

upload_request

my $photoid = upload_request( $ua, $request );

Taking (at least) LWP::UserAgent and HTTP::Request objects as arguments, this executes the request and processes the result as a flickr upload. It's assumed that the request looks a lot like something created with make_upload_request. Note that the request must be signed according to the Flickr API authentication rules.

This subroutine is tells you how much of a chunk in a series of variable size multipart HTTP chunks contains a single file being uploaded given a reference to the current chunk, a reference to a state variable that lives between calls, and the size of the file being uploaded.

It can be used used along with HTTP::Request::Common's $HTTP::Request::Common::DYNAMIC_FILE_UPLOAD facility to implement upload progress bars or other upload monitors, see flickr_upload for a practical example and t/progress_request.t for tests.

COPYRIGHT AND LICENSE

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.3 or, at your option, any later version of Perl 5 you may have available.

Module Install Instructions

To install Flickr::Upload, simply copy and paste either of the commands in to your terminal