XML Import

Aus Feiyr Wiki
Zur Navigation springen Zur Suche springen

XML Import Schnittstelle erlaubt den electronischen Datenaustausch zwischen dem Musik Label, Artist und dem Feiyr System. Über die XML Import Schnittstelle[1] bietet Feiyr die Möglichkeit mehrere Labels, Artists, Tracks und Bundles auf deinen Feiyr Account hochzuladen, ohne dass jede Information manuell in die Webseite eingegeben werden muss.

Diese Lösung ist ideal für Feiyr Kunden, wenn du mit einer Datenbank arbeitest um deine Veröffentlichungen bei Feiyr zu verwalten. Jedoch ist einiges technisches Verständnis nötig, um die Vorgehensweise zu verstehen und ein Tool zu installieren, das die XML-Dateien [2] erzeugt und zu Feiyr sendet.



XML Import

Wer kann es benutzen?

Jedem Feiyr User steht es frei die XML-Schnittstelle ohne zusätzliche Kosten zu nutzen. Wenn du die Feiyr XML Import Schnittstelle nutzen möchtest, lade bitte die Bedienungsanleitung in deinem Feiyr Account herunter.


XML-Prüfung

Mit diesem Tool kannst du prüfen, ob die XML-Dateien die du erstellt hast in das XML-Schema passen, das die Basis der XML Import Schnittstelle bildet. Nur wenn die XML-Datei in das Schema passt, kann die Datei vom Import Programm bearbeitet werden.

Bitte beachte: Die Schemaprüfung ist der erste Schritt, damit die Datei bearbeitet und die Daten importiert werden. Es gibt dennoch einige Dinge, die schief laufen können. Im Register „Logs“ findest für jede hochgeladene Datei einen Eintrag (=Log).


XML Import Log

Bitte beachte, Dateien die älter als 10 Tage sind werden aus dem FTP Account gelöscht. Momentan sind keine XML- oder XML-Log-Dateien in deinem FTP-Account.


I. Für Entscheider

1. Allgemeine Informationen

Die Feiyr Import Schnittstelle bietet die Möglichkeit einem Feiyr Account Labels, Interpreten, Tracks und Bundles hinzuzufügen, ohne die Feiyr Webseite zu benutzen. Grundsätzlich geschieht dies durch das Hochladen einer XML Datei, die alle Informationen enthält, auf den FTP Account des Feiyr Accounts.


2. Wer sollte diese Schnittstelle benutzen

Generell kann jeder Feiyr User diese Schnittstelle ohne zusätzliche Kosten nutzen. Jedoch erfordert es einiges technisches Wissen ein Programm einzurichten, das von dies em System aus exportiert und XML Dateien erstellt, die die Feiyr Import Schnittstelle verarbeiten kann. Daher ist dieses System ideal für User, die sehr viel Content haben und ein Verwaltungssystem verwenden, von dem aus alle benötigten Daten exportiert werden können. Mit einigem technischen Aufwand sollte eine Ein-Klick Lösung in deiner Software möglich sein.


3. Feature Liste

Anlegen von Labels

- Ein Logo zu einem Label hinzufügen

- Interpreten anlegen

- Ein Logo zu einem Artist hinzufügen

- Tracks anlegen

- Eine Audiodatei zu einem Track hinzufügen

- Bundles anlegen

- Tracks zu einem Bundle hinzufügen


4. Beschränkungen

Wichtig: Die Feiyr Import Schnittstelle fügt nur neue Dateien hinzu, bereits existierende Dateien werden nicht verändert. Des Weiteren veröffentlicht oder löscht sie nichts, die Veröffentlichung muss auf der Feiyr Webseite vorgenommen werden.


II. Technisches

1. Layout der XML-Datei

Die XML-Datei hat ein bestimmtes Schema, das eingehalten werden muss. Dieses Schema findest du hier:


https://www.feiyr.com/interface/feiyr_data_import.xsd.php


Das Hauptelement der Datei ist der <feiyr> Tag in dem alle anderen Elemente eingeschlossen sind. Der Tag enthält das zwingend erforderliche Attribut Username, der den Usernamen des Feiyr-Accounts in den der Content importiert werden soll enthalten muss und er muss das grundlegende Schema enthalten.


Innerhalb des Feiyr Elements sind optionale Elemente welche die Daten <labels>, <artists>, <tracks> und <bundles> beschreiben.


Das wesentliche Layout der XML-Datei sieht folgendermaßen aus:


<?xml version="1.0" encoding="UTF-8"?> <feiyr username="USERNAME" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://www.feiyr.com/interface/feiyr_data_import.xs d.php">


 <labels>
  ...
 </labels>
 <artists>
 ...
 </artists>
 <tracks>
 ...
 </tracks>
 <bundles>
 ...
 </bundle>
 <tracks2bundle>
 ...
 </tracks2bundle>
 </feiyr>



