<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 14978 -->
<!-- Reviewed: no -->
<sect1 id="zend.service.audioscrobbler">

    <title>Zend_Service_Audioscrobbler</title>

    <sect2 id="zend.service.audioscrobbler.introduction">

        <title>Einführung</title>

        <para>
            <classname>Zend_Service_Audioscrobbler</classname> ist eine einfache API für die Verwendung des Audioscrobbler REST
            Web Services. Der Audioscrobbler Web Service bietet Zugang zu seinen Datenbanken von Benutzern, Artisten,
            Albums, Lieder, tags, Gruppen und Foren. Die Methoden der <classname>Zend_Service_Audioscrobbler</classname> Klasse
            beginnt mit einem dieser Bezeichner. Der Syntax und der Namensraum des Audioscrobbler Web Services sind in
            <classname>Zend_Service_Audioscrobbler</classname> gespiegelt. Für weitere Informationen über das Audioscrobbler
            REST Web Service, siehe die
            <ulink url="http://www.audioscrobbler.net/data/webservices/">Audioscrobbler Web Service Seite</ulink>.
        </para>

    </sect2>

    <sect2 id="zend.service.audioscrobbler.users">

        <title>Benutzer</title>

        <para>
            Um Informationen über einen bestimmten Benutzer zu erhalten, wird zuerst die <code>setUser()</code>
            Methode verwendet um den Benutzer zu selektieren für den Daten empfangen werden sollen.
            <classname>Zend_Service_Audioscrobbler</classname> bietet verschiedene Methoden für das empfangen von Daten eines
            einzelnen Benutzers:
            <itemizedlist>
                <listitem>
                    <para>
                        <code>userGetProfileInformation()</code>: Gibt ein SimpleXML Objekt zurück das die
                        aktuellen Profilinformationen des Benutzers enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetTopArtists()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste der
                        aktuell am meisten gelisteten Artisten des Benutzers enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetTopAlbums()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste der
                        aktuell am meisten gelisteten Alben des Benutzer enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetTopTracks()</code>: Gibt ein SimpleXML Objekt zurück das das aktuell am
                        meisten gelistete Lied des Benutzers enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetTopTags()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste der
                        Tags enthält die am meisten vom aktuellen Benutzer zugeordnet wurden.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetTopTagsForArtist()</code>: Erfordert das ein Artist über
                        <code>setArtist()</code> gesetzt wurde. Gibt ein SimpleXML Objekt zurück das die Tags
                        enthält die am meisten dem aktuellen Artisten durch den aktuellen Benutzer zugeordnet
                        worden sind.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetTopTagsForAlbum()</code>: Erfordert das ein Album über
                        <code>setAlbum()</code> gesetzt wurde. Gibt ein SimpleXML Objekt zurück das die Tags
                        enthält die am meisten dem aktuellen Album durch den aktuellen Benutzer zugeordnet
                        worden sind.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetTopTagsForTrack()</code>: Erfordert das ein Lied über <code>setTrack()</code>
                        gesetzt wurde. Gibt ein SimpleXML Objekt zurück das die Tags enthält die am meisten dem
                        aktuellen Lied vom aktuellen Benutzer zugeordnet worden sind.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetFriends()</code>: Gibt ein SimpleXML Objekt zurück das die Benutzernamen der
                        Freunde des aktuellen Benutzers enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetNeighbours()</code>: Gibt ein SimpleXML Objekt zurück das die Benutzernamen
                        der Personen enthält die ähnliche Unterhaltungs-Gewohnheiten wie der aktuelle Benutzer
                        haben.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetRecentTracks()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste der
                        10 zuletzt gespielten Lieder des aktuellen Benutzers enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetRecentBannedTracks()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste
                        der 10 zuletzt verbannten Lieder des aktuellen Benutzers enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetRecentLovedTracks()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste
                        der 10 zuletzt geliebten Lieder des aktuellen Benutzers enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetRecentJournals()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste
                        der letzten Journaleintröge des aktuellen Benutzers enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetWeeklyChartList()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste
                        der Wochen enthält für die ein Wochenchart des aktuellen Benutzers existiert.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetRecentWeeklyArtistChart()</code>: Gibt ein SimpleXML Objekt zurück das die
                        letzten wöchentlichen Artistencharts des aktuellen Benutzers enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetRecentWeeklyAlbumChart()</code>: Gibt ein SimpleXML Objekt zurück das die
                        letzten wöchentlichen Albumcharts des aktuellen Benutzers enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetRecentWeeklyTrackChart()</code>: Gibt ein SimpleXML Objekt zurück das die
                        letzten wöchentlichen Liedercharts des aktuellen Benutzers enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetPreviousWeeklyArtistChart($fromDate, $toDate)</code>: Gibt ein SimpleXML
                        Objekt zurück das die wöchentliche Artistencharts von <code>$fromDate</code> bis
                        <code>$toDate</code> für den aktuellen Benutzer enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetPreviousWeeklyAlbumChart($fromDate, $toDate)</code>: Gibt ein SimpleXML
                        Objekt zurück das die wöchentlichen Albumcharts von <code>$fromDate</code> bis
                        <code>$toDate</code> für den aktuellen Benutzer enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>userGetPreviousWeeklyTrackChart($fromDate, $toDate)</code>: Gibt ein SimpleXML
                        Objekt zurück das die wöchentlichen Liedercharts von <code>$fromDate</code> bis
                        <code>$toDate</code> für den aktuellen Benutzer enthält.
                    </para>
                </listitem>
            </itemizedlist>
        </para>

        <example id="zend.service.audioscrobbler.users.example.profile_information">

            <title>Informationen von Benutzerprofilen erhalten</title>

            <para>
                In diesem Beispiel werden die <code>setUser()</code> und <code>userGetProfileInformation()</code>
                Methoden verwendet um Informationen über ein spezielles Benutzerprofil zu erhalten:
            </para>

            <programlisting role="php"><![CDATA[
$as = new Zend_Service_Audioscrobbler();
// Den Benutzer setzen dessen Profilinformationen man empfangen will
$as->setUser('BigDaddy71');
// Informationen von BigDaddy71's Profil erhalten
$profileInfo = $as->userGetProfileInformation();
// Einige von Ihnen darstellen
print "Informationen für $profileInfo->realname können unter "
    . "$profileInfo->url gefunden werden";
]]>
            </programlisting>

        </example>

        <example id="zend.service.audioscrobbler.users.example.weekly_artist_chart">

            <title>Die wöchentlichen Artistencharts eines Benutzers erhalten</title>

            <programlisting role="php"><![CDATA[
$as = new Zend_Service_Audioscrobbler();
// Den Benutzer setzen dessen wöchentliche Artistencharts man empfangen will
$as->setUser('lo_fye');
// Eine Liste von vorherigen Wochen erhalten in denen Chartdaten vorhanden sind
$weeks = $as->userGetWeeklyChartList();
if (count($weeks) < 1) {
    echo 'Keine Daten vorhanden';
}
sort($weeks); // Die Liste der Wochen sortieren

$as->setFromDate($weeks[0]); // Das Startdatum setzen
$as->setToDate($weeks[0]); // Das Enddatum setzen

$previousWeeklyArtists = $as->userGetPreviousWeeklyArtistChart();

echo 'Artisten Chart für Woche '
   . date('Y-m-d h:i:s', $as->from_date)
   . '<br />';

foreach ($previousWeeklyArtists as $artist) {
    // Artistennamen mit Links zu Ihrem Profil darstellen
    print '<a href="' . $artist->url . '">' . $artist->name . '</a><br />';
}
]]>
            </programlisting>

        </example>

    </sect2>

    <sect2 id="zend.service.audioscrobbler.artists">

        <title>Artisten</title>

        <para>
            <classname>Zend_Service_Audioscrobbler</classname> bietet verschiedene Methoden um Daten über einen speziellen
            Artisten zu empfangen, der über die <code>setArtist()</code> Methode spezifiziert wurde:
            <itemizedlist>
                <listitem>
                    <para>
                        <code>artistGetRelatedArtists()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste
                        von Artisten enthält die dem aktuellen Artisten ähnlich sind.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>artistGetTopFans()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste von
                        Benutzern enthält die den aktuellen Artisten am meisten hören.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>artistGetTopTracks()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste der
                        am meisten gewählten Lieder des aktuellen Artisten enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>artistGetTopAlbums()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste der
                        aktuell am meisten gewählten Alben des aktuellen Artisten enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>artistGetTopTags()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste der
                        Tags enthält die dem aktuellen Artisten am meisten zugeordnet werden.
                    </para>
                </listitem>
            </itemizedlist>
        </para>

        <example id="zend.service.audioscrobbler.artists.example.related_artists">

            <title>Ähnliche Artisten erhalten</title>

            <programlisting role="php"><![CDATA[
$as = new Zend_Service_Audioscrobbler();
// Den Artisten setzen für den man ähnliche Artisten bekommen will
$as->setArtist('LCD Soundsystem');
// Ähnliche Artisten erhalten
$relatedArtists = $as->artistGetRelatedArtists();
foreach ($relatedArtists as $artist) {
    // Die ähnlichen Artisten anzeigen
    print '<a href="' . $artist->url . '">' . $artist->name . '</a><br />';
}
]]>
            </programlisting>

        </example>

    </sect2>

    <sect2 id="zend.service.audioscrobbler.tracks">

        <title>Lieder</title>

        <para>
            <classname>Zend_Service_Audioscrobbler</classname> bietet zwei Methoden für das empfangen von Daten für ein
            einzelnes Lied, das über die <code>setTrack()</code> Methode spezifiziert wurde:
            <itemizedlist>
                <listitem>
                    <para>
                        <code>trackGetTopFans()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste mit den
                        Benutzern enthält die das aktuelle Lied am meisten gehört haben.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>trackGetTopTags()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste der Tags
                        enthält die dem aktuellen Tag am meisten hinzugefügt werden.
                    </para>
                </listitem>
            </itemizedlist>
        </para>

    </sect2>

    <sect2 id="zend.service.audioscrobbler.tags">

        <title>Tags</title>

        <para>
            <classname>Zend_Service_Audioscrobbler</classname> bietet verschiedene Methoden für das empfangen von Daten die
            einem einzelnen Tag zugeordnet sind, welches über die <code>setTag()</code> Methode zugeordnet werden:
            <itemizedlist>
                <listitem>
                    <para>
                        <code>tagGetOverallTopTags()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste von
                        Tags enthält die am meisten in Audioscrobbler verwendet werden.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>tagGetTopArtists()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste von
                        Artisten enthält denen das aktuelle Tag am meisten zugeordnet wurden.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>tagGetTopAlbums()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste von Alben
                        enthält die dem aktuellen Tag am meisten zugeordnet wurden.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>tagGetTopTracks()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste von
                        Liedern enthält die dem aktuellen Tag am meisten zugeordnet wurden.
                    </para>
                </listitem>
            </itemizedlist>
        </para>

    </sect2>

    <sect2 id="zend.service.audioscrobbler.groups">

        <title>Gruppen</title>

        <para>
            <classname>Zend_Service_Audioscrobbler</classname> bietet verschiedene Methoden um Daten zu erhalten die einer
            speziellen Gruppe gehören, die über die <code>setGroup()</code> Methode zugeordnet wurde:
            <itemizedlist>
                <listitem>
                    <para>
                        <code>groupGetRecentJournals()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste
                        der letzten Journalbeiträge der Benutzer der aktuellen Gruppe enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>groupGetWeeklyChart()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste der
                        Wochen enthält für die ein wöchentliches Chart der aktuellen Gruppe existiert.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>groupGetRecentWeeklyArtistChart()</code>: Gibt ein SimpleXML Objekt zurück das
                        die letzten wöchentlichen Artistencharts der aktuellen Gruppe enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>groupGetRecentWeeklyAlbumChart()</code>: Gibt ein SimpleXML Objekt zurück das die
                        letzten wöchentlichen Albumcharts der aktuellen Gruppe enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>groupGetRecentWeeklyTrackChart()</code>: Gibt ein SimpleXML Objekt zurück das die
                        letzten wöchentlichen Liedercharts der aktuellen Gruppe enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>groupGetPreviousWeeklyArtistChart($fromDate, $toDate)</code>: Erfordert
                        <code>setFromDate()</code> und <code>setToDate()</code>. Gibt ein SimpleXML Objekt zurück
                        das die wöchentlichen Artistencharts vom aktuellen fromDate bis zum aktuellen toDate
                        der aktuellen Gruppe enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>groupGetPreviousWeeklyAlbumChart($fromDate, $toDate)</code>: Erfordert
                        <code>setFromDate()</code> und <code>setToDate()</code>. Gibt ein SimpleXML Objekt
                        zurück das die wöchentlichen Albumcharts vom aktuellen fromDate bis zum aktuellen toDate
                        der aktuellen Gruppe enthält.
                    </para>
                </listitem>
                <listitem>
                    <para>
                        <code>groupGetPreviousWeeklyTrackChart($fromDate, $toDate)</code>: Gibt ein SimpleXML
                        Objekt zurück das die wöchentlichen Liedercharts vom aktuellen fromDate bis zum
                        aktuellen toDate für die aktuelle Gruppe enthält.
                    </para>
                </listitem>
            </itemizedlist>
        </para>

    </sect2>

    <sect2 id="zend.service.audioscrobbler.forums">

        <title>Foren</title>

        <para>
            <classname>Zend_Service_Audioscrobbler</classname> bietet eine Methode für das Empfangen von Daten eines
            einzelnen Forums, das über die <code>setForum()</code> Methode spezifiziert wurde:
            <itemizedlist>
                <listitem>
                    <para>
                        <code>forumGetRecentPosts()</code>: Gibt ein SimpleXML Objekt zurück das eine Liste der
                        letzten Beiträge im aktuellen Forum enthält.
                    </para>
                </listitem>
            </itemizedlist>
        </para>

    </sect2>

</sect1>
<!--
vim:se ts=4 sw=4 et:
-->