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-&gt;new(</pre>
<pre>
                &quot;username&quot; =&gt; &quot;mylogin&quot;,
                &quot;password&quot; =&gt; &quot;verysecret&quot;</pre>
<pre>
        <span class="operator">);</span>
</pre>
<pre>
        <span class="variable">$pia</span><span class="operator">-&gt;</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">-&gt;</span><span class="variable">entries</s...
        
                <span class="keyword">print</span> <span class="string">"$contact-&gt;{NAME}, $contact-&gt;{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 =&gt; value, ...] )</a></strong>

<dd>
<p>Creates and returns a new Acme::PIA::Export object.</p>
</dd>
<dd>
<p>Parameters are given as key =&gt; value pairs. The most commonly used are &quot;username&quot; and &quot;password&quot;.
If you expirience problems you can also give the parameter &quot;DEBUG&quot; =&gt; 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>

Export.pm  view on Meta::CPAN


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";
	
	}

Export.pm  view on Meta::CPAN

	$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.

Export.pm  view on Meta::CPAN

	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 )