Documentatie
Om gebruik te kunnen van de API heeft een guci en het wachtwoord in md5 formaat nodig.
Bent u niet thuis in het programmeren van PHP of andere talen dan kunt u onder downloads een applicatie vinden die bij een wijziging in een nowplaying.txt de data post naar de gekozen services
Bent u niet thuis in het programmeren van PHP of andere talen dan kunt u onder downloads een applicatie vinden die bij een wijziging in een nowplaying.txt de data post naar de gekozen services
De api zelf
Alle aanvragen zijn moeten een post verzoek zijn.
De volgende velden bestaan er:
** is verplicht bij shoutcast
De post aanvraag moet gedaan worden naar http://api.depubliekeomroep.nl/anp/index.php
Hier onder volgt een voorbeeld code in PHP voor deze code moet cURL geinstaleerd zijn.
De volgende velden bestaan er:
- guci*
- wachtwoord als md5*
- artiest*
- artiesttwitter
- encrkey**
- titel*
- voor*
** is verplicht bij shoutcast
Uitleg van de velden en de mogelijke waarden:
Veld | Omschrijving | Type |
guci | De guci code die je krijgt bij het aanmelden (ook te vinden onder settings) | 40 characters ascii |
wachtwoord als md5 | het wachtwoord wat je ook gebruikt voor het inloggen als md5 (te vinden onder settings) | 32 characters ascii |
artiest | De naam van de artiest | ascii |
artiesttwitter (optioneel) | als de artiest een twitter account heeft die in onze database staat deze gebruiken ipv de naam(b.v. artiest is VanVelzen maar wordt weergegeven als @VanVelzenMusic) | als je dit wil gebruiken dan deze waarde 1 maken. |
titel | titel van de plaat | ascii |
encrkey | Bij het gebruik van de shoutcast service moet het wachtwoord worden gedecrypt. Bij het aanmelden van die servers moet er een key worden gegeven. Deze moet hier worden verstuurd. | ascii |
voor | Geef aan naar welke services de now playing moet worden gestuurd | Zie onderstaande tabel, tel de waarden bij elkaar op voor welke services (b.v. twitter en lastfm wordt 3. twitter en shoutcast wordt 5) |
Service | Waarde |
1 | |
Last.FM | 2 |
Shoutcast server | 4 (nog niet geimplementeerd) |
Tumblr | 8 (nog niet geimplementeerd) |
De post aanvraag moet gedaan worden naar http://api.depubliekeomroep.nl/anp/index.php
Hier onder volgt een voorbeeld code in PHP voor deze code moet cURL geinstaleerd zijn.
<?php
function http_post($url, $post) {
$c = curl_init();
curl_setopt($c, CURLOPT_URL, $url);
curl_setopt($c, CURLOPT_POST, true);
curl_setopt($c, CURLOPT_POSTFIELDS, $post);
curl_setopt ($c, CURLOPT_RETURNTRANSFER, true);
return curl_exec($c);
}
$fields = array(
'guci'=>urlencode('22e00020e7c390a29527a83c5a9cd37e5355e452'),
'wachtwoord'=>urlencode('b074aa7b31534778dafe64dc4b0bf828'),
'artiest'=>urlencode('Muse'),
'title'=>urlencode('Supermassive Black Hole'),
'artiesttwitter'=>urlencode('1'),
'encrkey'=>urlencode('zeergeheimesleutel'),
'voor'=>urlencode('3')
);
$url = 'http://api.depubliekeomroep.nl/anp/index.php';
echo http_post($url, http_build_query($fields));
?>
Artiesten twitter database api
Kijk welke twitter account bij een artiest hoort (mits opgenomen in onze database)
Gebruik: doe een get verzoek aan http://api.depubliekeomroep.nl/anp/artiest.php
met de variable artiest=<naam van artiest>
Het antwoord is het twitter account van de artiest (zonder http://www.twitter.com/)
Voorbeeld voor php:
Als er dus geen artiest kan worden gevonden krijg je niks terug.
Gebruik: doe een get verzoek aan http://api.depubliekeomroep.nl/anp/artiest.php
met de variable artiest=<naam van artiest>
Het antwoord is het twitter account van de artiest (zonder http://www.twitter.com/)
Voorbeeld voor php:
<?php
function curl_get_file_contents($artiest)
{
$URL = "http://api.depubliekeomroep.nl/anp/artiest.php?artiest=" . urlencode($artiest);
$c = curl_init();
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_URL, $URL);
$contents = curl_exec($c);
curl_close($c);
if ($contents) return $contents;
else return FALSE;
}
$result = curl_get_file_contents("Muse");
if ($result != FALSE) {
//twitter account gevonden en $result bevat de naam.
} else {
//geen twitter account gevonden
}
?>
Als er dus geen artiest kan worden gevonden krijg je niks terug.
Album Art viewer
Geef een url naar de albumart bijhorend bij een artiest/track combinatie
Gebruik: doe een get verzoek aan http://api.depubliekeomroep.nl/anp/albumart.php
met de variable artiest=<naam van artiest>&titel=<titel van de track>
optioneel kun je nog size= toevoegen zie de tabel hier onder welke waarde je kunt kiezen.
Vul je niks in dan krijg je automatisch als formaat large terug.
Het antwoord is een url van het plaatje
Voorbeeld voor php:
of wat ook werkt:
Als er geen albumart gevonden is krijg je niks terug.
Gebruik: doe een get verzoek aan http://api.depubliekeomroep.nl/anp/albumart.php
met de variable artiest=<naam van artiest>&titel=<titel van de track>
optioneel kun je nog size= toevoegen zie de tabel hier onder welke waarde je kunt kiezen.
Vul je niks in dan krijg je automatisch als formaat large terug.
Het antwoord is een url van het plaatje
Voorbeeld voor php:
<?php
function curl_get_file_contents($artiest,$titel,$size = "large")
{
$URL = "http://api.depubliekeomroep.nl/anp/albumart.php?artiest=" .
urlencode($artiest) . "&titel=". urlencode($titel)
."&size=". urlencode($size);
$c = curl_init();
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_URL, $URL);
$contents = curl_exec($c);
curl_close($c);
if ($contents) return $contents;
else return FALSE;
}
$result = curl_get_file_contents("Muse","Bliss");
if ($result != FALSE) {
//albumart gevonden account gevonden en $result bevat de url naar het
// plaatje
print "<img src=\" " . $result . "\">";
} else {
//geen albumart gevonden
}
?>
of wat ook werkt:
<?php
print "<img src=\"" . file_get_contents("http://api.depubliekeomroep.nl
/anp/albumart.php?artiest=muse&titel=bliss&size=small") . "\">";
?>
Als er geen albumart gevonden is krijg je niks terug.
Grotes van de plaatjes
Size waarde | Grote |
small | 64x64 px |
medium | 126x126 px |
large | 174x174 px |
extralarge | 300x300 px |