NEWS
Skript beenden
-
Hallo,
ja ich rufe über Alexa direkt scriptEnable auf.
Ich sitze hier am IPad, und kann das Script nicht rauskopieren. Wenn ich am PC bin werd ichs hier einstellen.
Ist der Aufruf falsch?
-
nein… falsch ist da erst einmal nichts. Hängt halt davon ab, was Du machen willst und da fehlen noch ein paar Infos
Eine Alternative wäre das Skript immer laufen zu lassen und es über einen Trigger zu steuern.
Mit scriptEnable kannst Du ein Skript starten oder ein Skript ausschalten.
> Jetzt müsste das Skript beendet werden damit der Befehl den das Skript sendet nicht dauernd gesendet wird.
Wenn Du Alexa sagst "schalte xyz aus", wird das Skript denn dann mit scriptEnable beendet?
Mal sehen, wenn Du das Skript postest.
-
Hallo,
ich habe jetzt was ganz anderes versucht.
Ich schalte mit Alexa direkt eine Systemvariable auf Homematic, die dann ein Script auslöst.
Leider geht nur an bzw. True.
Gibt es eine Möglichkeit diese auch auf Fälle zu setzen?
Jörg
-
Ich hatte es auch, dass ein laufendes Script Probleme bereitete.
Konkret ging es um ein Script das Befehle an einen SAT-Receiver (vuplus) schickte und wenn dieser AUS war stuerzte der Javascript-Adapter ab.
Problemloesung: Szene Adapter startet Script und beendet Script nach 2s wieder.
Szene wurde wiederum ueber Alexa gestartet.
-
Ich schalte mit Alexa direkt eine Systemvariable auf Homematic, die dann ein Script auslöst. `
Ein Homematic Skript oder ein ioBroker JS-Skript?
Leider geht nur an bzw. True.
Gibt es eine Möglichkeit diese auch auf Fälle zu setzen? `
"Alexa, schalte xyz aus" setzt ein false.
sorry, mir ist leider Imme rncoh nicht klar, worum es genau geht
-
Hallo,
ich schalte mit Alexa eine Variable auf Homematic, bzw. Möchte ich das tun.
An geht aus geht nicht.
Das habe ich deshalb versucht da ich mit dem iobroker Script nicht zurecht komme.
Ziel ist eigentlich ganz einfach. Ich möchte an einen PC eine http Nachricht schicken.
Der Weg ist mir egal, Hauptsache es funktioniert.
Könnt ihr mir weiterhelfen, am besten Schritt für Schritt.
Danke
-
ich schalte mit Alexa eine Variable auf Homematic, bzw. Möchte ich das tun.
An geht aus geht nicht. `
Du musst eine Nachricht bei an und eine andere Nachricht bei aus schicken?
Oben hatte ich es noch so verstanden, dass Deine bisherige Lösung immer wieder die Nachricht schickt, wenn Du Sie einmal aktiviert hast.
Hast Du die Nachricht?
Ich versuch Dir mal ein Beispiel zu erstellen.
-
Da die Infos etwas spärlich fliessen…
Probier es mal damit:
! ````
// Pfad und Datenpunktname
var pfad = "Alexa.Trigger";
var datenpunkt = "sendHttp";
! var timeout = 10000; // Wie lange soll auf eine Antwort gewartet werden?
! var url = "http://www.google.de"; // hier die url, die gesendet werden soll
! //Wenn eine Anmeldung (Authentifizierung benötigt wird)
var username = 'benutzername';
var password = 'passwort';
var auth = 'Basic ' + new Buffer(username + ':' + password).toString('base64');
! var idAlexaTrigger = "javascript."+instance+"."+pfad +'.'+datenpunkt;
! // Datenpunkt für den Trigger anlegen
//------------------------------------
createState(idAlexaTrigger, false, {
name: 'Alexa Trigger um hhtp zu senden',
desc: 'Alexa Trigger um hhtp zu senden',
type: 'boolean',
unit: '',
role: 'value'
});
! request = require('request');
! var options = {
url: url,
timeout: timeout,
headers: {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1'/,
"Authorization": auth/
}
};
! function sendHttp(url) {
try {
request(options, function (error, response, body) {
if(!response) {
log("ERROR: kein Response","warn");
return;
}
if (!error && ('' + response.statusCode).match(/^2\d\d$/)) { // kein Fehler (2xx), Inhalt in body
log(response.statusCode);
//log(body);} else { // Fehler bei der Abfrage der Webseite log("StatusCode="+response.statusCode); //log("ERROR CODE: " + error.code + " ################");
! // EHOSTUNREACH, ETIMEDOUT
if (!error) {
//
} else {
//
}log(error,'error'); /* setTimeout(function(l) { // bei Fehler jede Minute abfragen sendHttp(url); },60000); */ } }); } catch (error) { log('Fehler (try) leseWebseite: ' + error, 'error'); }
}
! // Subscription (Trigger für Alexa überwachen)
//--------------------------------------------
! on({id: idAlexaTrigger,change:'any'}, function (obj) {
if (obj.state.val) { // bei true
log("Status empfangen: " + obj.state.val);
sendHttp(url);
}
});
! // main
// -----------------------------------------------------------------------------
function main() {
sendHttp(url);
}
! // Start Skript:
// -----------------------------------------------------------------------------
setTimeout(main, 500); // Kommentar entfernen, wenn bei Skriptstart ddas http Kommando geschickt werden soll
! ```` -
Hallo,
ich hab leider gröbste Probleme mich im Forum anzumelden.
Es geht nur am IPad.
Danke für das Beispiel, ich werde es gleich mal versuchen.
-
ich hab leider gröbste Probleme mich im Forum anzumelden. `
Hast du dich bereits vor langer Zeit einmal hier angemeldet?Dann bitte sämtliche Cookies (zumindest des Forums) löschen und am besten auch die gesamte History und den Cacje.
Dann müsste es wieder klappen.
Gruß
Rainer