Acme-PIA-Export
view release on metacpan or search on metacpan
Acme-PIA-Export-0.019.html view on Meta::CPAN
<p>
</p>
<h2><a name="example">EXAMPLE</a></h2>
<pre>
<span class="keyword">use</span> <span class="variable">Acme::PIA::Export</span><span class="operator">;</span>
</pre>
<pre>
my $pia = Acme::PIA::Export->new(</pre>
<pre>
"username" => "mylogin",
"password" => "verysecret"</pre>
<pre>
<span class="operator">);</span>
</pre>
<pre>
<span class="variable">$pia</span><span class="operator">-></span><span class="variable">export</span><span class="operator">(</span> <span class="string">"contacts"</span> <span class="operator">);</span>
</pre>
<pre>
<span class="keyword">foreach</span> <span class="keyword">my</span> <span class="variable">$contact</span> <span class="operator">(</span> <span class="variable">$pia</span><span class="operator">-></span><span class="variable">entries</s...
<span class="keyword">print</span> <span class="string">"$contact->{NAME}, $contact->{VORNAME}\n"</span><span class="operator">;</span>
Acme-PIA-Export-0.019.html view on Meta::CPAN
<p>
</p>
<h2><a name="functions">FUNCTIONS</a></h2>
<dl>
<dt><strong><a name="item_new">new( [ key => value, ...] )</a></strong>
<dd>
<p>Creates and returns a new Acme::PIA::Export object.</p>
</dd>
<dd>
<p>Parameters are given as key => value pairs. The most commonly used are "username" and "password".
If you expirience problems you can also give the parameter "DEBUG" => 1
to get verbose output from all functions.</p>
</dd>
</li>
<dt><strong><a name="item_export">export( SCOPE )</a></strong>
<dd>
<p>Export all objects for the given scope (contacts, calendar etc.) and stores them in the
Acme::PIA::Export object.</p>
</dd>
If you don't know what PIA is, you will most probably not need this module.
=head2 EXAMPLE
use Acme::PIA::Export;
my $pia = Acme::PIA::Export->new(
"username" => "mylogin",
"password" => "verysecret"
);
$pia->export( "contacts" );
foreach my $contact ( $pia->entries() ) {
print "$contact->{NAME}, $contact->{VORNAME}\n";
}
$pia->export_csv( file => "C:/my/piacontacts.csv" );
=head2 FUNCTIONS
=over
=item new( [ key => value, ...] )
Creates and returns a new Acme::PIA::Export object.
Parameters are given as key => value pairs. The most commonly used are "username" and "password".
If you expirience problems you can also give the parameter "DEBUG" => 1
to get verbose output from all functions.
=item export( SCOPE )
Export all objects for the given scope (contacts, calendar etc.) and stores them in the
Acme::PIA::Export object.
ATTENTION: Only "contacts" scope is implemented up to now! Look out for future releases.
my $sock = $self->{"sock"};
$sock->close();
}
sub send_request {
my $self = shift;
my $what = shift;
if( ! $self->{"cfg"}->{"username"} ) {
die "No Username given!";
}
if( ! $self->{"cfg"}->{"password"} ) {
die "No Password given!";
}
if( ! $self->{"cfg"}->{"client"} ) {
$self->{"cfg"}->{"client"} = uc($ENV{"hostname"}) || sprintf("%s-%0.5i", "Acme-PIA-Export", rand(99999));
}
my $requestbody = "$self->{cfg}->{username}~;~$self->{cfg}->{password}~;~$self->{cfg}->{client}~;~$scopes{$what};~export~;~O~;~~#~";
my $content_length = length($requestbody);
my $request = "POST $query_url HTTP/1.1\n" .
"Pragma: no-cache\n" .
"Host: www.arcor.de\n" .
"Accept-Ranges: bytes\n" .
"Content-Type: text/html\n" .
"Content-Length: $content_length\n" .
"\n" .
$requestbody;
( run in 1.111 second using v1.01-cache-2.11-cpan-49f99fa48dc )