[gelöst] Lautstärke von VDR über Tablet UI

Begonnen von Albi, 12 Februar 2018, 10:15:57

Vorheriges Thema - Nächstes Thema

Albi

Hallo,

ich möchte die Lautstärke meines VDR über TabletUI steuern.

Hierzu habe ich mir das Volumen Modul eingerichtet

<div class="col"
  data-type="volume" data-device="VDR_Wohnzimmer"

                                          data-height="90"
                                          data-width="90"
                                          data-min="0"
                                          data-max="255"
                                          data-off="0"
                                          data-tickstep="5"

                                          data-set="cmd ssh poweroff\@192.168.0.9 svdrpsend VOLU"

                                          data-get="pct"
                                          data-unit="%"
                                          class="dim-tick big">Lautst&auml;rke</div>


Das ganze geht nicht. Vermutlich deshalb, weil ja das Device "VDR_Wohnzimmer" angesprochen wird und der "cmd" Befehl ja eigentlich ein System Befehl sein muss.

Hätte mir da jemand einen Lösungsansatz? Muss ich in Fhem erst mal im Device "VDR_Wohnzimmer" was anlegen um hier den "cmd" Befehl absenden zu können.

??

Gruß Albi
Fhem Raspberry3+

TabletUI mit Abfallkalender, der auch per Telegramm sendet - Verkehrsmeldung über Google, das per DOIF an Telegramm bei Störung meldet - Sonnoff mit Tasmota (mqtt) und Shelly (mqtt und mqtt2) - Alexa Verknüpfung - Benzinpreis auf Tablet UI über HTTPMOD - Wetter + Pollen

drhirn

Das Ändern der Lautstärke würde ich von FHEM machen lassen. Mittels Perl-Funktion z.B.. FTUI gibt dann nur den Befehl zum Ändern an FHEM weiter.
Ich weiß nicht, wie genau die Lautstärke an deinem VDR geändert wird. Aber der Ablauf könnte so sein:
* Mit FTUI änderst du den Wert eines FHEM-Dummys
* Ein Notify/DOIF triggert dann den Befehl zum Ändern der Lautstärke auf den Wert im Dummy

Verstehst du, was ich meine?

Albi

Nein,

bin leider Anfänger.

Die Lautstärke am VDR wird über einen SSH Befehl gesteuert. Ich habe eine HU-Bridge am Laufen mit der mit Hilfe von Alexa Echo die Lautstärke regeln kann. Hier wird eben ein CMD an Fhem gesendet der die Lautstärke regelt. Der Befehl sieht wie folgt aus.

cmd ssh poweroff@/192.168.0.9 svdrpsend VOLU

Hinter VOLU wird dann der gewünschte Wert gesetzt (0-255)

Im Grunde müsste ich ja nur den CMD Befehl absetzten an Fhem....

Fhem Raspberry3+

TabletUI mit Abfallkalender, der auch per Telegramm sendet - Verkehrsmeldung über Google, das per DOIF an Telegramm bei Störung meldet - Sonnoff mit Tasmota (mqtt) und Shelly (mqtt und mqtt2) - Alexa Verknüpfung - Benzinpreis auf Tablet UI über HTTPMOD - Wetter + Pollen

drhirn

Zitat von: Albi am 12 Februar 2018, 11:08:19Im Grunde müsste ich ja nur den CMD Befehl absetzten an Fhem....

Ja. Das geht nur leider mit dem Volume-Widget nicht. Zumindest wüsste ich nicht, wie. Deswegen der Plan mit dem Dummy. Hat auch den Vorteil, dass nicht nur der DVR, sondern auch FHEM die aktuelle Lautstärke kennt (vorausgesetzt, sie wird nicht durch eine IR-Fernbedienung geändert). Sonst zeigt dir ja das Volume-Widget eine Phantasie-Zahl an. Oder?

Albi

Ok,

Dann werde ich das mal versuchen.

Momentan wird übrigens gar kein Wert angezeigt, da ja keiner abfragbar ist. Denn das device "VDR_Wohnzimmer" ist ja nur ein WOL Modul, also quasi nur ein on/off Schalter.

Mal schauen ob ich das hinbekomme, bin wie gesagt Anfänger. Aber learning by dooing....

Gruß Albi
Fhem Raspberry3+

TabletUI mit Abfallkalender, der auch per Telegramm sendet - Verkehrsmeldung über Google, das per DOIF an Telegramm bei Störung meldet - Sonnoff mit Tasmota (mqtt) und Shelly (mqtt und mqtt2) - Alexa Verknüpfung - Benzinpreis auf Tablet UI über HTTPMOD - Wetter + Pollen

drhirn


Albi

Hmm,

also irgenwie scheine ich zu doof zu sein.

Habe ein Dummy Defice definiert.

Versucht über atrr dem cmd Befehl hinzuzufügen.

JEdoch kapier ich nicht wie jetzt der eigebenen Wert mit dazu übernommen werden soll. Oder bin ich da voll auf dem Holzweg.

Der Befehl wäre:

{ system("ssh poweroff\@192.168.0.9 svdrpsend VOLU *hier muss die Zahl zwischen 0und255 rein*") }

Komme da mit meinen Anfänger Know How nicht weiter



Fhem Raspberry3+