2. Benennung und Hochladen der XML-Datei

Jeder Feiyr-Account hat seinen eigenen FTP-Account auf den die Audiodateien für die Tracks normalerweise hochgeladen werden. Die XML-Datei und alle referenzierten Posten müssen auf denselben FTP-Account geladen werden.

Wie die XML-Datei benannt wird ist dem User überlassen, es ist jedoch zwingend notwendig, dass sie die Endung .xml (in Kleinbuchstaben) hat. Wenn die XML-Datei andere Dateien referenziert (z. B. Audio- und Bilddateien) ist es sehr empfehlenswert, zuerst die Audio- und Bilddatei zuerst hochzuladen und die XML-Datei als letztes. Andernfalls kann es passieren, dass die XML-Datei verarbeitet wird, bevor die referenzierten Audio- und Bilddateien verfügbar und komplett sind. Dies würde einen Fehler hervorrufen.  


3. Größenbeschränkungen

Die Größe einer XML-Datei ist auf 1 Megabyte begrenzt. Wenn du mehr Daten übertragen möchtest, teile die Daten in mehrere XML-Dateien auf.


4. Dateireferenzierungen innerhalb der XML-Datei

Für Artists, Labels und Bundles kannst du Bilddateien referenzieren, die dann das Logo werden (für Labels), Portraits (für Artists) oder Cover Artwork (für Bundles). Für Tracks kannst du Audiodateien referenzieren.

Um dies tu tun, füge für jedes Element das Subelement <file> ein.

Es muss drei Subelemente innerhalb von <File> geben: <url>, <md5> und <filetype>.

<url> beschreibt den Standort der Datei. Dies kann sowohl ein Remote-Standort sein der per HTTP, HTTPS oder FTP erreichbar ist oder ein Standort auf dem FTP-Account. <md5> muss die MD5 Prüfsumme der Datei enthalten. <filetype> muss den Dateityp als Endung enthalten. Bei Bildern wird nur der Dateityp .jpg unterstützt. Für Audiodateien sind die Dateitypen .wav, .flac, und .shn zulässig.


4.1 Verschiedene Möglichkeiten Dateien zu referenzieren

4.1.1. Lokale Datei

Wenn du die Dateien auf den Feiyr FTP-Account lädst, sprechen wir von einer lokalen Datei.

Um die lokale Datei zu referenzieren, gib den vollständigen Pfad des FTP-Accounts an. Wenn die Datei im Root-Verzeichnis des FTP-Accounts ist, muss die Datei mit /Dateiname referenziert werden. Wenn die Datei im Unterverzeichnis liegt muss /dirname/Dateiname angegeben werden.


4.1.2. HTTP oder HTTPS Remote-Dateien

