[Ajax] Playliste per Ajax erweiterbar

Dieses Thema im Forum "Webentwicklung" wurde erstellt von steiny, 8. Februar 2009 .

  1. 8. Februar 2009
    Playliste per Ajax erweiterbar

    Hi,
    suche eine Möglichkeit einen Audio Player einzubaun. Es gibt ja viele, aber:
    Er soll ohne Seitenneuladen neue mp3s in die Playliste aufnehmen können.

    Habe mir diesen Ablauf ausgedacht:
    Seite schreibt Daten per Ajax (Pfade der neuen MP3) in Xml Datei, der Player ruft diese alle 10 sec auf und schaut ob was neues gibt.


    Mir gefällt ja dieser ganz gut. Flashstar MP3 Player v1.5 (Final) - (Matthias & Caroline Kannengiesser)
    Leider aktualisiert er nicht die externe xml Datei.


    Kennt einer einen Player, mit (ajax) anpassbarer Playliste?


    THX!
     
  2. 8. Februar 2009
    AW: Playliste per Ajax erweiterbar

    Ich kann jetzt total auf dem Holzweg sein, ist schon lange her, dass ich mir darüber Gedanken machte, aber ein im Browser ausgeführtes JavaScript soll wo eine XML - Datei aktualisieren? Liegt die Datei auf dem Server oder auf dem Browser ? Ich denke, dass es dafür nichts geben wird weil das meiner Ansicht nicht möglich ist per AJAX.
    Eine andere Software kann ich dir nicht empfehlen, sry, aber vielleicht musst du dich leider sogar mit dem abfinden, was du bereits shcon hast.
     
  3. 8. Februar 2009
    AW: Playliste per Ajax erweiterbar

    Ich bin selber erst am Ajax lernen aber könnte man es nicht so machen, dass via Javascript alle paar Sekunden eine Php-Datei geladen wird (ähnlich wie bei einer Shoutbox) die dann die XML Datei aktualierst?
     
  4. 9. Februar 2009
    AW: Playliste per Ajax erweiterbar

    also so wie du dir das vorstellst klappt das nicht.

    mein lösungsvorschlag wäre folgender:

    du erstellst dir auf deinem server nen daemon der die xml-datei auf dem laufenden hält (wegen mir auch via cronjob) und im browser legst du ein ajax-updater an der alle 10sek diese xml-datei neu läd.

    um ressourcen zu sparen kannst das system sogar a weng erweitern indem du für jeden besucher deiner webseite ne session anlegst und anhand derer + ner datenbank überprüfst ob was neue mp3s vorhanden sind (zb. mit nem timestamp). die anfrage geht dann natürlich an nen controller und nicht direkt an ne xml-datei.

    die ajax-anfragen sollten natürlich asynchron sein, da sonst (vielleicht) der player a weng stockt.
     
  5. 9. Februar 2009
    AW: Playliste per Ajax erweiterbar

    Jo darauf wollte ich effektiv hinaus, mit Purem JavaScript klappt es nicht. Mit einer serverseitigigen Komponente ist das natürlich etwas anderes.

    Ans übertriebene Polling bei Besucherlast habe ich auch gedacht, aber ich meine, am Anfang mit wenig Last kann man es ruhig noch dirty machen. Hauptsache das Refactoring kommt irgendwann nicht zu kurz,

    Auch @pleq Also unterschiedliche Playlisten für jeden User? Wir in der Firma benutzen z.B. einen Player, wo jeder dann die gleiche Musik hört. Quasi eine gemeinsame Playlist.
     
  6. 9. Februar 2009
    AW: Playliste per Ajax erweiterbar

    beim zweiten quote meint ich eigentlich das er nach jedem update der playlist (vom client aus) zu dem benutzer noch nen timestamp der letzten anfrage speichert, damit man später anhand des timestamps schaun kann ob sich was an der xml-datei geändert hat. natürlich muss man dann bei jeder änderung der xml-datei auch nen timestamp abspeichern (zb. in ner datenbank).

    dann kann man auf der clientseite direkt abfragen ob die xml-datei geändert wurde oder nicht.
    wenn nicht braucht man auch die playlist nicht neu erstellen.

    -> server (stand-alone)
    -> daemon oder cronjob
    -> aktualisiert xml-datei
    -> speichert timestamp in db​

    -> client
    -> ajax (also jetzt server)
    -> überprüft timestamp aus session und db
    -> session-timestamp < db-timestamp
    -> läd playlist (server speichert timestamp in session)
    -> gibt xml-datei zurück ende
    -> gibt 0 oder leeres dokument zurück, weil nix neues vorhanden ist ende
    -> ajax ende (jetzt wieder client)
    -> prüft ajax-result
    -> bei 0 ende

    -> andernfalls xml-result verarbeiten und playlist aktualisieren​
     
  7. 9. Februar 2009
    AW: Playliste per Ajax erweiterbar

    äh.. was fertiges gibt es nicht?

    dachte an folgenden ablauf:


    Site wird geladen mit einem Flashplayer, der eine DB/XML/oder eine PhP Abfrage macht, ob was in der "Playlist" steht (Playliste kann auf DB/XML oder ein php-erzeugte Seite sein)
    Am Anfang soll die Playlist leer sein (Der User soll keinen Sound haben)

    Jetzt klickt er auf die Seite einen Link an. Dieser Link ist ein "zielloser link", der die Seite nicht neuläd. Es wird aber der Link (zur mp3 Datei) per Ajax an eine DB/XML Seite geschickt und dort gespeichert.

    Jetzt ruft der Player (in 20 sec. intervall) diese Playlist auf, stellt fest es steht was drin, füght den Link in seine interene Playliste ein und spielt ihn ab!

    Geht doch so? Oder?

    Gibt es so was noch nicht?!
     
  8. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.