TabletUI mit Abfallkalender, der auch per Telegramm sendet - Verkehrsmeldung über Google, das per DOIF an Telegramm bei Störung meldet - Sonnoff mit Tasmota (mqtt) und Shelly (mqtt und mqtt2) - Alexa Verknüpfung - Benzinpreis auf Tablet UI über HTTPMOD - Wetter + Pollen

Albi

Ergänzung.

Ich habe ein notify angelegt mit dem modify wo der Befehl vom Post oben eingetragen ist.

Vom Dummy Defice kann ich nun den Status entsprechend im Tablet UI wieder geben.


Jetzt hänge ich daran, wie das Dummy das ganze an den notify weitergibt und/um den Befehl auszuführen.

Ich kann auch über das TabletUI das Dummy entsprechend den Wert einstellen, also nicht nur abfragen.

Gruß Albi
Fhem Raspberry3+

TabletUI mit Abfallkalender, der auch per Telegramm sendet - Verkehrsmeldung über Google, das per DOIF an Telegramm bei Störung meldet - Sonnoff mit Tasmota (mqtt) und Shelly (mqtt und mqtt2) - Alexa Verknüpfung - Benzinpreis auf Tablet UI über HTTPMOD - Wetter + Pollen

drhirn

Nun gut, ich möchte dir nicht das Denken abnehmen, deswegen nur ein ungefähr ähnliches Beispiel von mir ;).
Ich steuere meinen nicht-smarten TV mit LIRC (IR-Diode an einem Raspberry). In FTUI habe ich Kanal-Logos. Ein Klick darauf sendet die Kanal-Nr. an einen Dummy. Auf dessen Status-Änderung reagiert ein Notify. Dieses Notify triggert dann eine Funktion in 99_myUtils.pm. Letzeres ist aber jetzt mal irrelevant.

Du bist ja schon so weit, dass du den Wert im Dummy hast. Dir fehlt also nur noch das Notify dazu.

Mein Dummy:

Internals:
   NAME       rcTvChannel
   NR         57
   STATE      214
   TYPE       dummy
   READINGS:
     2018-01-13 18:43:56   state           214
Attributes:
   icon       it_remote
   room       Dummy,Multimedia


Das Notify:

Internals:
   DEF        rcTvChannel {sendTVChannel("$EVENT")}
   NAME       notTvChannel
   NOTIFYDEV  rcTvChannel
   NR         58
   NTFY_ORDER 50-notTvChannel
   REGEXP     rcTvChannel
   STATE      active
   TYPE       notify
   READINGS:
     2018-02-13 17:04:39   state           active
Attributes:


Und der Vollständigkeit halber noch die Perl-Funktion:

sub sendTVChannel($)
{
        my $strChannel = shift;
        my @arrChannel = split('',$strChannel,length($strChannel));
               
        foreach (@arrChannel)
        {
                #fhem( "set rcTVSony KEY_$_\n");
                my $curl=`curl --silent --data '' http://fqdn:3000/remotes/SONY-TV/KEY_$_`;
                sleep(1);
        }
}


Die Lösung für dein Problem liegt im Notify. Du musst sie jetzt nur noch finden ;)

Albi

Hallo und danke,


Im notify fehlte im def das Dummy Device. Vielen Dank für die schnelle Antwort und Hilfe.

Gruß Albi
Fhem Raspberry3+

TabletUI mit Abfallkalender, der auch per Telegramm sendet - Verkehrsmeldung über Google, das per DOIF an Telegramm bei Störung meldet - Sonnoff mit Tasmota (mqtt) und Shelly (mqtt und mqtt2) - Alexa Verknüpfung - Benzinpreis auf Tablet UI über HTTPMOD - Wetter + Pollen

Albi

Ergänzend dazu.

Im Notify steht nun folgendes im DEF

LautVDR { system("ssh poweroff\@192.168.0.9 svdrpsend VOLU $EVENT") }

Gruß Albi
Fhem Raspberry3+

TabletUI mit Abfallkalender, der auch per Telegramm sendet - Verkehrsmeldung über Google, das per DOIF an Telegramm bei Störung meldet - Sonnoff mit Tasmota (mqtt) und Shelly (mqtt und mqtt2) - Alexa Verknüpfung - Benzinpreis auf Tablet UI über HTTPMOD - Wetter + Pollen

drhirn


Albi

Joap, danke fürs "rauflupfen" (ist schwäbisch)....

Entscheidend war aber auch das meine Device Angabe fehlte. Dann habe ich im log gesehen, dass nur der Befehl abgesendet wurde, ohne einen Wert mitzugeben. Das hat übrigens die Auswirkung das mein Vdr an Fhem die aktuelle Lautstärke anzeigt bzw übermittelt.

Auf jeden Fall war mit dann klar, ich muss den Wert aus dem device mitgeben in den Befehl. Und da sah ich in deinem Code oben das $Event....

Und siehe da, es wird laut und leise.


Gruß Albi
Fhem Raspberry3+

TabletUI mit Abfallkalender, der auch per Telegramm sendet - Verkehrsmeldung über Google, das per DOIF an Telegramm bei Störung meldet - Sonnoff mit Tasmota (mqtt) und Shelly (mqtt und mqtt2) - Alexa Verknüpfung - Benzinpreis auf Tablet UI über HTTPMOD - Wetter + Pollen