Wenn die Datei auf einem Webserver öffentlich per HTTP oder HTTPS Protokoll zugänglich ist, gib die vollständige URL der Datei an. (z. B. https://servername.tld/filename.wav)

Es ist nicht zulässig jegliche Art von Authentifizierung für http /https zu verwenden.


4.1.3. FTP Remote-Dateien

Wenn die Datei auf einem FTP-Account liegt, gib bitte die vollständige FTP-URL zu der Datei an.

Zum Beispiel: ftp://username.password@servername.tld/Path/Filename.wav:port

FTPS oder SFTP werden nicht unterstützt.

Bitte beachte die folgenden Beschränkungen für FTP Remote-Dateien:

– Keine Doppelpunkte (:) im Username, Passwort, Dateinamen

– Kein @ im Username, Passwort, Dateinamen – Keine Doppel-Schrägstriche (//) im Username, Passwort, Dateinamen


4.1.4. Allgemeine Hinweise zu Remotedateien

Bitte gib keine Server, die durch eine langsame Verbindung (Upload-Rate <1 Megabyte s) oder eine Einwahlverbindung an das Internet angeschlossen sind.


4.2 Einige Beispiele für <file>:

<file>

    <url>/mylogo.jpg</url>
    <md5>0c3f4805adb5dfcb5fed5a9bcea03429</md5>
    <filetype>jpg</filetype>

</file> <file>

    <url>http://www.myserver.com/audio/mysoundfile.wav</url>
    <md5>0c3f4805adb5dfcb5fed5a9bcea03429</md5>
    <filetype>wav</filetype>

</file> <file>

     <url>https://www.myserver.com/audio/mysoundfile.flac</url>
     <md5>0c3f4805adb5dfcb5fed5a9bcea03429</md5>
     <filetype>flac</filetype>

</file> <file>

     <url>ftp://username:secret@myserver.com/audio/mysoundfile.shn:21</url>
     <md5>0c3f4805adb5dfcb5fed5a9bcea03429</md5>
     <filetype>shn</filetype>

</file>

5. Bearbeitung & Fehlerbehebung

Unser System prüft regelmäßig, ob es neue XML-Dateien auf dem FTP-Account des Users gibt und verarbeitet diese automatisch.

Als erstes prüfen wir, ob die XML-Datei dem Schema entspricht. Ist dies der Fall, warden die Dateien in verschiedene Abschnitte (Labels, Artists, Tracks, Bundles und track2bundle) aufgeteilt und jeder dieser Abschnitte wird separat bearbeitet. Innerhalb der Abschnitte wird jeder Datensatz (z. B. <label>, <artist>, …) wiederrum gesondert verarbeitet.


Nachdem eine XML-Datei verarbeitet wurde, wird eine neue XML-Datei im FTP-Account des Users platziert, die wie die ursprüngliche Datei benannt wird und mit dem Zusatz .result versehen wird (z. B. 001.xml.result, wenn der ursprüngliche Dateiname 001.xml war). In dieser Datei findest du Informationen über die Ergebnisse der Verarbeitung zu jedem Element (Fehler oder Erfolg) und im Falle eines Fehlers eine oder mehrere Fehlermeldungen.


Beispiele:


<feiyr>

<labels>

<item>

<name>CaAAjual Records New</name>

<result>error</result>

  <message>

<item>The labelname &quot;CAjual Records

New&quot; is not valid due to improper upper- and lowercase writing or invalid

characters.</item>

</message>

</item>

<item>

<name>Test Label</name>

<result>success</result>

</item>

</labels>

<feiyr>


Nachdem die XML-Datei bearbeitet wurde wird sie durch hinzufügen der Endung .processed neu benannt. Lokale Dateien die innerhalb der XML-Datei referenziert wurden bleiben unberührt. Dateien auf dem FTP-Account, die älter als 10 Tage sind werden automatisch gelöscht.


6. Labels

Wenn das <labels> Element existiert, muss es mindestens ein Element <label> enthalten in dem die Label-Daten beschrieben sind. Die Anzahl der <label> Elemente innerhalb <labels> ist nicht begrenzt.


Name Daten Optional/Pflichtfeld Typ Notizen
Name des Labels P String
maxlength 200
minlenght 1
Beschreibung des Labels P String
maxlength 1000
minlength 200
Herkunftsland des Labels P String Basiert auf ISO 3166-1-alpha2-code
Length 2
Liste wichtiger Artists, multiblen Content durch Kommas trennen P String
maxlength 255
minlength 2
Link zur Label-Homepage Link zur Label-Homepage String Kompletter Link, beginnend mit http://
maxlength 200
Link zur Facebook Seite des Labels O String
maxlength 200
Link zur Mypace Seite des Labels O String Notizen
maxlength 200
Link zur Twitter Seite des Labels O String
maxlength 200
Link zur Youtube Seite des Labels O String
maxlength 200
Label-Code des Labels O String Kompletter Label-Code, inklusive L.C.
maxlength 8
minlength 8
Logo-Datei O Komplex Siehe 4 für Details


6.2. <labels> Beispiele

<labels> <label> <name>Cajual Records</name> <description>Curtis Jones, aka Green Velvet and Cajmere is the founder of Cajual Records. Used as an outlet for varying forms of techno beats since '94, Curtis has provided an array of sounds from the label's Chicago base. Cajual has featured DJ Sneak, Gemini, Dajae, Glenn Underground, Johnny Fiasco and many others. 2010 will see somewhat of a relaunch for Cajual Records and the release of a new Green Velvet album with an exciting guest list that includes Bad Boy Bill, DJ Chuckie, Riva Starr, Claude Vonstroke, Major Lazer, Diplo, Kid Sister, Santiago & Bushido, Carte Blanche, Bingo Players, Felix Cartal, Crookers, Tommie Sunshine and more. Stay tuned!</description> <country_code>DE</country_code> <artist_list>Some artist, some other artist</artist_list> <link>http://www.cajual.com/</link> <facebook_link>http://www.facebook.com/pages/Feiyr/78260950928</facebook_link > <label_code>LC 08151</label_code> <file> <url>http://www.cajual.com/logo.jpg</url> <md5>0c3f4805adb5dfcb5fed5a9bcea03429</md5> </file> </label> </labels>


7. Artists

Wenn das <artists> Element existiert, muss es mindestens ein Element <artist> enthalten, in dem die Artistdaten beschrieben sind. Die Anzahl an <artist> Elementen innerhalb von <artists> ist nicht begrenzt.

' ' ' ' '
Name Daten Optional/Pflichtfeld Typ Notizen
Name des Labels P String
maxlength 200
minlength 1
Label zu dem der Artist gehört P String Muss in Feiyr existieren oder in XML-Datei in
maxlength 200
minlength 1
Link zur Label-Homepage O String Kompletter Link, beginnend mit http://
maxlength 200
Beschreibung des Labels O String
maxlength 1000
Logo-Datei O Komplex Siehe 4 für Details



7.2. <artists> Beispiele

<artists>

      <artist>
      <name>Steve Angello</name>
      <labelname>Cajual Records</labelname>
      <link>http://www.myspace.com/steveangello</link>

</artist> <artist>

       <name>Sepp Maier</name>
       <labelname>Cajual Records</labelname>
       <link>http://www.myspace.com/steveangello</link>
       <description>Fussballheld</description>
       <file>
       <url>/logoseppMaier.jpg</url>
       <md5>0c3f480598765fcb5fed5a9bcea03429</md5>
       </file>

</artist> <artist>

       <name>Test Artist</name>
       <labelname>Cajual Records</labelname>

</artist> </artists>


8. Tracks

Wenn das Element <tracks> existiert, muss es mindestens ein Element <track> geben, in welchem die Trackdaten beschrieben sind. Die Anzahl von <track> Elementen innerhalb von <tracks> ist nicht limitiert.


8.1. Mitwirkende

8.1.1. Produzenten, Komponisten, Texter

Innerhalb des <track> Elements müssen die Komponisten, Texter und Produzenten des Tracks, mit den Elementen <composer>, <lyricist> und <publisher>, angeben. Jedes dieser Elemente hat das Subelement <name>, welches den Namen des Produzenten, Texter oder Komponist enthalten muss.   Es kann bis zu 4 <name> Elemente für Komponisten und Texter geben, für Produzenten bis zu 3. <name> muss einen String mit bis zu 200 Zeichen.


8.1.2. Performer, Featuring und Remixer

Im <track> Element must du die Performer, Featuring Artists und Remixer eines Tracks, mithilfe der Elemente <performer>, <featuring> und <Remixer>, angeben. Jedes dieser Elemente hat das Subelement <name>, welches den Namen des Performers, Featurings oder Remixers enthalten muss. Für Performer und Remixer kann es bis zu 4 <name> Elemente geben, Featuring kann bis zu 10 <name> Elemente haben. Es ist zwingend erforderlich mindestens einen Performer für jeden anzugeben. Featuring und Remixer sind optional.


9. Bundles

Wenn das <bundle> Element existiert, muss es mindestens ein <bundle> Element enthalten, in welchem die Bundledaten beschrieben sind. Die Anzahl von <bundle> Elementen ist nicht begrenzt.


9.1. Performer and featuring

Innerhalb des <bundle> Elements musst du die Performer und Featurings eines Bundles, mithilfe der Elemente <performer> und <featuring>, angeben. Jedes dieser Elemente hat das Subelement <name>, welches den Namen des Performers oder Featuring Artists enthalten muss.


<perfomer> kann bis zu 4 <name> Elemente enthalten, <featuring> bis zu 10. Es ist zwingend Erforderlich mindestens einen Performer für jedes Bundle anzugeben. Featuring ist optional.

10. Track2bundle

Mit dem <tracks2bundle> Element kannst du Tracks zu einem bestehenden Bundle hinzufügen. Die Tracks und bundles werden anhand des Titels, des Artists und des Labels identifiziert. Wenn das <tracks2bundle> Element existiert muss es mindestens ein <position> Element geben, dass alle benötigten Daten enthält um den Track und das Bundle zu identifizieren.


III. Support

Sollte es zu Fehlern in deinen XML-Dateien kommen, beachte bitte folgende Schritte, bevor du uns kontaktierst:

– Prüfe ob es eine neue Version dieser Anleitung gibt und lies diese gründlich. – Versichere dich, dass deine XML-Datei dem Schema entspricht.

Nachdem du dies getan hast, schreibe bitte eine E-Mail an technik@dance-all-day und sende die XML-Datei mit.



IV. Durch XML importierten Content auf der Webseite prüfen

Sobald es Labels, Artists, Tracks oder Bundles in deinem Account gibt, die von der XML Import Schnittstelle importiert wurden, bekommen diese spezielle Markierungen welche anzeigen, dass sie per XML Import hochgeladen wurden. Auf der Webseite wird dir für jeden Bereich ein Tab angezeigt, in dem du alle XML-Dateien auflisten lassen kannst. Dies wird dir helfen, zu überprüfen, ob alles richtig importiert wurde. Du kannst die XML-Import-Flagge entfernen, indem du auf das Zahnrad-Symbol klickst.


Bitte beachte: Alle durch XML importierten Dateien sind ab dem Zeitpunkt des Importierens voll funktionsfähig. Du musst sie nicht Formatieren oder den Status in der XML Import Liste zu prüfen. Dies ist lediglich eine Funktion die dir hilft, alle neu angekommenen Dateien auf einen Blick zu sehen.



Weblinks



Einzelnachweise