ioBroker Forum


Nutzungsbedingungen |Datenschutzrichtlinie
Cloud |Dokumentation
Aktuelle Zeit: 14.12.2017, 01:40

Alle Zeiten sind UTC+01:00




Ein neues Thema erstellen  Auf das Thema antworten  [ 12 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 15.09.2017, 09:06 
Offline
professional

Registriert: 09.10.2016, 12:44
Beiträge: 127
Hat sich bedankt: 10 Mal
Danksagung erhalten: 7 Mal
Leider ist der Adapter für Google Assistant ja noch nicht fertig.

Bis dahin wollte ich aber ein wenig Erfahrungen sammeln, ob der Assistent von uns auch genutzt wird, oder einfach nur eine Spielerei für die erste Zeit ist.

Aus dem Grund habe ich mich dran gemacht, und ein kleines Script geschrieben, dass die Antwort von IFTTT auswertet und in ioBroker States setzt.

Der Einstieg ist für Anfänger oft nicht einfach, drum schreibe ich hier mal eine kleine Anleitung, mit der es einfach sein sollte, sich die Ansagen nach Bedarf anzupassen.

in ioBroker habe ich ein Javascript mit folgendem Inhalt angelegt:

Spoiler: Show hidden text
Code:
on({id: "cloud.0.services.ifttt"}, function(obj) {
    if(obj.newState.val.length > 0)
    {
        var objVal = JSON.parse(obj.newState.val);
        log(objVal.room);
        switch(objVal.room)
        {
            case 'global':
                switch(objVal.type)
                {
                    case 'szene':
                        if(objVal.value == 'Fernsehen')
                            setState("scene.0.state", 2);
                        if(objVal.value == 'Kino')
                            setState("scene.0.state", 1);
                        break;
                }
                break;
            case 'wohnzimmer':
                switch(objVal.do)
                {
                    case 'schalte':
                        switch(objVal.value)
                        {
                            case 'ein':
                            case 'an':
                                setState("modbus.0.holdingRegisters.12342_BELEUCHTUNG_WOHNZIMMER DIMMER", 255);
                                break;
                            case 'aus':
                                setState("modbus.0.holdingRegisters.12342_BELEUCHTUNG_WOHNZIMMER DIMMER", 0);
                                break;
                        }
                        break;
                    case 'dimmen':
                        setState("modbus.0.holdingRegisters.12342_BELEUCHTUNG_WOHNZIMMER DIMMER", objVal.value);
                        break;
                }
                break;
            case 'esszimmer':
                switch(objVal.do)
                {
                    case 'schalte':
                        switch(objVal.value)
                        {
                            case 'ein':
                            case 'an':
                                setState("modbus.0.holdingRegisters.12343_BELEUCHTUNG_ESSZIMMER DIMMER", 255);
                                break;
                            case 'aus':
                                setState("modbus.0.holdingRegisters.12343_BELEUCHTUNG_ESSZIMMER DIMMER", 0);
                                break;
                        }
                        break;
                    case 'dimmen':
                        setState("modbus.0.holdingRegisters.12342_BELEUCHTUNG_WOHNZIMMER DIMMER", objVal.value);
                        break;
                }
                break;
            case 'buero':
                switch(objVal.do)
                {
                    case 'schalte':
                        switch(objVal.value)
                        {
                            case 'ein':
                            case 'an':
                                setState("modbus.0.coils.12309_Beleuchtung_Buero", true);
                                break;
                            case 'aus':
                                setState("modbus.0.coils.12309_Beleuchtung_Buero", false);
                                break;
                        }
                        break;
                    case 'dimmen':
                       
                        break;
                }
                break;
        }
    }
});


Das Ding ist noch etwas rudimentär programmiert, da ich erstmal was zusammenklöppeln wollte, um überhaupt zu sehen, ob und wie schnell die Reaktionszeit ist.

Man sieht aber sehr schön, wie ich Szenen, Dimmer und Licht (ein/aus) schalten kann.

In IFTTT müssen wir nach folgender Anleitung ioBroker einbinden: https://github.com/ioBroker/ioBroker.cl ... c/ifttt.md

Ein Beispiel Applet
Spoiler: Show hidden text
Dateianhang:
iobroker-ifttt.png
iobroker-ifttt.png [ 40.88 KiB | 1035 mal betrachtet ]


Anhand des JSON kann man nun seine Routinen im Script beliebig erweitern oder aber auch zur besseren Übersicht auf mehrere Scripte verteilen. Ich hoffe, ich konnte dme ein oder anderen hiermit den Einstieg erleichtern.

_________________
Wago 750-881 - mit über 200 Ein- und Ausgängen, DMX512 Art-Net für Beleuchtung, 1-Wire für Umweltsensoren Aussen und Innen, ioBroker als Visualisierung


Nach oben
   
BeitragVerfasst: 15.09.2017, 13:19 
Offline
professional
Benutzeravatar

Registriert: 24.03.2016, 10:45
Beiträge: 869
Hat sich bedankt: 36 Mal
Danksagung erhalten: 37 Mal
Sehr schön. Sowas habe ich schon gesucht.
Leider scheint es dann doch nicht so einfach für einen Anfänger zu sein es anzupassen.
Ohne Programierkenntnisse stoße ich da gleich an meine Grenzen.
Ist es vielleicht möglich ein noch einfacheres Beispiel zu nehmen, z.B. nur um einen Homematic-Lichtschalter AN/AUS zu schalten? Vielleicht finde ich damit den Zugang.

_________________
brix 3150 gigabyte (ioB mit vis, hue, tr-064, ical, ping, telegram, rflink, tankerkoenig, DWD, radar, unifi, Landroid S)
pi3 (Ansagen über sayit, kabelgebunden)
pi1 (arbeitssuchend)
Arduino mega mit 433 MHz-rflink
Google Home, Echo, Echo Dot


Nach oben
   
BeitragVerfasst: 15.09.2017, 16:01 
Offline
professional

Registriert: 09.10.2016, 12:44
Beiträge: 127
Hat sich bedankt: 10 Mal
Danksagung erhalten: 7 Mal
Schreib doch mal, wie weit du bisher gekommen bist. Gerne kann ich versuchen, dir dann weiterzuhelfen.

_________________
Wago 750-881 - mit über 200 Ein- und Ausgängen, DMX512 Art-Net für Beleuchtung, 1-Wire für Umweltsensoren Aussen und Innen, ioBroker als Visualisierung


Nach oben
   
BeitragVerfasst: 13.11.2017, 12:35 
Offline
professional

Registriert: 11.02.2015, 11:21
Beiträge: 157
Hat sich bedankt: 7 Mal
Danksagung erhalten: 11 Mal
Moin!

Sehe ich das richtig das für jede Sprachaktion ein Applet bei ifttt erstellt werden muß?

Danke Dir
Mr.Lee


Nach oben
   
BeitragVerfasst: 13.11.2017, 14:20 
Offline
professional

Registriert: 09.10.2016, 12:44
Beiträge: 127
Hat sich bedankt: 10 Mal
Danksagung erhalten: 7 Mal
Ja - aktuell ist das leider so. Deshalb habe ich auch nur 6 Stück zum Test eingerichtet, da es sehr viel Aufwand wäre, da alles aktuell zu halten.

_________________
Wago 750-881 - mit über 200 Ein- und Ausgängen, DMX512 Art-Net für Beleuchtung, 1-Wire für Umweltsensoren Aussen und Innen, ioBroker als Visualisierung


Nach oben
   
BeitragVerfasst: 21.11.2017, 15:04 
Offline
starter
Benutzeravatar

Registriert: 30.08.2017, 19:51
Beiträge: 43
Wohnort: Unterfranken
Hat sich bedankt: 2 Mal
Danksagung erhalten: 3 Mal
Hallo,

wenn man bei IFTTT ein Applet mit Parameterübergabe verwendet, können beliebig viele Befehle mit einem Applet übertragen werden. Am Anfang wird dabei immer das gleiche Aktivierungswort verwendet. In ioBroker kann man das dann mit einem Script analysieren und verschiedene Aktionen auslösen.

Tschau
Uwe

_________________
[ioBroker auf QNAP]


Nach oben
   
BeitragVerfasst: 21.11.2017, 15:15 
Offline
professional
Benutzeravatar

Registriert: 24.03.2016, 10:45
Beiträge: 869
Hat sich bedankt: 36 Mal
Danksagung erhalten: 37 Mal
uweklatt hat geschrieben:
Hallo,

wenn man bei IFTTT ein Applet mit Parameterübergabe verwendet, können beliebig viele Befehle mit einem Applet übertragen werden. Am Anfang wird dabei immer das gleiche Aktivierungswort verwendet. In ioBroker kann man das dann mit einem Script analysieren und verschiedene Aktionen auslösen.

Tschau
Uwe

Hast du so ein Applet am Laufen?
Blockly Script zum Analysieren kann ich mir noch vorstellen.

_________________
brix 3150 gigabyte (ioB mit vis, hue, tr-064, ical, ping, telegram, rflink, tankerkoenig, DWD, radar, unifi, Landroid S)
pi3 (Ansagen über sayit, kabelgebunden)
pi1 (arbeitssuchend)
Arduino mega mit 433 MHz-rflink
Google Home, Echo, Echo Dot


Nach oben
   
BeitragVerfasst: 21.11.2017, 16:32 
Offline
starter
Benutzeravatar

Registriert: 30.08.2017, 19:51
Beiträge: 43
Wohnort: Unterfranken
Hat sich bedankt: 2 Mal
Danksagung erhalten: 3 Mal
Hallo lobomau,

ein Beispiel habe ich hier beschrieben:
http://forum.iobroker.net/viewtopic.php?p=91559#p91559

Tschau
Uwe

_________________
[ioBroker auf QNAP]


Nach oben
   
BeitragVerfasst: 25.11.2017, 13:10 
Offline

Registriert: 25.11.2017, 13:07
Beiträge: 1
Hey. Ich habe mal eine kurze Frage:

Ist die Einrichtung des iobrokers für Google Home schwieriger als mit Alexa?
Ich habe mich auf dem Markt jetzt etwas umgesehen und denke, dass entweder io.broker oder homeassistant die besten Lösungen, um praktisch alles zu steuern.

Was empfehlt ihr mir? Danke im Voraus!

Sent from my SM-G930F using Tapatalk


Nach oben
   
BeitragVerfasst: 05.12.2017, 13:19 
Offline

Registriert: 01.03.2017, 17:33
Beiträge: 5
Hi, ich habe mich auch ein wenig an IFTTT und iobroker.pro versucht und stolper über das Problem, dass jetzt Google jeden befehl an IO-Broker leitet und mein definiertes Komando nicht prüft.
Mein applet sieht wie folgt aus:

Option: Say a phrase with a text ingredient
What do you want to say?: Mach mal bitte $
What's another way to say it? (optional): Mach mal $
And another way? (optional): Mach ma $

What do you want the Assistant to say in response?: Wird an IO Broker übergeben

Language: German

--> Make a web request


Ich hatte die Hoffnung das ich es möglichst einfach halten kann und so intuitiv wie möglich, aber wie erwähnt wird jetzt jede Anfrage mit "Wird an IO Broker übergeben" quittiert.
Die optionalen Kommandos hatte ich eingetragen, da ich zunächst dachte das hier das Problem liegt. Aber Hilft auch nicht. :(

Hat hier jemand eine Idee ob es daran liegt, das "Mach mal" zu kurz und damit zu unspezifisch ist, oder ob es generell so ist, dass IFTTT immer alle Anfragen abfängt?


Nach oben
   
BeitragVerfasst: 06.12.2017, 16:29 
Offline
professional
Benutzeravatar

Registriert: 24.03.2016, 10:45
Beiträge: 869
Hat sich bedankt: 36 Mal
Danksagung erhalten: 37 Mal
Pepsi1183 hat geschrieben:
Hi, ich habe mich auch ein wenig an IFTTT und iobroker.pro versucht und stolper über das Problem, dass jetzt Google jeden befehl an IO-Broker leitet und mein definiertes Komando nicht prüft.
Mein applet sieht wie folgt aus:

Option: Say a phrase with a text ingredient
What do you want to say?: Mach mal bitte $
What's another way to say it? (optional): Mach mal $
And another way? (optional): Mach ma $

What do you want the Assistant to say in response?: Wird an IO Broker übergeben

Language: German

--> Make a web request


Ich hatte die Hoffnung das ich es möglichst einfach halten kann und so intuitiv wie möglich, aber wie erwähnt wird jetzt jede Anfrage mit "Wird an IO Broker übergeben" quittiert.
Die optionalen Kommandos hatte ich eingetragen, da ich zunächst dachte das hier das Problem liegt. Aber Hilft auch nicht. :(

Hat hier jemand eine Idee ob es daran liegt, das "Mach mal" zu kurz und damit zu unspezifisch ist, oder ob es generell so ist, dass IFTTT immer alle Anfragen abfängt?

Zum Testen würde ich mal die beiden optionalen Texte weglassen. Wenn immernoch nicht geht, mal anderes trigger-Wort, z.B. schalte $

_________________
brix 3150 gigabyte (ioB mit vis, hue, tr-064, ical, ping, telegram, rflink, tankerkoenig, DWD, radar, unifi, Landroid S)
pi3 (Ansagen über sayit, kabelgebunden)
pi1 (arbeitssuchend)
Arduino mega mit 433 MHz-rflink
Google Home, Echo, Echo Dot


Nach oben
   
BeitragVerfasst: 07.12.2017, 22:32 
Offline

Registriert: 01.03.2017, 17:33
Beiträge: 5
Danke, hat leider nicht geklappt. Ich befürchte Google ist einfach zu schlau und setzt "Schalte" "Mache" "Tue" etc. als ein generellen Befehl um und somit triggert GH immer IFTTT.
Habe mit jetzt ein Applet mit nem längeren Text "mach im Flur die Musik an" und ohne Parameter erstellt und damit klappt es wunderbar.

Werde mich dann mal zwischen den Feiertagen hinsetzen und diverse Applets für GH bauen (für alles was GH noch nicht von haus aus unterstützt.)
Bzw. mich mal mit eigenen Actions auseinander setzen....


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 12 Beiträge ] 

Alle Zeiten sind UTC+01:00


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu Forum:  
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de