NEWS

[Frage] Internetradio - wie geht das ?



  • Super der wird gefunden…

    Wäre toll wenn Du mir dafür die Anleitung geben könntest....

    Gesendet von meinem B3-A30 mit Tapatalk


  • Developer

    @sveni_lee:

    Wäre toll wenn Du mir dafür die Anleitung geben könntest…. `

    So jetzt hier mal die Anleitung:

    1. Skript anlegen (JavaScript Adapter) und anpassen. Du musst nur die erste Zeile, das Gerät welches du steuern willst, und die zweite Zeile, wo die Hilfsobjekte erstellt werden, anpassen.

    ! ````
    var device = "upnp.0.BubbleUPnP_Media_Server_(Tab2A7-10F); //Hier das upnp Gerät eintragen das gesteuert werden soll.
    var control = 'javascript.0.Tab2'; //Hier das Objekt eintragen wo die Steuerobjekte angelegt werden sollen
    var oldVol;
    ! //createState(name, initialValue, forceCreation, common, native, callback);
    createState(control + '.MediaControl.Play', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.play'});
    createState(control + '.MediaControl.Pause', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.pause'});
    createState(control + '.MediaControl.Stop', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.stop'});
    createState(control + '.AudioControl.Vol_UP', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.volume_up'});
    createState(control + '.AudioControl.Vol_Down', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.volume_down'});
    createState(control + '.AudioControl.Mute', false, {type: 'boolean', read: 'true', write: 'true', role: 'button.mute'});
    createState(control + '.MediaControl.MediaURL', '', {type: 'string', read: 'true', write: 'true', role: 'button.mute'});
    ! on({id: control + '.MediaControl.Play', val: true
    }, function(obj){

        //Wiedergabe starten
        setState(device +  '.MediaRenderer.AVTransport.Play.InstanceID', 0);
        setState(device +  '.MediaRenderer.AVTransport.Play.Speed', 1);
        setState(device + '.MediaRenderer.AVTransport.Play', 'send');
        setTimeout(function(){setState(obj.id, false);}, 150);
    });
    

    on({id: control + '.MediaControl.Pause', val: true
    }, function(obj){

        //Wiedergabe pausieren
        setState(device +  '.MediaRenderer.AVTransport.Pause.InstanceID', 0);
        setState(device + '.MediaRenderer.AVTransport.Pause', 'send');
        setTimeout(function(){setState(obj.id, false);}, 150);
    });
    

    ! on({id: control + '.MediaControl.Stop', val: true
    }, function(obj){

        //Wiedergabe stoppen
        setState(device +  '.MediaRenderer.AVTransport.Stop.InstanceID', 0);
        setState(device + '.MediaRenderer.AVTransport.Stop', 'send');
        setTimeout(function(){setState(obj.id, false);}, 150);
    });
    

    on({id: control + '.AudioControl.Vol_UP', val: true
    }, function(obj){
    oldVol = getState(device + '.MediaRenderer.RenderingControl.Volume').val;

        newVol = parseInt(oldVol) + 5; //der Wert um den die Lautstärke geändert wird, kann beliebig geändert werden
    
        //neue Lautstärke senden
        setState(device + '.MediaRenderer.RenderingControl.SetVolume.Channel', 'Master');
        setState(device + '.MediaRenderer.RenderingControl.SetVolume.DesiredVolume', newVol);
        setState(device +  '.MediaRenderer.RenderingControl.SetVolume.InstanceID', 0);
        setState(device + '.MediaRenderer.RenderingControl.SetVolume', 'send');
        setTimeout(function(){setState(obj.id, false);}, 150);
    });
    

    on({id: control + '.AudioControl.Vol_Down', val: true
    }, function(obj){
    oldVol = getState(device + '.MediaRenderer.RenderingControl.Volume').val;

        newVol = parseInt(oldVol) - 5; //der Wert um den die Lautstärke geändert wird, kann beliebig geändert werden
    
        //neue Lautstärke senden
        setState(device + '.MediaRenderer.RenderingControl.SetVolume.Channel', 'Master');
        setState(device + '.MediaRenderer.RenderingControl.SetVolume.DesiredVolume', newVol);
        setState(device +  '.MediaRenderer.RenderingControl.SetVolume.InstanceID', 0);
        setState(device + '.MediaRenderer.RenderingControl.SetVolume', 'send');
        setTimeout(function(){setState(obj.id, false);}, 150);
    });
    

    on({id: control + '.AudioControl.Mute', val: true
    }, function(){
    var oldMute = getState(device + '.MediaRenderer.RenderingControl.Mute').val;

        if(oldMute == 0){
            setState(device + '.MediaRenderer.RenderingControl.SetMute.InstanceID', 0);
            setState(device + '.MediaRenderer.RenderingControl.SetMute.Channel', 'Master');
            setState(device + '.MediaRenderer.RenderingControl.SetMute.DesiredMute', 1);
            setState(device + '.MediaRenderer.RenderingControl.SetMute', 'send');
            //oldVol = getState(device + '.MediaRenderer.RenderingControl.Volume').val;
        }else{
            setState(device + '.MediaRenderer.RenderingControl.SetMute.InstanceID', 0);
            setState(device + '.MediaRenderer.RenderingControl.SetMute.Channel', 'Master');
            setState(device + '.MediaRenderer.RenderingControl.SetMute.DesiredMute', 0);
            setState(device + '.MediaRenderer.RenderingControl.SetMute', 'send');
        }
        setTimeout(function(){setState(obj.id, false);}, 150);
    });
    

    on({id: control + '.MediaControl.MediaURL'
    }, function(obj){
    setState(device + '.MediaRenderer.AVTransport.SetAVTransportURI.CurrentURI', obj.newState.val);
    setState(device + '.MediaRenderer.AVTransport.SetAVTransportURI.InstanceID', 0);
    setState(device + '.MediaRenderer.AVTransport.SetAVTransportURI', 'send');
    });

    2\. Steuerelemente in einer view anlegen. Anbei findest du Beispiel Widgets, du musst noch die Objekt IDs anpassen.
    
    >! ````
    [{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Vol_UP","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"javascript.0.Archos_Tab.Akkustand","caption":"Lauter","captionOn":"Lauter","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive","g_leftRight":false,"timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","infoLeftPaddingLeft":"15","infoLeftPaddingRight":"50","infoRightPaddingRight":"15","descriptionLeft":"javascript.0.WMP_lenovo.Vol_UP"},"style":{"left":"203px","top":"285px"},"widgetSet":"hqwidgets"},{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Vol_Down","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"","caption":"Leiser","captionOn":"Leiser","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive","infoLeftPaddingLeft":"15","infoLeftPaddingRight":"50","infoRightPaddingRight":"15"},"style":{"left":"375px","top":"285px"},"widgetSet":"hqwidgets"},{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Mute","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"","caption":"Mute","captionOn":"Mute","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive","infoLeftPaddingLeft":"15","infoLeftPaddingRight":"50","infoRightPaddingRight":"15"},"style":{"left":"289px","top":"285px"},"widgetSet":"hqwidgets"},{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Play","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"","caption":"Play","captionOn":"Play","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive"},"style":{"left":"202px","top":"212px"},"widgetSet":"hqwidgets"},{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Pause","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"","caption":"Pause","captionOn":"Pause","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive"},"style":{"left":"288px","top":"212px"},"widgetSet":"hqwidgets"},{"tpl":"tplHqButton","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.WMP_lenovo.Stop","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"","caption":"Stop","captionOn":"Stop","visibility-oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.Alive"},"style":{"left":"374px","top":"212px"},"widgetSet":"hqwidgets"},{"tpl":"tplJquiInputSet","data":{"oid":"javascript.0.WMP_lenovo.MediaURL","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","buttontext":"OK","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"title":"Media Pfad: ","size":"33"},"style":{"left":"94px","top":"368px","color":"#ffffff","width":"475px","height":"40px"},"widgetSet":"jqui"},{"tpl":"tplValueString","data":{"oid":"upnp.0.Jey_Cee_(JEYCEE-LENOVO_:_Windows_Media_Player).MediaRenderer.AVTransport.CurrentMediaDuration","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"html_prepend":"Dauer: "},"style":{"left":"374px","top":"169px","color":"#ffffff","width":"116px","height":"19px"},"widgetSet":"basic"}]
    

    3. Erweiterung/Anpassung an deine Bedürfnisse. Zurzeit gibt es noch keine Playlist funktion, die muss noch erstellt werden. Dazu bin ich bisher noch nicht gekommen.

    Eigentlich ist es ziemlich einfach wenn es um die reine Steuerung geht. Da Bubble upnp ein reiner Wiedergabe punkt ist muss die "Player" Funktionalität vom Steuerechner kommen. Das ist bei den meissten upnp fähigen Playern der Fall.

    EDIT: Wichtig ist das die Stream URL so aussieht:````
    http://wdr-1live-diggi.icecast.wdr.de/wdr/1live/diggi/mp3/128/stream.mp3

    m3u Play listen gehen nicht. Wenn man die m3u mit einem Text Editor öffnet sieht man die Stream URL im Klar text, die kann man benutzen.
    
    Die URL kannst du im Objekt "MediaURL" eingeben und anschließend setzt du "Play" auf "true" dann wird der Stream oder die MP3 wieder gegeben.


  • erst einmal Danke für die Anleitung.

    bisher hatte ich nur Blockly installiert. Ich habe dann jetzt versucht den javascript/nodeJS. das klappt leider nicht…

    Ich bekomme einen Fehler bei der Installation.
    2712_npm-debug.log


  • Developer

    Es gibt keinen Blockly Adapter nur den JavaScript Adapter, da ist Blockly mit drin.

    Wenn du ein Skript anlegst, hast du rechts oben ein Auswahlfeld wo Blockly steht. Dort wechselte du zu JavaScript.



  • okay, soweit habe ich das jetzt hinbekommen.

    jetzt habe ich noch eine Kleinigkeit, die ich noch nicht richtig verstanden habe.

    Worauf müüsen jetzt die Objekt-ID in dem Widget verweisen? Benötige ich noch einen weiteren

    "Rechner" auf den ich verweisen muss? oder ist das das von mir angelegte objekt?


  • Developer

    Was meinst du mit "Rechner"?

    Die Widgets müssen auf die vom Skript angelegten Objekte verweisen.



  • okay, war etwas umständlich formuliert…

    bei mir sehen die Objekte vom upnp-Adapter so aus:

    ~~![](</s><URL url=)http://i.imgur.com/KvnqTf8.jpg" />

    und mein selbst angelegtes Objekt wie folgt:

    ~~![](</s><URL url=)http://i.imgur.com/XfIH6x6.jpg" />

    und das sind ersten beiden Zeilen in meinem Skript:

    ~~![](</s><URL url=)http://i.imgur.com/huzyrOw.jpg" />

    und der play-Button (Widget)

    ! ````
    [{"tpl":"tplHqButton","data":{"g_fixed":true,"g_visibility":true,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":"true","visibility-groups-action":"hide","oid":"javascript.0.Tablet.MediaControl.Play","min":"false","max":"true","iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"pushButton":true,"oid-battery":"","caption":"Play","captionOn":"Play","visibility-oid":"upnp.0.BubbleUPnP_(B3-A30).MediaRenderer.Alive","name":"Radio","infoLeftPaddingLeft":"15","infoLeftPaddingRight":"50","infoRightPaddingRight":"15","descriptionLeft":"javascript.0.Tablet.MediaControl.Play"},"style":{"left":"958px","top":"475px","z-index":"3"},"widgetSet":"hqwidgets"}]

    
    ergibt dann folgenden Fehler im Log…
    
    ![](http://i.imgur.com/qkUbRye.jpg)~~![](</s><URL url=)http://i.imgur.com/qkUbRye.jpg" />
    
    Ich hoffe jetzt ist es besser nachzuvollziehen~~~~~~~~

  • Developer

    Es sieht alles richtig aus.

    Aber die Fehlermeldung wird nicht ganz angezeigt. Wenn du mit der Maus drüber gehst und kurz wartet sollte sie ganz zu sehen sein.

    Eine mögliche Ursache wäre das die Remote Steuerung in den Einstellungen von Bubble Upnp deaktiviert ist.

    Und es muss ein Titel bei Play Now zu sehen sein, also einer der schon mal gespielt wurde. Falls du keinen von iobroker aus gesetzt hast bevor du play drückst.



  • okay, das werde ich heute Abend mal überprüfen.

    Warum werden eigendlich unter UPnP zwei Geräte auf dem B3-A30 angezeigt?

    Ist es egal Welches ich benutze?



  • so ich habe jetzt mal den kompletten Wortlaut der Fehlermeldung:

    ! ````
    Unexpected answer from upnp service: {'statusCode':500,'body':'s:ClientUPnPError501Current state of service prevents invoking that action.
    Target host must not be null, or set in parameters..','headers':{'ext':'','content-type':'text/xml;charset=utf-8','server':'Linux/3.18.22
    UPnP/1.0 BubbleUPnP/2.8.9','date':'Thu, 15 Jun 2017 15:59:26 GMT+00:00','content-length':'547','connection':'close'},
    'request':{'uri':{'protocol':'http:','slashes':true,'auth':null,'host':'192.168.1.216:58645','port':'58645','hostname':'192.168.1.216',
    'hash':null,'search':null,'query':null,'pathname':'/dev/9af0xxx/svc/upnp-org/AVTransport/action',
    'path':'/dev/9af0xxx/svc/upnp-org/AVTransport/action',
    'href':'http://192.168.1.216:58645/dev/9af0xxx/svc/upnp-org/AVTransport/action'},
    'method':'POST','headers':{'Content-Type':'text/xml; charset='utf-8'','SOAPAction':''urn:schemas-upnp-org:service:AVTransport:1#Play'',
    'USER-AGENT':'UPnP/1.0, ioBroker.upnp/0.3.5','content-length':266}}}
    Sent message: {'uri':'http://192.168.1.216:58645/dev/9af0xxx/svc/upnp-org/AVTransport/action',
    'headers':{'Content-Type':'text/xml; charset='utf-8'','SOAPAction':''urn:schemas-upnp-org:service:AVTransport:1#Play'',
    'USER-AGENT':'UPnP/1.0, ioBroker.upnp/0.3.5'},'method':'POST','body':'01'}


  • Developer

    Ein Eintrag ist der player und der andere ist die Medienbibliothek vom player in Form eines Medien Servers.

    Die Fehlermeldung deutet für mich darauf hin das die Remote Steuerung in den Einstellungen deaktiviert ist. Hast du da mal nachgeschaut?



  • Ja, ich denke schon das ich die Freigabe auf dem Tablet richtig erteilt habe…

    Gesendet von meinem B3-A30 mit Tapatalk

    ![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201706 ... 2a26dd.jpg">https://uploads.tapatalk-cdn.com/20170615/272fd04ad76870b4590919197d2a26dd.jpg</link_text>" />


  • Developer

    So jetzt hab ich das mal nachgestellt. Der Fehler ist: Es ist einfach nichts da was er Wiedergeben kann.

    @Jey Cee:

    Und es muss ein Titel bei Play Now zu sehen sein, also einer der schon mal gespielt wurde. Falls du keinen von iobroker aus gesetzt hast bevor du play drückst. `



  • aber ich habe doch die Url gesetzt… Ich sehe auch im Objektbaum kein Play Now


  • Developer

    Dann gib mal direkt mit Bubble Upnp ein Lied wieder. Also direkt in der APP und stopp es wieder.

    Danach mach play in iobroker. Wenn es jetzt geht liegt es an deinem link.

    Poste den link mal hier.



  • @Jey Cee:

    Dann gib mal direkt mit Bubble Upnp ein Lied wieder. Also direkt in der APP und stopp es wieder.

    Danach mach play in iobroker. Wenn es jetzt geht liegt es an deinem link. `
    ja, das funktioniert…

    @Jey Cee:

    Poste den link mal hier. `
    http://wdr-1live-diggi.icecast.wdr.de/w … stream.mp3

    den hab ich aus deinem Widget übernommen...


  • Developer

    OK der sollte schon gehen. Kannst du einen anderen probieren.



  • super vielen Dank… jetzt funktioniert es genau so wie es soll...

    super Arbeit.

    jetzt kann ich mir drei vier station tasten anlegen und alles ist perfekt...


  • Developer

    Super das ich helfen konnte



  • Habe mir auch ein Internetradio in HTML gebastelt und hätte aber da noch eine Frage da nicht alles so geht wie ich möchte 😉

    Hier mal das Skript das ich dazu geschrieben habe

    
    <audio id="audio" preload="auto" tabindex="false" controls="controls" type="audio/mpeg">
        </audio>
    
    *   [HitRadio-Ö3](http://mp3stream7.apasf.apa.at:8000/;stream.mp3)
    
    *   [SlágerFM](http://92.61.114.159:7812/slagerfm128.mp3)
    
    *   [ClassFM](http://109.199.61.243:80/4784/live.mp3)
    
    *   [MusikFM](http://79.172.241.238:8000/musicfm.mp3)
    
    

    Das ganze habe ich vis erstellt in dem ich ein HTML in eine Widget gezogen habe und dort dann den HTML Code eingefügt. So geht auch alles bis auf dass das wenn ich einen Sender anklicke wird im Browser ein neuer Tab geöffnet wo er dann das ganze abspielt. Kann ich das unterbinden das er einen neuen Tab aufmacht sondern das er den Sender einfach im Player abspielt?


Log in to reply
 

Suggested Topics

  • 7
  • 3
  • 6
  • 6
  • 3
  • 18
  • 2
  • 1

1.4k
Online

32.6k
Users

39.1k
Topics

530.3k
Posts