Amazon-SQS-Client
view release on metacpan or search on metacpan
share/SendMessage.pm view on Meta::CPAN
use Amazon::SQS::Model::SendMessageRequest;
use parent qw(Amazon::SQS::Sample);
########################################################################
sub sample {
########################################################################
my ( $self, $message, $queue_url ) = @_;
my $service = $self->get_service;
my $config = $self->get_config;
$queue_url //= $config && $config->get_queue_url;
if ( !$queue_url ) {
$self->help();
}
my $request = Amazon::SQS::Model::SendMessageRequest->new(
{ QueueUrl => $queue_url,
MessageBody => $message,
}
);
my $response = $service->sendMessage($request);
if ( $response->isSetSendMessageResult() ) {
my $sendMessageResult = $response->getSendMessageResult();
if ( $sendMessageResult->isSetMessageId() ) {
print {*STDOUT} sprintf "%s\n", $sendMessageResult->getMessageId();
}
if ( $sendMessageResult->isSetMD5OfMessageBody() ) {
my $md5 = $sendMessageResult->getMD5OfMessageBody();
}
}
if ( $response->isSetResponseMetadata() ) {
my $responseMetadata = $response->getResponseMetadata();
if ( $responseMetadata->isSetRequestId() ) {
my $requestId = $responseMetadata->getRequestId();
}
}
return;
}
1;
=pod
=head1 USAGE
example.pl [-f config-file] SendMessage message [queue-url]
Note: If you do not set the queue URL in the config, then you must
provide it on the command line.
=head1 OPTIONS
--endpoint-url, -e API endpoint, default: https://queue.amazonaws.com
--file, -f Name of a .ini configuration file
--help, -h help
=cut
( run in 0.909 second using v1.01-cache-2.11-cpan-39bf76dae61 )