Embed Probleme. XPI automatisch installieren?

  • Hallo

    Ich habe ein kleines Problem. Ich habe mit hilfe von embed ein NSV Stream in die Seite eingebunden. Um es abzuspielen benötigt man das entsprechende Plugin. Jedoch schaffe ich es nicht, dass der Installdialog erschaint. Man kann nur manuell runterladen, und dann installieren. An sich ist eine Manuelle instalation zwar nicht schwer, aber die meisten User auf meiner Seite sind komplette noods, die dann 20000 mal fragen werden, wieso es nicht geht.

    Hier der Code:

    Code
    embed type="application/x-nsv-vp3-mp3" width=640 height=480 codebase="http://www.nullsoft.com/nsv/embed/nsvmoz_vp3_mp3.xpi" location="Stream URL=)"></embed

    Fals jemand weis, wie ich alle FireFoxe zwingen kann den Dialog anzuzeigen, dann schreibt es bitte.

    Danke im Vorraus

    MfG Sogorukuhn

  • du müsstest per js scannen ob das plugin installiert ist und dann entsprechend die xpi-installation des plugins anzubieten. wie man es schafft, dass nicht der download- sondern der installations-dialog angezeigt wird, weiß ich leider nicht, ich kenn mich nicht aus mit js. jemand anderes müsste es wissen.

  • Danke für den Tipp. Jedoch will ich nicht wissen, ob dieses PlugIn schon installirt ist. Wenn es nciht installiert ist, dann erkennt es der FireFox selber, und zeigt die berühmten grünen grünen Puzzletile(FF v2.0), oder versucht das PlugIn runter zu laden (FF v1.0). Und ich will, dass das Plugin installiert wird.

    Oder mal eine andere Frage. Wie kann ich einen Link, oder Button machen, beim klick auf welchen die Instalation startet?

  • Zitat von Sogorukuhn

    Und ich will, dass das Plugin installiert wird.


    das macht firefox nicht (zumindest nicht mit embed / object).


    Zitat von Sogorukuhn

    Oder mal eine andere Frage. Wie kann ich einen Link, oder Button machen, beim klick auf welchen die Instalation startet?


    dazu kann ich nur so viel sagen:

    Zitat von cubefox

    wie man es schafft, dass nicht der download- sondern der installations-dialog angezeigt wird, weiß ich leider nicht, ich kenn mich nicht aus mit js. jemand anderes müsste es wissen.

    du könntest mal auf http://www.erweiterungen.de (da startet bei einem klick auf dem link zum xpi die instalation) im quelltext nachschauen, wie es da gelöst wurde.

  • firefox startet den installation dialog bei einem link nur automatisch, wenn der mime-typ richtig ist. bei deinem xpi ist der mime-typ falsch, nämlich text/plain. bei einem xpi von erweiterungen.de ist er dagegen richtig: application/x-xpinstall
    den mime-typ kannst mit dem tool rausfinden.

    da nullsoft auch irgendwie die installation (trotz falschen mime-typ) starten muss, solltest du vieleicht mal bei denen nach einem entsprechenden javascript suchen. das ist dann allerdings hotlinking. oder du wartest, bis (hoffentlich) ein user aus diesem board kommt und dir den entsprechenden code sagt.


    edit:

    Zitat von Sogorukuhn

    Danke für den Tipp. Jedoch will ich nicht wissen, ob dieses PlugIn schon installirt ist.


    warum nicht? sonst installieren es sich die, die es schon haben noch mal.

  • Naja. Ich habe es schon versucht die XPI Datei auf meinem Hosting abzulegen mit dem richtigen MIME Type. Das hat aber nichts daran geändert, dass meine FF (1.5) ihn runterladen wollte, und nicht installieren=(

  • Ok. Jetzt geht es fast. Habe noch OBJECT dazu genommen, so wie es auf der Nullsoft Seite ist, und er installiertt das PlugIn automatisch (nehme ich mal an, weil selbst der blöde IE den jetzt runterlädt). Allerdings spielt er nichts mehr im FF ab, mit dem OBJECT Tag=(

  • ... nur findet er kein plugin:
    [Blockierte Grafik: http://img512.imageshack.us/img512/6610/kljregsdz2.png]


    <OBJECT CLASSID="clsid:C5E28B9D-0A68-4B50-94E9-E8F6B4697514" WIDTH=640 HEIGHT=480 BORDER=0
    codebase="http://www.nullsoft.com/nsv/embed/nsvp…ion=-1,-1,-1,-1" id="nsvplayx">

    <PARAM NAME="Location" VALUE="http://radio.animesector.ru:8000/video.nsv">
    <embed type="application/x-nsv-vp3-mp3" width=640 height=480 codebase="http://www.nullsoft.com/nsv/embed/nsvmoz_vp3_mp3.xpi" location="http://www.nullsoft.com/nsv/embed/nsvmoz_vp3_mp3.xpi" location="http://radio.animesector.ru:8000/video.nsv"></embed>
    </OBJECT>

    also da fallen mir schon ein paar ungereimtheiten auf: im embded tag steht zweimal das ttribut location. das erste location sollte, glaube ich pluginspage heißen und das zweite src. außerdem wärs wahrscheinlich hilfreich beim object-tag das attribut data für die quelle anzugeben.

    dann würds so aussehen:

    <OBJECT data="http://radio.animesector.ru:8000/video.nsv" CLASSID="clsid:C5E28B9D-0A68-4B50-94E9-E8F6B4697514" WIDTH=640 HEIGHT=480 BORDER=0
    codebase="http://www.nullsoft.com/nsv/embed/nsvp…ion=-1,-1,-1,-1" id="nsvplayx">

    <PARAM NAME="Location" VALUE="http://radio.animesector.ru:8000/video.nsv">
    <embed type="application/x-nsv-vp3-mp3" width=640 height=480 codebase="http://www.nullsoft.com/nsv/embed/nsvmoz_vp3_mp3.xpi" pluginspage="http://www.nullsoft.com/nsv/embed/nsvmoz_vp3_mp3.xpi" src="http://radio.animesector.ru:8000/video.nsv"></embed>
    </OBJECT>

    änderungen blau, ergänzungen rot.

    so müsste es funktionieren (zumindest das wiedergeben, ob man bei pluginspage direkt auf eine datei verlinken darf weiß ich nämlich nicht.), wenn die url http://radio.animesector.ru:8000/video.nsv nicht ein toter link wär...


    ps: wo bleiben die ganzen html-checker aus dem forum hier? :wink:

    Einmal editiert, zuletzt von cubefox (29. Juli 2007 um 19:50)

  • Plugins sind pfui.

    Meines Wissens nach gleicht Firefox den mimeTypen und die Dateiendung mit einer Datenbank ab, in der eine Reihe Plugins und deren Installations-Routinen hinterlegt sind. Ist die Datenbank unvollständig, wird das Plugin nicht gefunden. Wo und wer diese Datenbank pflegt, entzieht sich jetzt meiner Kenntnis. Einen Javascript-Befehl zum Aufrufen der Installation gibt es meines Wissens nach nicht. Pluginspace/url wird glaube ich auch nicht kontrolliert.

  • dass das attribut pluginspage generell nicht funktioniert und es nur eine datenbank gibt, mit der die mime-types verglichen werden, würde einiges erklären. trotzdem nicht gerade schön. wenn man schon einen inoffiziellen tag wie embed unterstützt, sollten auch die häufigsten attribute funktionieren.


    Zitat von bugcatcher

    Einen Javascript-Befehl zum Aufrufen der Installation gibt es meines Wissens nach nicht.


    doch, irgendeine möglichkeit gabs glaube ich (vieleicht waren es auch nur irgendwelche speziellen html-attribute). kann mich aber auch irren.

  • Zitat von Sogorukuhn

    Also mit den Änderungen geht bei mir garnichts mehr, und zwar in beiden browsern=(


    dann lass das data-attribut weg oder nimm deinen alten code - dann gehts wenigstens im IE.

    im firefox krieg ich das plugin (wenn es [manuell] installiert ist) nicht zum laufen, es wird immer nur das schwarze vorschau-bild angezeigt, aber es lädt nicht. anscheinend ist das plugin mit dem aktuellen firefox inkompatibel.

    dass sich das plugin automatisch installiert, ist wohl nicht hinzubekommen, weil firefox anscheinend eine datenbank nach dem mime-typ durchsucht (in dem das nsv-plugin nicht aufgeführt ist) und das attribut pluginsbage nicht beachtet. du müsstest halt einen link zum plugin bereitstellen und dazu schreiben, dass es der anwender herunterladen und ins firefox-fenster ziehen soll. allerdings scheint es ja sowieso nicht mit firefox kompatibel zu sein...

    edit:
    wenn du deinen alten code nimmst und auch in den object tag das atribut type="application/x-nsv-vp3-mp3" schreibst, gehts zusätzlich zum ie auch in opera (wenn man das mozilla plugin vorher installiert hat). firefox scheint aber genrell ein problem mit dem plugin zu haben, da lässt sich wohl nichts machen.

    edit2:
    es ist schon deprimierend, wie schlecht das einbinden von plugins in den browsern implementiert ist...

  • Mal eine andere Frage. In welches Verzeichniss muss denn die XPI, wenn man das PlugIn so installieren will, ohne Den FF zu benutzen? Dann mache ich dann eben ein selbstextrahirendes Archiv, welches in den richigen Ordner die Datei verfrachtet. Ist zwar etwas doof, aber es müsste funktionieren. (Ausser natürlich bei verschidenen Sprachversionen von windows) =(

    Oder mit einem Installer Programm=)

  • die xpi ist in wahrheit eine zip-datei (umbenennen genügt) dass die dll-datei das plugins enthält. einfach die xpi entpacken und die .dll darin in den plugins-ordner von firefox kopieren (z.b. c:\programme\firefox\plugins\). da findet sie übrigens auch opera, mit dem das plugin funktioniert. wie vorhin schon gesagt: mit firefox funktioniert es nicht (genauer: es lädt den stream nicht).

  • Also ich weiss nichtwarum, aber jetzt läuft es im FireFox hier:
    http://www.animesector.ru/vplayer2/index.php
    und hier:
    http://www.animesector.ru/vplayer2/index2.php

    Das einzige Problem ist eben, dass ich meine User kenne, und da werden es viele nicht kriegen das PlugIn manuell zu installieren, und werden alle Komments zuspammen. (Mancheiner schafft es nichtmal sich ICQ zu installieren). Also denke ich darüber nach einen Installer zu machen. Gibt es irgendwelche Merkmale, an dennen man den Instalationsordner des FF ermitteln kann? z.B. ein Registry Eintrag?

  • Zitat von Sogorukuhn

    Also ich weiss nichtwarum, aber jetzt läuft es im FireFox


    ich muss mich schon sehr für meine falschinformationen entschuldigen. nachdem ich das plugin de- und jetzt wieder neuinstalliert habe, läufts bei mir auch.


    Zitat von Sogorukuhn

    Also denke ich darüber nach einen Installer zu machen. Gibt es irgendwelche Merkmale, an dennen man den Instalationsordner des FF ermitteln kann? z.B. ein Registry Eintrag?


    davon hab ich leider keine ahnung. :( nur den hinweis, dass absolute anfänger wie du sie beschreibst, wahrscheinlich nicht das standard-installations-verzeichnis (C:\Programme\Firefox) ändern werden. ;)