NEWS
Alexa - Kommandos anpassen
-
aber dann hätten wir noch mehr Geräte in der Alexa `
Ja, nein, vielleicht.Das andere Extrem:
Wenn du "nur" Szenen in Alexa hättest kannst du über deren Namen immer wieder mehrere Geräte in anderen Kombinationen verwenden.
Du kannst auch Änderunegn in den Szenen zuweisen, ohne den Alexa-Namen zu ändern.
Kann ich aber nicht beurteilen, da ich nicht mit Alexa rede
Gruß
Rainer
-
Wenn du "nur" Szenen in Alexa hättest kannst du über deren Namen immer wieder mehrere Geräte in anderen Kombinationen verwenden.
Du kannst auch Änderunegn in den Szenen zuweisen, ohne den Alexa-Namen zu ändern. `
Das ist ein Argument! Man müsste sie nur einmalig füttern und könnte dann alles in ioBroker einstellen.
@Homoran:Kann ich aber nicht beurteilen, da ich nicht mit Alexa rede `
Solltest du mal probieren… die sagt manchmal sogar mal ein paar lustige Witze! :lol:Grüße,
ldittmar
-
Hallo Leute,
bin auch ziemlich neu auf dem Gebiet, und arbeite mich zzt. mit Alexa und ioBroker ein.
Hätte jetzt folgende Situation:
Ich möchte meinen TV (Samsung J-Serie) über Infrarot mit RM Pro ansteuern.
Das klappt auch soweit super, jedoch würde ich nun gerne einen Schritt weiter gehen und in den Skripten Variable Worte einsetzen, damit die Geräte in Alexa weniger werden und ich z.b. auch Sendernamen verwenden kann.
Aktuell werden (zumindest konnte ichs nicht anders finden) nur Werte in Zahlen von Alexa an den Cloud Adapter übergeben.
Besteht eine Chance auch Texte zu übergeben?
Danke schonmal für eure Rückmeldungen.
-
Es müsste also noch ein ioBroker Skill erstellt werden, der dann die Fragen "Alexa, frage ioBroker ob das Licht in de Küche an ist." behandelt. Naja… `
Bin dran.Schreibe gerade ein Custom Skill.
:o :o :o :o :o Du bist DER BESTE!!! :o :o :o :o
Hi Bluefox gibts hier schon was neues zum "Antwort-Skill"???
Vielen Dank für deine Mühe!
-
Hi Bluefox gibts hier schon was neues zum "Antwort-Skill"???
Vielen Dank für deine Mühe! `
Hi,bin zwar nicht Bluefox, aber ich kann sagen dass es in der Pipe ist .. wird bald kommen, aber zuerst müssen ein paar andere wichtige Sachen erledigt werden. Bluefox und die andere Entwickler arbeiten hart daran das System noch besser zu machen.
Grüße,
ldittmar
-
Hi Bluefox gibts hier schon was neues zum "Antwort-Skill"???
Vielen Dank für deine Mühe! `
Hi,bin zwar nicht Bluefox, aber ich kann sagen dass es in der Pipe ist .. wird bald kommen, aber zuerst müssen ein paar andere wichtige Sachen erledigt werden. Bluefox und die andere Entwickler arbeiten hart daran das System noch besser zu machen.
Grüße,
ldittmar `
Schön das zu hören!! Und sehen können wir es ja auch jeden Tag
Dank Euch liebt auch meine Freundin den kleinen Echo!!! Inzwischen werd ich von Ihr berichtigt wenn ich nen "falschen Befehl" geb.
Weiter so!!! Donation folgt!
-
Hi,
Ich habe heute gerade iobroker frisch installiert. Soweit alles gut, nur meine Rollladen machen was sie wollen. Wenn ich sage runter fahren Diese rauf.
Ich habe sie im cloud Adapter "Bei an 100%" stehen und 0 gibt es nicht zur Auswahl.
Gruß Lars
-
Hi,
Ich habe heute gerade iobroker frisch installiert. Soweit alles gut, nur meine Rollladen machen was sie wollen. Wenn ich sage runter fahren Diese rauf.
Ich habe sie im cloud Adapter "Bei an 100%" stehen und 0 gibt es nicht zur Auswahl.
Gruß Lars `
Magst Du mal einen Screenshot reinstellen, ich bin nicht sicher ob ich die Aufgabenstellung richtig verstehe 8-) -
Hallo,
Irgendwie ist in diesem thread nicht ersichtlich wie ich einen selbst erstellten Datenpunkt den Befehl auf/zu zuweisen kann.
Ich bekomme immer nur an/aus in der Befehlszeile.
Wird doch über die rolle vorgegeben oder?
Welche variable muss da rein? Oder bin ich auf dem Holzweg?
-
Probier mal einen Datenpunkt vom Typ Number
Gesendet von iPad mit Tapatalk
-
Hallo,
ist ja ein super thread hier.
Leider habe ich nun das Problem einen Datenpunkt für Alexa selbst zu konfigurieren.
Ich möchte nicht das alexa direkt auf irgendwelche Datenpunkte der CCU zugreift um damit besser Logiken realisieren zu können.
Ich brauche einen Datenpunkt der die Befehle Auf/Zu bzw. Rauf/Runter akzeptiert, mir aber true/false ausgibt.
Wenn ich diesen als value und gemischt konfiguriere schreibt er mir immer bei runter false und bei rauf 100. Wenn ich im Datenpunkt MAX auf 1 setze weiß alexa nicht mehr wie sie den Befehl setzen soll.
Ein Screenshot der Datenpunktkonfiguratin wäre hilfreich.
-
Hallo,
ist ja ein super thread hier.
Leider habe ich nun das Problem einen Datenpunkt für Alexa selbst zu konfigurieren.
Ich möchte nicht das alexa direkt auf irgendwelche Datenpunkte der CCU zugreift um damit besser Logiken realisieren zu können.
Ich brauche einen Datenpunkt der die Befehle Auf/Zu bzw. Rauf/Runter akzeptiert, mir aber true/false ausgibt.
Wenn ich diesen als value und gemischt konfiguriere schreibt er mir immer bei runter false und bei rauf 100. Wenn ich im Datenpunkt MAX auf 1 setze weiß alexa nicht mehr wie sie den Befehl setzen soll.
Ein Screenshot der Datenpunktkonfiguratin wäre hilfreich. `
Genau das suche ich auch immer noch…
-
Ich muss jetzt auch etwas zu diesem Thema beitragen.
Ich habe meinen Datenpunkt wie folgt (Screenshot) konfiguriert.
!
![](</s><URL url=)<link_text text="http://forum.iobroker.net/download/file ... 584c579b3e">http://forum.iobroker.net/download/file.php?mode=view&id=10454&sid=66a2a0e6df47c52850dfc5584c579b3e</link_text>" />~~Leider funktioniert das Ganze nicht ganz wie gewünscht:- Alexa reagiert zwar auf Rollladen hoch oder runter, aber nicht immer richtig.
Ich habe das Ganze dann etwas getestet und die Reaktion bzw. den Wert des Datenpunkts auf verschiedene Befehle beobachtet:
-> Bei HOCH wird der Wert immer auf 1 (bei max. von 100 wären es eben 100) gesetzt.
-> Wenn er bei 1 ist, bleibt er bei HOCH auf 1.
-> Bei RUNTER wird er auf 0.75 (bei max. von 100 wären es eben 75) gesetzt, aber nur, wenn er vorher auf 1 (bzw. 100) stand.
-> Wenn der Wert auf 0.75 (bzw. 75) steht und man den Befehl RUNTER gibt, wird dieser auf 1 (bzw. 100) gesetzt!
Keine Ahnung wo hier die Logik ist. In der Regel dürfte dieser Fehler auch selten auffallen, da ich meine Rollladen aber auch zeitgesteuert schalte, war dieser Umstand aber schon merklich.
Daher habe ich mir folgende Lösung überlegt:
Der Wert muss künstlich auf 1 gehalten werden. In diesem Zustand reagiert er bei RUNTER korrekt mit der Senkung des Werts und bei HOCH bleibt er bei 1. Mein Skript muss daher nur abfragen ob
-
Wert gleich 1 = HOCH
-
Wert kleiner 1 = RUNTER
Daher setze ich den Wert nach der Abfrage manuell auf 1.
Damit jetzt aber durch die on()-Anweisung nicht 2 Schaltungen stattfinden (eine durch Alexa, eine durch das manuelle Setzen) muss diese für kurze Zeit (ich habe 2 Sekunden gemacht) deaktiviert werden.
Hierfür habe ich einen weiteren Datenpunkt vom Typ false/true verwendet. Dies ist wahrscheinlich absolut umständlich und hätte gut über eine Variable im Skript gelöst werden können, aber irgendwie habe ich es damit nicht hinbekommen…
Über Hilfe bzw. Verbesserungen wäre ich daher sehr dankbar!
Das Skript:
! ````
var logOn = false; // Skript Logausgabe ein- (true) / ausschalten (false). Fehler werden immer ausgegeben.
var forecreation = false; // Default: false. true: Datenpunkte werden überschrieben (wenn z.B. Bezeichnungen geändert wurden)
var http = require('http'); // Node Module http verwenden
! // Datenpunkte anlegen:
// -----------------------------------------------------------------------------
var idDatenpunkt = "alexa.arbeitszimmer.rollladen"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
createState(idDatenpunkt, 0, forecreation, { // Datenpunkt wird angelegt
name: 'Arbeitszimmer Rollladen',
desc: 'Beide Rollladen des Arbeitszimmers',
type: 'number',
def: 1,
min: 0,
max: 1,
role: 'level'
});
var idVariablenDP = "variablen.sperre_rollladen_arbeitszimmer"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird
createState(idVariablenDP, 0, forecreation, { // Datenpunkt wird angelegt
name: 'Sperre Rollladen Arbeitszimmer',
desc: 'Variable zur Sperrung der Rollladen des Arbeitszimmers',
type: 'boolean',
states: 'false;true',
def: false,
role: 'value'
});
! // Funktionen:
// -----------------------------------------------------------------------------
function requestSenden(options) {
var req = http.get(options, function(res) {
if(logOn) log('STATUS: ' + res.statusCode); // Statuscode
if(logOn) log('HEADERS: ' + JSON.stringify(res.headers)); // Header (Rückmeldung vom Webserver)
! // Buffer the body entirely for processing as a whole.
var bodyChunks = [];
var chunkLine = 0;
res.on('data', function(chunk) {
chunkLine = chunkLine + 1;
if(logOn) log("Zeilennummer: " + chunkLine+ " ,Inhalt: " + chunk);// Hier können die einzelnen Zeilen verarbeitet werden... bodyChunks.push(chunk); }).on('end', function() { if(logOn) log("ARRAY mit den einzelnen Zeilen: " + bodyChunks); if(logOn) log("ARRAY Länge: " + bodyChunks.length);
! var body = Buffer.concat(bodyChunks);
! if(logOn) log('BODY: ' + body); // ...und/oder das Gesamtergebnis.
! });
});
! req.on('error', function(e) { // Fehler abfangen
log('ERROR: ' + e.message,"warn");
});
}
! // Level Einstellen
// -----------------------------------------------------------------------------
function richtungsdef(dp) {
dpWert = dp.state.val;if (dpWert < 1) { // Rollladen RUNTER rqPath = '/control?key=14'; //log("RUNTER"); } else { // Rollladen HOCH rqPath = '/control?key=13'; //log("HOCH"); } var options = { // URL, die abgefragt, bzw. gesendet werden soll host: '192.168.0.131', path: rqPath, port: 31, auth: 'KONTO:PASSWORT', method: 'GET' }; setState("javascript.0." + idDatenpunkt, 1); requestSenden(options); setTimeout(sperreAUS, 2000);
}
// Sperre setzen / löschen
// -----------------------------------------------------------------------------
function sperreAN() {
setState("javascript.0." + idVariablenDP, true);
}
function sperreAUS() {
setState("javascript.0." + idVariablenDP, false);
}! // Abfrage des Datenpunkts
// -----------------------------------------------------------------------------
on({id: "javascript.0." + idDatenpunkt, change:'any'}, function (dp) {
if (getState("javascript.0." + idVariablenDP).val !== true) {
sperreAN();
richtungsdef(dp);
}
}); -
ich stand gerade vor einem ähnlichen Problem.
Der Befehl "auf/zu" scheint nicht in Verbindung mit jedem Gerätenamen zu funktionieren.
Ich habe eine mechanische Türöffnung gebastelt die ich gerne mit "Alexa mach die Tür auf" aktivieren möchte.
Nenne ich den Datenpunkt bzw das Gerät in ioBroker Tür oder Haustür (alternativ kann man auch eine neue Gruppe in der Alexa App erstellen und ihm das Gerät zuweisen), dann kann Alexa nur "Alexa schalte an/aus/auf x Prozent". Nenne ich den Datenpunkt oder die Gruppe mit dem Tür-Öffner-Device z.B. Fenster oder Eingangstür oder Pforte dann klappt es mit "Alexa mach das Fenster/die Eingangstür/die Pforte auf" ….. Man kann also scheinbar doch nicht so frei die Geräte- oder Gruppennamen vergeben. Bleibt also nur Synonyme finden und Vokabeln lernen für Alexa
-
Hallo zusammen,
habe mir gestern den kompletten Thread durchgelesen. Heute habe ich eine Lösung gefunden, die hier noch nicht erwähnt wurde (wahrscheinlich ist die Funktion bei Alexa neu hinzugekommen)
In der Alexa-App lassen sich Routinen für Geräte anlegen.
Hierbei kann folgendes eingetragen werden:
-
Wenn Folgendes passiert (z.B. Sie sagen "Alexa, guten Morgen")
-
Aktion durchführen (z.B. 1. Wettervorhersage für aktuellen Tag, 2. Rolladen hoch)
-
-
Oder vllt doch in Richtung des Custom-Skills gehen?
viewtopic.php?f=36&t=13857&p=147045#p147045
Tester gesucht!
-
Ich würde gern testen, allerdings warte ich seit meiner Anfrage zur Einladung vom 01.05.2018 auf eine Antwort 8-)
-
Schreibs nochmal in den custom skill thread. Email muss die vom Amazon Konto sein. Spam geschaut?