Zend_Service_Audioscrobbler.xml 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.service.audioscrobbler">
  5. <title>Zend_Service_Audioscrobbler</title>
  6. <sect2 id="zend.service.audioscrobbler.introduction">
  7. <title>Einführung</title>
  8. <para>
  9. <classname>Zend_Service_Audioscrobbler</classname> ist eine einfache
  10. <acronym>API</acronym> für die Verwendung des Audioscrobbler REST Web Services. Der
  11. Audioscrobbler Web Service bietet Zugang zu seinen Datenbanken von Benutzern, Artisten,
  12. Albums, Lieder, tags, Gruppen und Foren. Die Methoden der
  13. <classname>Zend_Service_Audioscrobbler</classname> Klasse beginnt mit einem dieser
  14. Bezeichner. Der Syntax und der Namensraum des Audioscrobbler Web Services sind in
  15. <classname>Zend_Service_Audioscrobbler</classname> gespiegelt. Für weitere Informationen
  16. über das Audioscrobbler REST Web Service, siehe die <ulink
  17. url="http://www.audioscrobbler.net/data/webservices/">Audioscrobbler Web Service
  18. Seite</ulink>.
  19. </para>
  20. </sect2>
  21. <sect2 id="zend.service.audioscrobbler.users">
  22. <title>Benutzer</title>
  23. <para>
  24. Um Informationen über einen bestimmten Benutzer zu erhalten, wird zuerst die
  25. <methodname>setUser()</methodname> Methode verwendet um den Benutzer zu selektieren für
  26. den Daten empfangen werden sollen. <classname>Zend_Service_Audioscrobbler</classname>
  27. bietet verschiedene Methoden für das Empfangen von Daten eines einzelnen Benutzers:
  28. <itemizedlist>
  29. <listitem>
  30. <para>
  31. <methodname>userGetProfileInformation()</methodname>: Gibt ein SimpleXML
  32. Objekt zurück das die aktuellen Profilinformationen des Benutzers enthält.
  33. </para>
  34. </listitem>
  35. <listitem>
  36. <para>
  37. <methodname>userGetTopArtists()</methodname>: Gibt ein SimpleXML Objekt
  38. zurück das eine Liste der aktuell am meisten gelisteten Artisten des
  39. Benutzers enthält.
  40. </para>
  41. </listitem>
  42. <listitem>
  43. <para>
  44. <methodname>userGetTopAlbums()</methodname>: Gibt ein SimpleXML Objekt
  45. zurück das eine Liste der aktuell am meisten gelisteten Alben des Benutzer
  46. enthält.
  47. </para>
  48. </listitem>
  49. <listitem>
  50. <para>
  51. <methodname>userGetTopTracks()</methodname>: Gibt ein SimpleXML Objekt
  52. zurück welches das aktuell am meisten gelistete Lied des Benutzers enthält.
  53. </para>
  54. </listitem>
  55. <listitem>
  56. <para>
  57. <methodname>userGetTopTags()</methodname>: Gibt ein SimpleXML Objekt zurück
  58. das eine Liste der Tags enthält die am meisten vom aktuellen Benutzer
  59. zugeordnet wurden.
  60. </para>
  61. </listitem>
  62. <listitem>
  63. <para>
  64. <methodname>userGetTopTagsForArtist()</methodname>: Erfordert das ein Artist
  65. über <methodname>setArtist()</methodname> gesetzt wurde. Gibt ein SimpleXML
  66. Objekt zurück das die Tags enthält die am meisten dem aktuellen Artisten
  67. durch den aktuellen Benutzer zugeordnet worden sind.
  68. </para>
  69. </listitem>
  70. <listitem>
  71. <para>
  72. <methodname>userGetTopTagsForAlbum()</methodname>: Erfordert das ein Album
  73. über <methodname>setAlbum()</methodname> gesetzt wurde. Gibt ein SimpleXML
  74. Objekt zurück das die Tags enthält die am meisten dem aktuellen Album durch
  75. den aktuellen Benutzer zugeordnet worden sind.
  76. </para>
  77. </listitem>
  78. <listitem>
  79. <para>
  80. <methodname>userGetTopTagsForTrack()</methodname>: Erfordert das ein Lied
  81. über <methodname>setTrack()</methodname> gesetzt wurde. Gibt ein SimpleXML
  82. Objekt zurück das die Tags enthält die am meisten dem aktuellen Lied vom
  83. aktuellen Benutzer zugeordnet worden sind.
  84. </para>
  85. </listitem>
  86. <listitem>
  87. <para>
  88. <methodname>userGetFriends()</methodname>: Gibt ein SimpleXML Objekt zurück
  89. das die Benutzernamen der Freunde des aktuellen Benutzers enthält.
  90. </para>
  91. </listitem>
  92. <listitem>
  93. <para>
  94. <methodname>userGetNeighbours()</methodname>: Gibt ein SimpleXML Objekt
  95. zurück das die Benutzernamen der Personen enthält die ähnliche
  96. Unterhaltungs-Gewohnheiten wie der aktuelle Benutzer haben.
  97. </para>
  98. </listitem>
  99. <listitem>
  100. <para>
  101. <methodname>userGetRecentTracks()</methodname>: Gibt ein SimpleXML Objekt
  102. zurück das eine Liste der 10 zuletzt gespielten Lieder des aktuellen
  103. Benutzers enthält.
  104. </para>
  105. </listitem>
  106. <listitem>
  107. <para>
  108. <methodname>userGetRecentBannedTracks()</methodname>: Gibt ein SimpleXML
  109. Objekt zurück das eine Liste der 10 zuletzt verbannten Lieder des aktuellen
  110. Benutzers enthält.
  111. </para>
  112. </listitem>
  113. <listitem>
  114. <para>
  115. <methodname>userGetRecentLovedTracks()</methodname>: Gibt ein SimpleXML
  116. Objekt zurück das eine Liste der 10 zuletzt geliebten Lieder des aktuellen
  117. Benutzers enthält.
  118. </para>
  119. </listitem>
  120. <listitem>
  121. <para>
  122. <methodname>userGetRecentJournals()</methodname>: Gibt ein SimpleXML Objekt
  123. zurück das eine Liste der letzten Journaleintröge des aktuellen Benutzers
  124. enthält.
  125. </para>
  126. </listitem>
  127. <listitem>
  128. <para>
  129. <methodname>userGetWeeklyChartList()</methodname>: Gibt ein SimpleXML Objekt
  130. zurück das eine Liste der Wochen enthält für die ein Wochenchart des
  131. aktuellen Benutzers existiert.
  132. </para>
  133. </listitem>
  134. <listitem>
  135. <para>
  136. <methodname>userGetRecentWeeklyArtistChart()</methodname>: Gibt ein
  137. SimpleXML Objekt zurück das die letzten wöchentlichen Artistencharts des
  138. aktuellen Benutzers enthält.
  139. </para>
  140. </listitem>
  141. <listitem>
  142. <para>
  143. <methodname>userGetRecentWeeklyAlbumChart()</methodname>: Gibt ein SimpleXML
  144. Objekt zurück das die letzten wöchentlichen Albumcharts des aktuellen
  145. Benutzers enthält.
  146. </para>
  147. </listitem>
  148. <listitem>
  149. <para>
  150. <methodname>userGetRecentWeeklyTrackChart()</methodname>: Gibt ein SimpleXML
  151. Objekt zurück das die letzten wöchentlichen Liedercharts des aktuellen
  152. Benutzers enthält.
  153. </para>
  154. </listitem>
  155. <listitem>
  156. <para>
  157. <methodname>userGetPreviousWeeklyArtistChart($fromDate,
  158. $toDate)</methodname>: Gibt ein SimpleXML Objekt zurück das die
  159. wöchentliche Artistencharts von <varname>$fromDate</varname> bis
  160. <varname>$toDate</varname> für den aktuellen Benutzer enthält.
  161. </para>
  162. </listitem>
  163. <listitem>
  164. <para>
  165. <methodname>userGetPreviousWeeklyAlbumChart($fromDate,
  166. $toDate)</methodname>: Gibt ein SimpleXML Objekt zurück das die
  167. wöchentlichen Albumcharts von <varname>$fromDate</varname> bis
  168. <varname>$toDate</varname> für den aktuellen Benutzer enthält.
  169. </para>
  170. </listitem>
  171. <listitem>
  172. <para>
  173. <methodname>userGetPreviousWeeklyTrackChart($fromDate,
  174. $toDate)</methodname>: Gibt ein SimpleXML Objekt zurück das die
  175. wöchentlichen Liedercharts von <varname>$fromDate</varname> bis
  176. <varname>$toDate</varname> für den aktuellen Benutzer enthält.
  177. </para>
  178. </listitem>
  179. </itemizedlist>
  180. </para>
  181. <example id="zend.service.audioscrobbler.users.example.profile_information">
  182. <title>Informationen von Benutzerprofilen erhalten</title>
  183. <para>
  184. In diesem Beispiel werden die <methodname>setUser()</methodname> und
  185. <methodname>userGetProfileInformation()</methodname> Methoden verwendet um
  186. Informationen über ein spezielles Benutzerprofil zu erhalten:
  187. </para>
  188. <programlisting language="php"><![CDATA[
  189. $as = new Zend_Service_Audioscrobbler();
  190. // Den Benutzer setzen dessen Profilinformationen man empfangen will
  191. $as->setUser('BigDaddy71');
  192. // Informationen von BigDaddy71's Profil erhalten
  193. $profileInfo = $as->userGetProfileInformation();
  194. // Einige von Ihnen darstellen
  195. print "Informationen für $profileInfo->realname können unter "
  196. . "$profileInfo->url gefunden werden";
  197. ]]></programlisting>
  198. </example>
  199. <example id="zend.service.audioscrobbler.users.example.weekly_artist_chart">
  200. <title>Die wöchentlichen Artistencharts eines Benutzers erhalten</title>
  201. <programlisting language="php"><![CDATA[
  202. $as = new Zend_Service_Audioscrobbler();
  203. // Den Benutzer setzen dessen wöchentliche Artistencharts man empfangen will
  204. $as->setUser('lo_fye');
  205. // Eine Liste von vorherigen Wochen erhalten in denen Chartdaten vorhanden sind
  206. $weeks = $as->userGetWeeklyChartList();
  207. if (count($weeks) < 1) {
  208. echo 'Keine Daten vorhanden';
  209. }
  210. sort($weeks); // Die Liste der Wochen sortieren
  211. $as->setFromDate($weeks[0]); // Das Startdatum setzen
  212. $as->setToDate($weeks[0]); // Das Enddatum setzen
  213. $previousWeeklyArtists = $as->userGetPreviousWeeklyArtistChart();
  214. echo 'Artisten Chart für Woche '
  215. . date('Y-m-d h:i:s', $as->from_date)
  216. . '<br />';
  217. foreach ($previousWeeklyArtists as $artist) {
  218. // Artistennamen mit Links zu Ihrem Profil darstellen
  219. print '<a href="' . $artist->url . '">' . $artist->name . '</a><br />';
  220. }
  221. ]]></programlisting>
  222. </example>
  223. </sect2>
  224. <sect2 id="zend.service.audioscrobbler.artists">
  225. <title>Artisten</title>
  226. <para>
  227. <classname>Zend_Service_Audioscrobbler</classname> bietet verschiedene Methoden um Daten
  228. über einen speziellen Artisten zu empfangen, der über die
  229. <methodname>setArtist()</methodname> Methode spezifiziert wurde:
  230. <itemizedlist>
  231. <listitem>
  232. <para>
  233. <methodname>artistGetRelatedArtists()</methodname>: Gibt ein SimpleXML
  234. Objekt zurück das eine Liste von Artisten enthält die dem aktuellen Artisten
  235. ähnlich sind.
  236. </para>
  237. </listitem>
  238. <listitem>
  239. <para>
  240. <methodname>artistGetTopFans()</methodname>: Gibt ein SimpleXML Objekt
  241. zurück das eine Liste von Benutzern enthält die den aktuellen Artisten am
  242. meisten hören.
  243. </para>
  244. </listitem>
  245. <listitem>
  246. <para>
  247. <methodname>artistGetTopTracks()</methodname>: Gibt ein SimpleXML Objekt
  248. zurück das eine Liste der am meisten gewählten Lieder des aktuellen Artisten
  249. enthält.
  250. </para>
  251. </listitem>
  252. <listitem>
  253. <para>
  254. <methodname>artistGetTopAlbums()</methodname>: Gibt ein SimpleXML Objekt
  255. zurück das eine Liste der aktuell am meisten gewählten Alben des aktuellen
  256. Artisten enthält.
  257. </para>
  258. </listitem>
  259. <listitem>
  260. <para>
  261. <methodname>artistGetTopTags()</methodname>: Gibt ein SimpleXML Objekt
  262. zurück das eine Liste der Tags enthält die dem aktuellen Artisten am meisten
  263. zugeordnet werden.
  264. </para>
  265. </listitem>
  266. </itemizedlist>
  267. </para>
  268. <example id="zend.service.audioscrobbler.artists.example.related_artists">
  269. <title>Ähnliche Artisten erhalten</title>
  270. <programlisting language="php"><![CDATA[
  271. $as = new Zend_Service_Audioscrobbler();
  272. // Den Artisten setzen für den man ähnliche Artisten bekommen will
  273. $as->setArtist('LCD Soundsystem');
  274. // Ähnliche Artisten erhalten
  275. $relatedArtists = $as->artistGetRelatedArtists();
  276. foreach ($relatedArtists as $artist) {
  277. // Die ähnlichen Artisten anzeigen
  278. print '<a href="' . $artist->url . '">' . $artist->name . '</a><br />';
  279. }
  280. ]]></programlisting>
  281. </example>
  282. </sect2>
  283. <sect2 id="zend.service.audioscrobbler.tracks">
  284. <title>Lieder</title>
  285. <para>
  286. <classname>Zend_Service_Audioscrobbler</classname> bietet zwei Methoden für das
  287. Empfangen von Daten für ein einzelnes Lied, das über die
  288. <methodname>setTrack()</methodname> Methode spezifiziert wurde:
  289. <itemizedlist>
  290. <listitem>
  291. <para>
  292. <methodname>trackGetTopFans()</methodname>: Gibt ein SimpleXML Objekt zurück
  293. das eine Liste mit den Benutzern enthält die das aktuelle Lied am meisten
  294. gehört haben.
  295. </para>
  296. </listitem>
  297. <listitem>
  298. <para>
  299. <methodname>trackGetTopTags()</methodname>: Gibt ein SimpleXML Objekt zurück
  300. das eine Liste der Tags enthält die dem aktuellen Tag am meisten hinzugefügt
  301. werden.
  302. </para>
  303. </listitem>
  304. </itemizedlist>
  305. </para>
  306. </sect2>
  307. <sect2 id="zend.service.audioscrobbler.tags">
  308. <title>Tags</title>
  309. <para>
  310. <classname>Zend_Service_Audioscrobbler</classname> bietet verschiedene Methoden für das
  311. Empfangen von Daten die einem einzelnen Tag zugeordnet sind, welches über die
  312. <methodname>setTag()</methodname> Methode zugeordnet werden:
  313. <itemizedlist>
  314. <listitem>
  315. <para>
  316. <methodname>tagGetOverallTopTags()</methodname>: Gibt ein SimpleXML Objekt
  317. zurück das eine Liste von Tags enthält die am meisten in Audioscrobbler
  318. verwendet werden.
  319. </para>
  320. </listitem>
  321. <listitem>
  322. <para>
  323. <methodname>tagGetTopArtists()</methodname>: Gibt ein SimpleXML Objekt
  324. zurück das eine Liste von Artisten enthält denen das aktuelle Tag am meisten
  325. zugeordnet wurden.
  326. </para>
  327. </listitem>
  328. <listitem>
  329. <para>
  330. <methodname>tagGetTopAlbums()</methodname>: Gibt ein SimpleXML Objekt zurück
  331. das eine Liste von Alben enthält die dem aktuellen Tag am meisten zugeordnet
  332. wurden.
  333. </para>
  334. </listitem>
  335. <listitem>
  336. <para>
  337. <methodname>tagGetTopTracks()</methodname>: Gibt ein SimpleXML Objekt zurück
  338. das eine Liste von Liedern enthält die dem aktuellen Tag am meisten
  339. zugeordnet wurden.
  340. </para>
  341. </listitem>
  342. </itemizedlist>
  343. </para>
  344. </sect2>
  345. <sect2 id="zend.service.audioscrobbler.groups">
  346. <title>Gruppen</title>
  347. <para>
  348. <classname>Zend_Service_Audioscrobbler</classname> bietet verschiedene Methoden um Daten
  349. zu erhalten die einer speziellen Gruppe gehören, die über die
  350. <methodname>setGroup()</methodname> Methode zugeordnet wurde:
  351. <itemizedlist>
  352. <listitem>
  353. <para>
  354. <methodname>groupGetRecentJournals()</methodname>: Gibt ein SimpleXML Objekt
  355. zurück das eine Liste der letzten Journalbeiträge der Benutzer der aktuellen
  356. Gruppe enthält.
  357. </para>
  358. </listitem>
  359. <listitem>
  360. <para>
  361. <methodname>groupGetWeeklyChart()</methodname>: Gibt ein SimpleXML Objekt
  362. zurück das eine Liste der Wochen enthält für die ein wöchentliches Chart der
  363. aktuellen Gruppe existiert.
  364. </para>
  365. </listitem>
  366. <listitem>
  367. <para>
  368. <methodname>groupGetRecentWeeklyArtistChart()</methodname>: Gibt ein
  369. SimpleXML Objekt zurück das die letzten wöchentlichen Artistencharts der
  370. aktuellen Gruppe enthält.
  371. </para>
  372. </listitem>
  373. <listitem>
  374. <para>
  375. <methodname>groupGetRecentWeeklyAlbumChart()</methodname>: Gibt ein
  376. SimpleXML Objekt zurück das die letzten wöchentlichen Albumcharts der
  377. aktuellen Gruppe enthält.
  378. </para>
  379. </listitem>
  380. <listitem>
  381. <para>
  382. <methodname>groupGetRecentWeeklyTrackChart()</methodname>: Gibt ein
  383. SimpleXML Objekt zurück das die letzten wöchentlichen Liedercharts der
  384. aktuellen Gruppe enthält.
  385. </para>
  386. </listitem>
  387. <listitem>
  388. <para>
  389. <methodname>groupGetPreviousWeeklyArtistChart($fromDate,
  390. $toDate)</methodname>: Erfordert <methodname>setFromDate()</methodname>
  391. und <methodname>setToDate()</methodname>. Gibt ein SimpleXML Objekt zurück
  392. das die wöchentlichen Artistencharts vom aktuellen fromDate bis zum
  393. aktuellen toDate der aktuellen Gruppe enthält.
  394. </para>
  395. </listitem>
  396. <listitem>
  397. <para>
  398. <methodname>groupGetPreviousWeeklyAlbumChart($fromDate,
  399. $toDate)</methodname>: Erfordert <methodname>setFromDate()</methodname>
  400. und <methodname>setToDate()</methodname>. Gibt ein SimpleXML Objekt zurück
  401. das die wöchentlichen Albumcharts vom aktuellen fromDate bis zum aktuellen
  402. toDate der aktuellen Gruppe enthält.
  403. </para>
  404. </listitem>
  405. <listitem>
  406. <para>
  407. <methodname>groupGetPreviousWeeklyTrackChart($fromDate,
  408. $toDate)</methodname>: Gibt ein SimpleXML Objekt zurück das die
  409. wöchentlichen Liedercharts vom aktuellen fromDate bis zum aktuellen toDate
  410. für die aktuelle Gruppe enthält.
  411. </para>
  412. </listitem>
  413. </itemizedlist>
  414. </para>
  415. </sect2>
  416. <sect2 id="zend.service.audioscrobbler.forums">
  417. <title>Foren</title>
  418. <para>
  419. <classname>Zend_Service_Audioscrobbler</classname> bietet eine Methode für das Empfangen
  420. von Daten eines einzelnen Forums, das über die <methodname>setForum()</methodname>
  421. Methode spezifiziert wurde:
  422. <itemizedlist>
  423. <listitem>
  424. <para>
  425. <methodname>forumGetRecentPosts()</methodname>: Gibt ein SimpleXML Objekt
  426. zurück das eine Liste der letzten Beiträge im aktuellen Forum enthält.
  427. </para>
  428. </listitem>
  429. </itemizedlist>
  430. </para>
  431. </sect2>
  432. </sect1>