NEWS
LG Adapter audio output steuern mit blockly
-
Hallo,
ich versuche gerade den TV ausgangs Ton (audio output) vom LG-Adapter mit blockly zu ändern.
Ich finde keinen Ansatz wie ich es umsetzen kann.
In Objekten ist es möglich den Datenpunkt anzuklicken, dann erscheint ein "Fenster" mit mehren Auswahl möglichkeiten was der TV an audio outputs unterstützt. Wenn ich nun ein auswähle und wert setzen anklicke schaltet mein TV auch um, aber wie schreibe ich das in ein skript um audio output vom TV zu ändern?? Habe schon ein blockly erstellt, was aber nicht den output am TV umschaltet. Kann mir jemand helfen??Beste Grüße
-
@felix18 sagte in LG Adapter audio output steuern mit blockly:
Habe schon ein blockly erstellt
zeigen bitte
@felix18 sagte in LG Adapter audio output steuern mit blockly:
den Datenpunkt anzuklicken
von dem Datenpunkt bitte die Objektdaten zeigen.
-
Hallo @DJMarc75 danke, das du mir mal wieder helfen möchtets !!
Wie stelle ich das an die Objektdaten hier einzustellen?
-
@felix18 sagte in LG Adapter audio output steuern mit blockly:
Wie stelle ich das an die Objektdaten hier einzustellen?
Unter dem Reiter Objekte den Expertenmodus aktivieren, dann beim Datenpunkt rechts auf den Stift klicken
Objektdaten auswählen und diese hier in Codetags einstellen.
-
{
"_id": "lgtv.0.states.soundOutput",
"type": "state",
"common": {
"name": "Switch audio output",
"role": "state",
"type": "string",
"states": {
"tv_speaker": "TV Speaker",
"external_optical": "External Optical",
"external_arc": "External ARC",
"lineout": "LineOut",
"headphone": "Headphone",
"tv_external_speaker": "TV + External Speaker",
"tv_speaker_headphone": "TV + Speaker Headphone",
"bt_soundbar": "Bluetooth"
},
"read": true,
"write": true
},
"native": {},
"from": "system.adapter.lgtv.0",
"user": "system.user.admin",
"ts": 1724098835867,
"acl": {
"object": 1636,
"state": 1636,
"file": 1632,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator"
}
} -
"tv_speaker": "TV Speaker", "external_optical": "External Optical", "external_arc": "External ARC", "lineout": "LineOut", "headphone": "Headphone", "tv_external_speaker": "TV + External Speaker", "tv_speaker_headphone": "TV + Speaker Headphone", "bt_soundbar": "Bluetooth"
die ersten Werte jeweils (tv_speaker, external_optical, usw) sind die Werte welche im Skript eingetragen werden müssen.
Zeig mal Dein Blockly.
-
<xml xmlns="https://developers.google.com/blockly/xml">
<block type="on_ext" id="KDC!,0;Z13n~8W4AOm8k" x="-622" y="-427">
<mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
<field name="CONDITION">true</field>
<field name="ACK_CONDITION"></field>
<value name="OID0">
<shadow type="field_oid" id="cn5W74N5L?H27AhE:dl,">
<field name="oid">0_userdata.0.Terrasse_TV_Ton</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="controls_if" id="1-;7$VFf2pgYFjR}.m4"> <value name="IF0"> <block type="logic_compare" id="b!~6
PpPZp}bL6s:t5sO">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="}?aWRf969(L*Ie0_cTXa">
<field name="ATTR">val</field>
<field name="OID">lgtv.0.states.power</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="[SrkaN#Wj$(21JFTmoY"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="1u*bM+
sm?X9iC|ye@a/">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">denon.1.zoneMain.powerZone</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="Q8bTX/(/2{2Mh^|?K7w3">
<field name="BOOL">TRUE</field>
</block>
</value>
<next>
<block type="control" id="9=ZtdWPy~s%i^|y4CsX!">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">lgtv.0.states.soundOutput</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="text_multiline" id="n;Hbvd;Cs^n,y/Jp3:3N">
<field name="TEXT">External Optical</field>
</block>
</value>
</block>
</next>
</block>
</statement>
</block>
</statement>
</block>
</xml> -
@felix18 bitte als Bild
-
@djmarc75 meine altbekannte frage, wie geht das?
-
@felix18 sagte in LG Adapter audio output steuern mit blockly:
wie geht das?
Na Du machst einen Screenshot und stellst diesen hier als Bild ein.
Ich nutze das SnippingTool in Windows. -
-
@felix18 naja, abfotografieren ist eher suboptimal !
Bitte beschäftige Dich mal mit solchen Basics und auch wie man Text hier in Codetags einbettet.
Hier das Blockly als Bild und zum Importieren:
<xml xmlns="https://developers.google.com/blockly/xml"> <block type="on_ext" id="KDC!,0;Z13n~8W4AOm8k" x="-622" y="-427"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">true</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="cn5W74N5L?H27AhE:dl,"> <field name="oid">0_userdata.0.Terrasse_TV_Ton</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="1-;7$VFf2pgYFjR}.m4"> <value name="IF0"> <block type="get_value" id="}?aWRf969(L*Ie0_cTXa"> <field name="ATTR">val</field> <field name="OID">lgtv.0.states.power</field> </block> </value> <statement name="DO0"> <block type="control" id="1u*bM+sm?X9iC|ye@a/"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">denon.1.zoneMain.powerZone</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="Q8bTX/(/2{2Mh^|?K7w3"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="9=ZtdWPy~s%i^|y4CsX!"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">lgtv.0.states.soundOutput</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="nnjNU+G3CyXE]E{/2m{:"> <field name="TEXT">external_optical</field> </block> </value> </block> </next> </block> </statement> </block> </statement> </block> </xml>
-
@djmarc75 sagte in LG Adapter audio output steuern mit blockly:
<xml xmlns="https://developers.google.com/blockly/xml"> <block type="on_ext" id="KDC!,0;Z13n~8W4AOm8k" x="-622" y="-427"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">true</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="cn5W74N5L?H27AhE:dl,"> <field name="oid">0_userdata.0.Terrasse_TV_Ton</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="1-;7$VFf2pgYFjR}.m4"> <value name="IF0"> <block type="get_value" id="}?aWRf969(LIe0_cTXa"> <field name="ATTR">val</field> <field name="OID">lgtv.0.states.power</field> </block> </value> <statement name="DO0"> <block type="control" id="1ubM+sm?X9iC|ye@a/"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">denon.1.zoneMain.powerZone</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="Q8bTX/(/2{2Mh^|?K7w3"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="9=ZtdWPy~s%i^|y4CsX!"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">lgtv.0.states.soundOutput</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text" id="nnjNU+G3CyXE]E{/2m{:"> <field name="TEXT">external_optical</field> </block> </value> </block> </next> </block> </statement> </block> </statement> </block> </xml>
@DJMarc75 du bist ein Freak!!! Es funktioniert!!! Danke !!!
Also muss ich den rechten wert eintragen vom Datenpunkt der in der ( ) liegt und nicht den linken!!!
Ja ich werde mich damit beschäftigen. Ich danke Dir vielmals und super, das du immer sofort antwortest!! -
@felix18 sagte in LG Adapter audio output steuern mit blockly:
Also muss ich den rechten wert eintragen vom Datenpunkt
Andersrum!
Wenn Du auf den rechten Wert umschalten willst, musst Du den linken Wert im Blockly verwenden.
Um auf "Bluetooth" umzuschalten, musst Du "bt_soundbar" eintragen.{ "bt_soundbar": "Bluetooth", "lineout": "LineOut", "external_arc": "External ARC", "external_optical": "External Optical", "headphone": "Headphone", "tv_speaker_headphone": "TV + Speaker Headphone", "tv_external_speaker": "TV + External Speaker", "tv_speaker": "TV Speaker" }
Edit
Das Prinzip gilt übrigens überall, wo man im Objektbaum etwas "auswählen" kann.
Da werden auch gerne mal Textwerte angezeigt, obwohl in den Objektdaten die States als Zahlen hinterlegt sind.
In solchen Fällen muss logischerweise auch eine Zahl in Blockly eingesetzt werden (und keine Zeichenfolge).Beispiel:
"states": { 0: stay arm; 1: away arm; 2: night arm; 3: disarm; 4: alarm triggered }
Es kommt also darauf an, welchen Typ (string, number) der zu schaltende DP hat! -
@codierknecht ahh guter hinweis @Codierknecht,
also ist es am besten man schaltet auf Expertenmodus um, und sieht in den Objektdaten nach.
Also vielen dank für eure Unterstützung, Hilfsbereitschaft und natürlich eure kostbare Zeit!!! -
@codierknecht sagte in LG Adapter audio output steuern mit blockly:
Um auf "Bluetooth" umzuschalten,
bluetooth umschalten funktioniert leider nicht - es gibt keinen dp um das bluetooth device anzugeben - zumindest bei mir ist es so - ich gehe dann sehr umständlich mit den pfeiltaten über blockly um das device auszuwählen
-
@felix18 sagte in LG Adapter audio output steuern mit blockly:
man schaltet auf Expertenmodus um, und sieht in den Objektdaten nach
Im Zweifelsfall: Ja!
Bei Zahlen erkennt man das in der Regel an der in Klammern gezeigten Zahl.