Hallo,
ich würde gerne meine AVR Inputs von meinem Onkyo über die Spracher steuern.
Ist das mit Siri und Alexa Smart Home Skill möglich? Den Custom Stil möchte ich gerne umgehen. Notfalls auch den Umweg über einen Dummy.
Edit: Oder ist es möglich einem dummy mehr als nur ein on/off mitzugeben?
Gruß
TWART016
Du definierst für jeden Eingang einen Dummy oder readingproxy. Dann kannst Du die Eingänge einzeln einschalten:
Alexa, Bluray ein
Alexa, SAT ein
Auf ,,aus" legst du jeweils AVR off oder ignorierst es einfach
Das mit dem dummy funktioniert schon mal ganz gut, auch wenn es ziemlich viele Geräte sind.
Ich habe für jeden Eingang einen dummy angelegt, z.B.:
Internals:
NAME AVR_input_Bluetooth
NR 776
STATE off
TYPE dummy
READINGS:
2017-12-26 15:54:22 state off
Attributes:
alexaName input bluetooth
genericDeviceType switch
homebridgeMapping On=state,valueOn=/on/,valueOff=/off/,cmdOn=on,cmdOff=off
room Homekit,alexa
siriName input bluetooth
webCmd on:off
Dazu für alle Geräte ein DOIF:
Internals:
DEF (["AVR_input_Computer:on"]) (set AVR_input_Bluetooth off;set AVR_input_Fernseher off;set AVR_input_KODI off;set AVR_input_NUC off;set AVR_input_PlayStation off
;set avr input video6)
DOELSEIF
(["AVR_input_Fernseher:on"]) (set AVR_input_Bluetooth off;set AVR_input_Computer off;set AVR_input_KODI off;set AVR_input_NUC off;set AVR_input_PlayStation off
;set avr input 12)
DOELSEIF
(["AVR_input_Bluetooth:on"]) (set AVR_input_Computer off;set AVR_input_Fernseher off;set AVR_input_KODI off;set AVR_input_NUC off;set AVR_input_PlayStation off
;set avr input 2E)
DOELSEIF
(["AVR_input_PlayStation:on"]) (set AVR_input_Bluetooth off;set AVR_input_Computer off;set AVR_input_Fernseher off;set AVR_input_KODI off;set AVR_input_NUC off
;set avr input video2)
DOELSEIF
(["AVR_input_NUC:on"]) (set AVR_input_Bluetooth off;set AVR_input_Computer off;set AVR_input_Fernseher off;set AVR_input_KODI off;set AVR_input_PlayStation off;set avr input dvd)
DOELSEIF
(["AVR_input_KODI:on"]) (set AVR_input_Bluetooth off;set AVR_input_Computer off;set AVR_input_Fernseher off;set AVR_input_NUC off;set AVR_input_PlayStation off;set avr input video3)
NAME AVR_input_DOIF
NR 775
NTFY_ORDER 50-AVR_input_DOIF
STATE cmd_1
TYPE DOIF
READINGS:
2017-12-26 15:54:22 Device AVR_input_Computer
2017-12-26 15:54:22 cmd 1
2017-12-26 15:54:22 cmd_event AVR_input_Computer
2017-12-26 15:54:22 cmd_nr 1
2017-12-26 15:54:22 state cmd_1
Regex:
cond:
:
0:
"AVR_input_Computer:on" AVR_input_Computer:on
1:
"AVR_input_Fernseher:on" AVR_input_Fernseher:on
2:
"AVR_input_Bluetooth:on" AVR_input_Bluetooth:on
3:
"AVR_input_PlayStation:on" AVR_input_PlayStation:on
4:
"AVR_input_NUC:on" AVR_input_NUC:on
5:
"AVR_input_KODI:on" AVR_input_KODI:on
condition:
0 EventDoIf('AVR_input_Computer',$hash,'on',0)
1 EventDoIf('AVR_input_Fernseher',$hash,'on',0)
2 EventDoIf('AVR_input_Bluetooth',$hash,'on',0)
3 EventDoIf('AVR_input_PlayStation',$hash,'on',0)
4 EventDoIf('AVR_input_NUC',$hash,'on',0)
5 EventDoIf('AVR_input_KODI',$hash,'on',0)
devices:
do:
0:
0 set AVR_input_Bluetooth off;set AVR_input_Fernseher off;set AVR_input_KODI off;set AVR_input_NUC off;set AVR_input_PlayStation off ;set avr input video6
1:
0 set AVR_input_Bluetooth off;set AVR_input_Computer off;set AVR_input_KODI off;set AVR_input_NUC off;set AVR_input_PlayStation off ;set avr input 12
2:
0 set AVR_input_Computer off;set AVR_input_Fernseher off;set AVR_input_KODI off;set AVR_input_NUC off;set AVR_input_PlayStation off ;set avr input 2E
3:
0 set AVR_input_Bluetooth off;set AVR_input_Computer off;set AVR_input_Fernseher off;set AVR_input_KODI off;set AVR_input_NUC off ;set avr input video2
4:
0 set AVR_input_Bluetooth off;set AVR_input_Computer off;set AVR_input_Fernseher off;set AVR_input_KODI off;set AVR_input_PlayStation off;set avr input dvd
5:
0 set AVR_input_Bluetooth off;set AVR_input_Computer off;set AVR_input_Fernseher off;set AVR_input_NUC off;set AVR_input_PlayStation off;set avr input video3
6:
helper:
DOIF_Readings_events
DOIF_eventas
event on
globalinit 1
last_timer 0
sleeptimer -1
timerdev AVR_input_Computer
timerevent on
triggerDev AVR_input_Computer
timerevents:
on
timereventsState:
state: on
triggerEvents:
on
triggerEventsState:
state: on
internals:
itimer:
readings:
trigger:
uiState:
uiTable:
Attributes:
do always
Alles funktioniert, nur bei Siri erkennt er: stelle input bluetooth ein sagt er:
ZitatIch verstehe leider nicht, was du mit meinst
Jemand eine Idee?
die v3 version des api hat auch ein interface um kanäle und sender zu wechseln. kommt im einem der nächsten updates hier: https://forum.fhem.de/index.php/topic,81324.msg733986.html#msg733986 (https://forum.fhem.de/index.php/topic,81324.msg733986.html#msg733986)
bei siri bleibt auch weiterhin nur die möglichkeit mehrere schalter zu verwenden. im wiki ist ein beispiel für harmony activities die das über einen service mit mehreren characterstics machen. das spart geräte wenn man ans homekit limit stößt.