Ankündigung

Einklappen
Keine Ankündigung bisher.

Sonos Radio , "Fatal Error] :1:1: Vorzeitiges Dateiende." ?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Sonos Radio , "Fatal Error] :1:1: Vorzeitiges Dateiende." ?

    Hallo zusammen

    Ich benutze das letze v1.8..2 Openhab. Alles funktioniert einwandfrei mit meinem KNX setup. Da ich jetzt allerdings mir eine Sonos Play1 gekauft hab möchte ich die natürlich auch mit einbinden. Ich möchte auf ein KNX Sensor ein Radio Ein/Aus legen.

    Wenn ich jedoch via ETS auf die Gruppenadresse 0/1/13 ein "ON" schicke wird die Rule zwar getriggert aber bekomme ich einen seltsamen Fehler vom Binding nehme ich an. Hat irgendjemand ein Idee ?

    Dankeeee
    bkumio


    Binding setup:
    Code:
    ################################ Sonos Binding ########################################
    sonos:pollingPeriod=1000
    sonos:wohnzimmer.udn=RINCON_B8E937A2A4D201400
    Items setup:
    Code:
    String SonosWohnzimmerRadio                             "Play Radio [%s]" <play>              { sonos="[wohnzimmer:radio]", autoupdate="false" }
    Switch sonosWohnzimmerSelectRadio "Baden.fm"         <play> { knx="1.001:0/1/13" }
    Rule setup (removed all to make it real simple for testing, of course It need to have a switch case on/off at some point )
    Code:
    rule "Wohnzimmer Select Baden.FM"
    when
                  Item sonosWohnzimmerSelectRadio received command
    then
                  sendCommand(SonosWohnzimmerRadio, "Baden.FM")
    end
    Error message (openhab debug mode)
    Code:
    09:31:33.642 [DEBUG] [m.r.internal.engine.RuleEngine:305  ] - Executing rule 'Wohnzimmer Select Baden.FM'
    09:31:33.646 [INFO ] [runtime.busevents             :22   ] - sonosWohnzimmerSelectRadio received command ON
    09:31:33.708 [DEBUG] [.b.sonos.internal.SonosBinding:318  ] - Executing command: item:SonosWohnzimmerRadio, command:3, ID:wohnzimmer, CommandType:RADIO, commandString:Baden.FM
    [Fatal Error] :1:1: Vorzeitiges Dateiende.
    09:31:33.753 [DEBUG] [.sonos.internal.SonosXMLParser:350  ] - Failed to parse embedded org.xml.sax.SAXParseException: Vorzeitiges Dateiende.
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) [na:1.8.0_60]
            at org.openhab.binding.sonos.internal.SonosXMLParser.getEmbededMetaDataFromResource(SonosXMLParser.java:153) [bundlefile:na]
            at org.openhab.binding.sonos.internal.SonosXMLParser$EntryHandler.endElement(SonosXMLParser.java:348) ~[bundlefile:na]
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source) [na:1.8.0_60]

    #2
    Ich empfehle, wann immer möglich lieber die Methode statt der Action zu verwenden, also
    Code:
    SonosWohnzimmerRadio.sendCommand("Baden.FM")
    da die Action insbesondere seit OH 1.8.2 Probleme macht. Ob das jetzt im vorliegenden Fall Abhilfe bringt? Keine Ahnung, ich nutze kein Sonos Binding, jedenfalls sieht die Definition Deiner Items erstmal gut aus.

    Kommentar


      #3
      Hi Udo1toni,

      ja, hab die Schreibweise von dir vorgeschlagen auch schon in einem anderen Post gesehen. Leider genau die Fehlermeldung, aber danke für den Versuch.
      Ich dachte kurz es liegt vielleicht daran, dass ich die Radiostation noch nicht als Favorit in der Sonos App eingetragen hab aber auch nicht..


      Ich probier’s jetzt mal mit einem play/stop ob das grundsätzlich geht bevor wie uns wieder an die Kür ran trauen :-)

      Gruss
      bkumio

      Kommentar


        #4
        Nachtrag.... also "Play" und "Stop" einer Queue/Playlist funktionieren....
        Dann hat also der "Radio" Befehl ein Problem


        Was ich nicht weis ist was "command:7" bedeutet (siehe Debug)
        Code:
        Executing command: item:SonosWohnzimmerRadio, [B]command:7[/B], ID:Wohnzimmer, CommandType:RADIO, commandString:Baden.FM
        [Fatal Error] :1:1: Vorzeitiges Dateiende.
        Das hat doch bestimmt schon jemand am laufen, oder ?

        Gruss
        bkumio

        Kommentar


          #5
          was ich nicht kapiere, dass Leute nach allen deutlichen Warnungen im Wiki immer noch versuchen, dass Sonos Bindung zu benutzen.
          Es hat grobe Fehler,die nicht mehr gefixt werden. Verschwendet nicht Eure Zeit! Selbst wenn es eine zeitlang läuft, am Ende schmiert OPENHAB wegen eines Memory Overflows ab.

          Es gibt workarounds mit PHP scripten.

          Kommentar


            #6
            Hi klayer,

            na ja eine direkte Warnung a la "Dont use @all" ist es ja nicht. Ich hab’s wiki zuerst gelesen und da steht am Ende "nur"ein " UPNP .... which may crash OPENHAB occasionally." . Und eingentlich is ja die addIn Methode schon die richtige.

            Aber ich bin natürlich offen und sehr interessiert für eine stabile PHP Lösung. Meintest du so was wie hier im homematic Forum : http://homematic-forum.de/forum/view...hp?f=26&t=4693 ?

            Wenn ja könntest du mich vielleicht in die Richtige Richtung lenken da ich kein wirklicher Programmierer bin und von PHP nicht viel verstehe. Aber ein grundsätzliches Verständnis habe ich natürlich so dass ich das bestimme hinbekomme wenn man mich in die richtige Richtung schubst. E.g.
            • kopieren der PHP scripte nach Z.B, \runtime\configurations\scripts
            • aktivieren des exec/hhtp bindings ?
            • in ner Rule oder im script mit folgenden code
              • Lauter leiser
              • Play/pause --> system.Exec("wget http://<SERVER-IP-ADRESSE:SERVER-PORT/PFAD>/sonos.php?cmd=Play -O /var/tmp/httpRequest");
              • Radio select
              • ...
            wenn das gut klappt verspreche ich ein kleines Tutorial im Wiki mit einem Link im Sonos addOn Eintrag so das alle davon partizipieren! Na, wie wär das ? :-)

            Gruss
            bkumio

            Kommentar


              #7
              Glaub uns... don't use @all. Bei mir hat es auch einige Zeit funktioniert und am Schluss musste ich OH 2x am Tag neu starten.
              Ich habe mir mit einem zweiten PI als OH2 Server geholfen, da mein Umstieg von OH1 auf 2 noch nicht so recht klappt. Auch in dieser Kombination kannst du das KNX Binding verwenden und einfach deinen ersten PI als KNX Gateway eintragen. Oder du verwendest gleich OH2.

              Kommentar


                #8
                Smile... ok ok wenn zwei Experten das sagen .... addOn ist entfernt :-) .

                Läuft OH2 mit KNX schon stabil genug, so das ich produktiv darauf migrieren könnte? Wollte eigentlich zumindest im prod system kein early bird sein.

                Also dann wäre es mir am liebsten wenn mir jemand (da ich mich mit PHP nicht auskenne) wie oben beschrieben mir zumindest mal einen Ansatz gibt wie man das mit dem exec oder http binding das korrekt umsetzen könnte.... So dass ich euer "sign-off" bekomme :-)

                Dankeee

                Kommentar


                  #9
                  OH2 ist auf einem guten Weg, aber beta, grundsätzlich läuft es gut, aber der Code ist noch ziemlich dynamisch und es kommt sehr auf den Build an, ob alles toll spielt oder zwischendurch mal eher... also ich hätte da auch ein mulmiges Gefühl für mein Produktivsystem.

                  Das knx Binding ist momentan noch das von OH1, da gibt es auch keine Einschränkungen gegenüber einer reinen OH1 Installation, jedenfalls konnte ich bisher in meinen Tests keine Auffälligkeiten finden.

                  Kommentar


                    #10
                    sonos und oh2 habe ich noch nicht ausprobiert. aber hatte auch schon einiges nicht so tolles im englischen Forum gelesen.
                    es ist halt der gleiche entwickler.
                    ja, ich benutze die homematic forum lösung und genau den ansatz der oben beschrieben wurde.

                    Kommentar

                    Lädt...
                    X