NEWS
[gelöst] Sayit –> Keine Ansage wenn Geburtstag/Muell ansteht
-
Hi,
ich mache mal ein eigenes Thema auf das dieses http://forum.iobroker.net/viewtopic.php?f=21&t=3351 hier ja eigentlich schon gelöst ist.
Ich habe das Script soweit zum laufen bekommen das ich eine Ansage für Temperatur und DWD Wetter bekomme.
Wenn ich jetzt z.B. nur schon den ICAL für Geburtstage eintrage:
var idGeburtstage = "ical.0.data.html";
Bekomme ich keine Ansage mehr. Es ertönt lediglich der Hinweis Ton. Im Script log sieht es so aus:
17:58:49.328 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=dwd.0.warning.description, timerId=0) => {"val":"Es tritt leichter Frost zwischen 0 °C und -2 °C auf.","ack":true,"ts":1482336181371,"q":0,"from":"system.adapter.dwd.0","lc":1482328981463} 17:58:49.328 [info] javascript.0 script.js.SayIt_Ansage_Script: Wetter: Es tritt leichter Frost zwischen 0 °C und -2 °C auf. 17:58:49.328 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=ical.0.data.html, timerId=0) => {"val":"Heute Geburtstag Heinrich","ack":true,"ts":1482339356020,"q":0,"from":"system.adapter.ical.0","lc":1482339356020} 17:58:49.328 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=ical.0.data.html, timerId=0) => {"val":"Heute Geburtstag Heinrich","ack":true,"ts":1482339356020,"q":0,"from":"system.adapter.ical.0","lc":1482339356020} 17:58:49.328 [info] javascript.0 script.js.SayIt_Ansage_Script: Heute Geburtstag Heinrich 17:58:49.328 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=javascript.0.Muellereignisse.heute, timerId=0) => {"val":"","ack":false,"ts":1482267293799,"q":0,"from":"system.adapter.javascript.0","lc":1482267293799} 17:58:49.328 [info] javascript.0 script.js.SayIt_Ansage_Script: Trigger: false 17:59:19.456 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=hm-rpc.0.MEQ0202146.1.TEMPERATURE, timerId=0) => {"val":4.7,"ack":true,"ts":1482339522666,"q":0,"from":"system.adapter.hm-rpc.0","lc":1482339238152} 17:59:19.457 [info] javascript.0 script.js.SayIt_Ansage_Script: Temp 4.7 17:59:19.457 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=hm-rpc.0.MEQ0202146.1.TEMPERATURE, timerId=0) => {"val":4.7,"ack":true,"ts":1482339522666,"q":0,"from":"system.adapter.hm-rpc.0","lc":1482339238152} 17:59:19.457 [info] javascript.0 script.js.SayIt_Ansage_Script: Temp 4.7 17:59:19.457 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=dwd.0.warning.description, timerId=0) => {"val":"Es tritt leichter Frost zwischen 0 °C und -2 °C auf.","ack":true,"ts":1482336181371,"q":0,"from":"system.adapter.dwd.0","lc":1482328981463} 17:59:19.457 [info] javascript.0 script.js.SayIt_Ansage_Script: Wetter: Es tritt leichter Frost zwischen 0 °C und -2 °C auf. 17:59:19.457 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=ical.0.data.html, timerId=0) => {"val":"Heute Geburtstag Heinrich","ack":true,"ts":1482339356020,"q":0,"from":"system.adapter.ical.0","lc":1482339356020} 17:59:19.457 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=ical.0.data.html, timerId=0) => {"val":"Heute Geburtstag Heinrich","ack":true,"ts":1482339356020,"q":0,"from":"system.adapter.ical.0","lc":1482339356020} 17:59:19.457 [info] javascript.0 script.js.SayIt_Ansage_Script: Heute Geburtstag Heinrich 17:59:19.457 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=javascript.0.Muellereignisse.heute, timerId=0) => {"val":"","ack":false,"ts":1482267293799,"q":0,"from":"system.adapter.javascript.0","lc":1482267293799} 17:59:19.457 [info] javascript.0 script.js.SayIt_Ansage_Script: Trigger: true 17:59:19.457 [info] javascript.0 script.js.SayIt_Ansage_Script: setForeignState(id=sayit.0.tts.text, state="100;Guten Morgen, heute ist Mittwoch der 21te Dezember 2016\. Es ist17 Uhr und 59 Minuten. Die Aussentemperatur beträgt 4,7 Grad. Wetter Bedingungen,Es tritt leichter Frost zwischen 0 °C und -2 °C auf. .Nicht vergessen, Heute Geburtstag Heinrich .")
Als Sprache habe ich Ivony Deutsch Marlene ausgewählt.
Jemand eine Idee warum keine Ansage mehr kommt?
So sieht das Script log ohne Geburtstagskalender und mit funktionierender Ansage aus:
8:12:32.319 [info] javascript.0 Start javascript script.js.SayIt_Ansage_Script 18:12:32.320 [info] javascript.0 script.js.SayIt_Ansage_Script: subscribe: {"pattern":{"id":"hm-rega.0.17393","change":"ne"},"name":"script.js.SayIt_Ansage_Script"} 18:12:32.320 [info] javascript.0 script.js.SayIt_Ansage_Script: subscribe: {"pattern":{"id":"ical.0.events.Geburtstag","change":"any"},"name":"script.js.SayIt_Ansage_Script"} 18:12:32.320 [info] javascript.0 script.js.SayIt_Ansage_Script: subscribe: {"pattern":{"id":{},"change":"any"},"name":"script.js.SayIt_Ansage_Script"} 18:12:32.320 [info] javascript.0 script.js.SayIt_Ansage_Script: schedule(cron=5 0 * * *) 18:12:32.320 [info] javascript.0 script.js.SayIt_Ansage_Script: registered 3 subscriptions and 1 schedule 18:12:49.493 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=hm-rpc.0.MEQ0202146.1.TEMPERATURE, timerId=0) => {"val":4.6,"ack":true,"ts":1482340237942,"q":0,"from":"system.adapter.hm-rpc.0","lc":1482340110939} 18:12:49.493 [info] javascript.0 script.js.SayIt_Ansage_Script: Temp 4.6 18:12:49.493 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=hm-rpc.0.MEQ0202146.1.TEMPERATURE, timerId=0) => {"val":4.6,"ack":true,"ts":1482340237942,"q":0,"from":"system.adapter.hm-rpc.0","lc":1482340110939} 18:12:49.493 [info] javascript.0 script.js.SayIt_Ansage_Script: Temp 4.6 18:12:49.493 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=dwd.0.warning.description, timerId=0) => {"val":"Es tritt leichter Frost zwischen 0 °C und -2 °C auf.","ack":true,"ts":1482339781467,"q":0,"from":"system.adapter.dwd.0","lc":1482328981463} 18:12:49.493 [info] javascript.0 script.js.SayIt_Ansage_Script: Wetter: Es tritt leichter Frost zwischen 0 °C und -2 °C auf. 18:12:49.493 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=javascript.0.Kalenderereignisse.heute, timerId=0) => {"val":"","ack":false,"ts":1482267293791,"q":0,"from":"system.adapter.javascript.0","lc":1482267293791} 18:12:49.493 [info] javascript.0 script.js.SayIt_Ansage_Script: getState(id=javascript.0.Muellereignisse.heute, timerId=0) => {"val":"","ack":false,"ts":1482267293799,"q":0,"from":"system.adapter.javascript.0","lc":1482267293799} 18:12:49.493 [info] javascript.0 script.js.SayIt_Ansage_Script: Trigger: true 18:12:49.493 [info] javascript.0 script.js.SayIt_Ansage_Script: setForeignState(id=sayit.0.tts.text, state="100;Guten Morgen, heute ist Mittwoch der 21te Dezember 2016\. Es ist18 Uhr und 12 Minuten. Die Aussentemperatur beträgt 4,6 Grad. Wetter Bedingungen,Es tritt leichter Frost zwischen 0 °C und -2 °C auf. .")
Hier das Script wie ich es für meine ICAL Angepasst habe:
! ```
`// Test mit Variable;
// Besser ist es, gleich den Bewegungsmelder hier abzufragen.
//var idSayVar = 'javascript.0.Sayit.Trigger';
var idSayVar = 'hm-rega.0.17393';
! // Definition
var idSayIt = "sayit.0.tts.text";
var lautstaerke = 100;
! // Quellen
var idWetter = "dwd.0.warning.description";
var idTemperatursensor = "hm-rpc.0.MEQ0202146.1.TEMPERATURE";
//var idGeburtstage = "javascript.0.Kalenderereignisse.heute";
var idMuell = "javascript.0.Muellereignisse.heute";
var idGeburtstage = "ical.0.data.html";
//var idMuell = "ical.2.data.html";
! function ermitteleAnsagedatum () {
//Wochentag ermitteln
var d = new Date ();
var w = new Array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");
var wochentag = w[d.getDay()];
! //Tagesdatum ermitteln
var tag = d.getDate();
! //Monat ermitteln
var month = new Array("Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");
var monat = month[d.getMonth()];
! //Jahr ermitteln
var jahr = d.getFullYear();
! //Stunde ermitteln
var stunde = d.getHours();
! //Minute ermitteln
var minute = d.getMinutes();return { // zurückgeben 'Jahr' : jahr, 'Monat' : monat, 'Tag' : tag, 'Wochentag' : wochentag, 'Stunde' : stunde, 'Minute' : minute };
}
! function ermitteleWetter () { // Wetterbedingungen
var wetterdaten = getState(idWetter).val;
log('Wetter: ' + wetterdaten);
return(wetterdaten);
}
! function ermitteleAnsageTemperatur () {
// Die Außentemperatur ist xx. Das Wetter heute ist xx
// Einfache Temperaturansage mit SayIt.
// Variante 1 mittels splitten der Temperatur, damit die Ansage nicht
// "Es sind 18 Punkt 2 Grad " sagt.
! var temperatursensor = getState(idTemperatursensor).val;
var temp_string = temperatursensor.toString();
log('Temp ' + temp_string);
var temp_array = [];
temp_array = temp_string.split(".");
! // Fange leere Nachkommastellen ab. Das passiert, wenn die Temperatur z. B. 18.0 ist.
// Es wird dann nur "18" gelesen.
if (!temp_array[1]) {
temp_array[1] = "0";
log("Die Nach-Kommastelle in temp_array[1] war nicht vorhanden und wird nun fest auf 0 gesetzt.");
}
return{
'Ganzzahl' : temp_array[0],
'Nachkommazahl' : temp_array[1]
};
}
! function ermitteleGeburtstage () {
var geburtstage = getState(idGeburtstage).val;
log(geburtstage);
return (geburtstage);
}
! function ermitteleMuell () {
var muell = getState(idMuell).val;
log(muell);
return (muell);
}
! // ###################################
// Trigger für Ansage
// ###################################
! on(idSayVar, function (data) {var ansagetext = "Guten Morgen, heute ist " + ermitteleAnsagedatum().Wochentag + " der " + ermitteleAnsagedatum().Tag + "te " + ermitteleAnsagedatum().Monat + ' ' + ermitteleAnsagedatum().Jahr + ". Es ist" + ermitteleAnsagedatum().Stunde + " Uhr und " + ermitteleAnsagedatum().Minute + " Minuten." + " Die Aussentemperatur beträgt " + ermitteleAnsageTemperatur().Ganzzahl + "," + ermitteleAnsageTemperatur().Nachkommazahl + " Grad." + " Wetter Bedingungen," + ermitteleWetter() +" .";
// ####################################################
// Wenn Geburtstag dann mit ansagen
// ####################################################
var geburtstage2 = getState(idGeburtstage).val;
if (geburtstage2.length > 2) { // wenn der Inhalt des Objektes "idGeburtstage" weniger als 2 Zeichen lang ist (also praktisch leer), dann ...
ansagetext = ansagetext + "Nicht vergessen, " + ermitteleGeburtstage() +" .";
}// ####################################################
// Wenn Müll dann mit ansagen
// ####################################################
var muell2 = getState(idMuell).val;
if (muell2.length > 2) { // wenn der Inhalt des Objektes "idMuell" weniger als 2 Zeichen lang ist (also praktisch leer), dann ...
ansagetext = ansagetext + "Achtung, heute ist Abholung " + ermitteleMuell() +" .";
}!
log('Trigger: ' + data.state.val);
if (data.state.val === true) {
setState(idSayIt, lautstaerke + ";" + ansagetext); // hier also ("40;Guten Morgen ...")
}
});
! /* Kalenderevent auswerten ----> nur Geburtstage
! sucht im iCal Adapter nach events (heute)
auf Anfrage von Skorpil im Forum erstellt.
http://forum.iobroker.de/viewtopic.php?f=21&t=2347&p=20627&sid=524f9dda2f313d3cbb183941df61fc38#p20627
! 27.02.2016 erstellt von Pix
02.03.2016 Anpassung und Aufbereitung für Sprachausgabe
21.07.2016 Umbau auf Müll Kalender
*/
! //Datum als String ermitteln;
function ermitteleDatum() {
var d= new Date();//Tagesdatum ermitteln var day = new Array("00","01","02","03","04","05","06","07","06","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31"); var t = day[d.getDate().toString()];
! //Monat ermitteln
var month = new Array("01","02","03","04","05","06","07","08","09","10","11","12");
var m = month[d.getMonth().toString()];
! //Jahr ermitteln
var j = d.getFullYear().toString();var datum= t+"."+m+"."+j+" "; //log("datum: " + datum); return (datum);
}
! createState('Kalenderereignisse.heute', '', {
name: 'Events von heute',
type: 'string'
});
! var idListe = 'Kalenderereignisse.heute';
! function pruefeKalender() {
var inhalt = getState('ical.0.data.table').val;
var heute = ermitteleDatum();
try{
var ereignisse = JSON.stringify(inhalt, null, 2); // Ausgabe als String
log(ereignisse);
var ereignisheute = '', // Liste (kommasepariert)
ereignisheute_zeilen = ''; // Liste (mit Zeilenumbruch, zB für Anzeige in VIS)
for(var i = 0; i <inhalt.length; i++)/{/alle/events/durchgehen/if/(/(inhalt[i].date.indexof(heute)/!="-1)" ||/(inhalt[i].date.indexof('heute')/)/strings/datum/oder/relatives/(nicht/nicht)/gefunden/var/ereignis="inhalt[i].event;" komma/im/namen/ersetzen="">0) ? ', ' : '';
ereignisheute = ereignisheute + komma + ereignis;
}
}
// Aufbereitung für die Ansage (falls vorhanden, wird letztes Komma durch und ersetzt)
var lastkomma = ereignisheute.lastIndexOf(','); // letztes Komma in der Reihe
if (lastkomma != -1) {
var vorn = ereignisheute.slice(0,lastkomma-1);
var hinten = ereignisheute.slice(lastkomma+1, ereignisheute.length);
ereignisheute = vorn + ' und' + hinten;
}
// Ende Aufbereitung für die AnsagesetState(idListe, ereignisheute); log('Geburtstage: ' + ereignisheute); } catch (fehler_try) { log('Fehler beim Kalenderevent einlesen ' + fehler_try); }
}
! // neuer Teil für Müllkalender
createState('Muellereignisse.heute', '', {
name: 'Müll-Events von heute',
type: 'string'
});
! var idListe2 = "Muellereignisse.heute";
! function pruefeKalender2() {
var inhalt2 = getState('ical.2.data.table').val;
var heute2 = ermitteleDatum();
try{
var ereignisse2 = JSON.stringify(inhalt2, null, 2); // Ausgabe als String
log(ereignisse2);
var ereignisheute2 = '', // Liste (kommasepariert)
ereignisheute2_zeilen = ''; // Liste (mit Zeilenumbruch, zB für Anzeige in VIS)
for(var i = 0; i <inhalt2.length; i++)/{/alle/events/durchgehen/if/(/(inhalt2[i].date.indexof(heute2)/!="-1)" ||/(inhalt2[i].date.indexof('heute')/)/strings/datum/oder/relatives/(nicht/nicht)/gefunden/var/ereignis2="inhalt2[i].event;" komma/im/namen/ersetzen="">0) ? ', ' : '';
ereignisheute2 = ereignisheute2 + komma + ereignis2;
}
}
// Aufbereitung für die Ansage (falls vorhanden, wird letztes Komma durch und ersetzt)
var lastkomma = ereignisheute2.lastIndexOf(','); // letztes Komma in der Reihe
if (lastkomma != -1) {
var vorn = ereignisheute2.slice(0,lastkomma-1);
var hinten = ereignisheute2.slice(lastkomma+1, ereignisheute2.length);
ereignisheute2 = vorn + ' und' + hinten;
}
// Ende Aufbereitung für die AnsagesetState(idListe2, ereignisheute2); log('Müll: ' + ereignisheute2); } catch (fehler_try) { log('Fehler beim Müll-Kalenderevent einlesen ' + fehler_try); }
}
! // bei Aktualisierung des Kalenders
on ({id:'ical.0.events.Geburtstag', change: 'any'}, function(data) {
pruefeKalender();
});
on ({id:/\ical.2.events.$/, change: 'any'}, function(data) { // jedes Objekt im ical.2
pruefeKalender2();
});
! //bei Skriptstart
schedule("5 0 * * *", function () {
log("===>Wird einmal am Tag ausgelöst");
pruefeKalender();
pruefeKalender2();
});</inhalt2.length;></inhalt.length;>`
! ICAL 0 = Geburtstagskalender
! ICAL 2 = Muell Kalender
! Hat jemand eventuell eine Idee woran das liegen könnte?
! Danke
! Mirko[/i][/i][/i][/i][/i][/i] -
Gerade nochmal im iobroker log geschaut, hier kommt dieser Fehler:
host.openmediavault 2016-12-21 20:32:52.051 error instance system.adapter.sayit.0 terminated with code 0 (OK) sayit.0 2016-12-21 20:32:52.046 info terminating sayit.0 2016-12-21 20:32:52.043 info stopping... TypeError: 2016-12-21 20:32:52.042 error at Timer.listOnTimeout (timers.js:92:15) TypeError: 2016-12-21 20:32:52.042 error at null._onTimeout (/opt/iobroker/node_modules/iobroker.sayit/main.js:270:13) TypeError: 2016-12-21 20:32:52.042 error at sayIt (/opt/iobroker/node_modules/iobroker.sayit/main.js:1203:9) TypeError: 2016-12-21 20:32:52.042 error at sayItGetSpeech (/opt/iobroker/node_modules/iobroker.sayit/main.js:539:9) TypeError: 2016-12-21 20:32:52.042 error at sayItGetSpeechGoogle (/opt/iobroker/node_modules/iobroker.sayit/main.js:319:16) TypeError: 2016-12-21 20:32:52.042 error at Object.socket.once.exports.get (https.js:186:21) TypeError: 2016-12-21 20:32:52.042 error at Object.socket.once.exports.request (https.js:182:15) TypeError: 2016-12-21 20:32:52.042 error at Object.exports.request (http.js:31:10) TypeError: 2016-12-21 20:32:52.042 error at new ClientRequest (_http_client.js:50:11) TypeError: 2016-12-21 20:32:52.042 error Request path contains unescaped characters. uncaught 2016-12-21 20:32:52.040 error exception: Request path contains unescaped characters. sayit.0 2016-12-21 20:32:52.036 info saying: color: red">Heute sayit.0 2016-12-21 20:32:51.033 info saying: /opt/iobroker/node_modules/iobroker.sayit/scifi.mp3 javascript.0 2016-12-21 20:32:51.027 info script.js.SayIt_Ansage_Script: setForeignState(id=sayit.0.tts.text, state="100;Guten Morgen, heute ist Mittwoch der 21te Dezember 2016\. Es ist20 Uhr und 32 Minuten. Die Aussentemperatur beträgt 5,1 javascript.0 2016-12-21 20:32:51.027 info script.js.SayIt_Ansage_Script: Trigger: true javascript.0 2016-12-21 20:32:51.027 info script.js.SayIt_Ansage_Script: getState(id=javascript.0.Muellereignisse.heute, timerId=0) => {"val":"","ack":false,"ts":1482267293799,"q":0,"from":"system.adapter.javascript.0","lc":1482267293799} javascript.0 2016-12-21 20:32:51.027 info script.js.SayIt_Ansage_Script: Heute Geburtstag Heinrich javascript.0 2016-12-21 20:32:51.027 info script.js.SayIt_Ansage_Script: getState(id=ical.0.data.html, timerId=0) => {"val":"Heute javascript.0 2016-12-21 20:32:51.027 info script.js.SayIt_Ansage_Script: getState(id=ical.0.data.html, timerId=0) => {"val":"Heute javascript.0 2016-12-21 20:32:51.027 info script.js.SayIt_Ansage_Script: Wetter: Es tritt leichter Frost zwischen 0 °C und -2 °C auf. javascript.0 2016-12-21 20:32:51.027 info script.js.SayIt_Ansage_Script: getState(id=dwd.0.warning.description, timerId=0) => {"val":"Es tritt leichter Frost zwischen 0 °C und -2 °C auf.","ack":true,"ts":1482346981410,"q":0,"from":"system.ad javascript.0 2016-12-21 20:32:51.027 info script.js.SayIt_Ansage_Script: Temp 5.1 javascript.0 2016-12-21 20:32:51.027 info script.js.SayIt_Ansage_Script: getState(id=hm-rpc.0.MEQ0202146.1.TEMPERATURE, timerId=0) => {"val":5.1,"ack":true,"ts":1482348689996,"q":0,"from":"system.adapter.hm-rpc.0","lc":1482348689996} javascript.0 2016-12-21 20:32:51.026 info script.js.SayIt_Ansage_Script: Temp 5.1 javascript.0 2016-12-21 20:32:51.026 info script.js.SayIt_Ansage_Script: getState(id=hm-rpc.0.MEQ0202146.1.TEMPERATURE, timerId=0) => {"val":5.1,"ack":true,"ts":1482348689996,"q":0,"from":"system.adapter.hm-rpc.0","lc":1482348689996} web.0 2016-12-21 20:32:40.760 info 2016-12-21T19:32:40.758Z Connected system.user.admin
Kann man die Überprüfung der Schriftfarbe im Script "ignorieren" ?
Habe im ical Adapter alles was mit Farbe zusammen hängt deaktiviert:
Trotzdem kommt im script noch dieser Fehler:
host.openmediavault 2016-12-21 20:49:52.269 error instance system.adapter.sayit.0 terminated with code 0 (OK) sayit.0 2016-12-21 20:49:52.262 info terminating sayit.0 2016-12-21 20:49:52.256 info stopping... TypeError: 2016-12-21 20:49:52.255 error at Timer.listOnTimeout (timers.js:92:15) TypeError: 2016-12-21 20:49:52.255 error at null._onTimeout (/opt/iobroker/node_modules/iobroker.sayit/main.js:270:13) TypeError: 2016-12-21 20:49:52.255 error at sayIt (/opt/iobroker/node_modules/iobroker.sayit/main.js:1203:9) TypeError: 2016-12-21 20:49:52.255 error at sayItGetSpeech (/opt/iobroker/node_modules/iobroker.sayit/main.js:539:9) TypeError: 2016-12-21 20:49:52.255 error at sayItGetSpeechGoogle (/opt/iobroker/node_modules/iobroker.sayit/main.js:319:16) TypeError: 2016-12-21 20:49:52.255 error at Object.socket.once.exports.get (https.js:186:21) TypeError: 2016-12-21 20:49:52.255 error at Object.socket.once.exports.request (https.js:182:15) TypeError: 2016-12-21 20:49:52.255 error at Object.exports.request (http.js:31:10) TypeError: 2016-12-21 20:49:52.255 error at new ClientRequest (_http_client.js:50:11) TypeError: 2016-12-21 20:49:52.255 error Request path contains unescaped characters. uncaught 2016-12-21 20:49:52.252 error exception: Request path contains unescaped characters. sayit.0 2016-12-21 20:49:52.233 info saying: color:">Heute Geburtstag Heinrich . sayit.0 2016-12-21 20:49:51.226 info saying: /opt/iobroker/node_modules/iobroker.sayit/scifi.mp3
-
Mirko,
Ich meine mich zu erinnern, dass Ivona keine langen Texte sprechen kann. Das geht nur, wenn Du angemeldet bist. Das ist, glaube ich, bzw. war kostenlos auf Ivona.com.
Zu Deiner Frage im anderen fred: die iPads müssten doch in deinem Netzwerk unterschiedliche ip's haben. Zumindest ist das bei meinen Sonos Boxen so. Für jede Sonos Box habe ich einen sayit Adapter. Und den löse ich über den entsprechenden trigger, also bewmldr aus. Das sollte auch bei Dir gehen.
Liebe Grüße
Bernd
-
Hi,
Bei Ivona habe ich mich angemeldet. Google hat das Problem mit den langen Texten.
Hier sagt der SayIt Adapter das er ein Problem mit einem Sonderzeichen hat. Ich weiß nur nicht wo das herkommt.
Kannst du mir eventuell einen Screenshot deines ICal Adapter schicken?
Nutzt du google Kalender oder einen anderen cloud Kalender?
Danke
Mirko
Gesendet von iPhone mit Tapatalk
-
Jetzt
-
Moin,
ich habe den Screenshot erhalten. Sieht im Prinzip nicht viel anders aus als bei mir.
Es klappt, zumindest für den Geburtstag.
Ich darf diese Zeilen nicht ändern !?
var idGeburtstage = "javascript.0.Kalenderereignisse.heute"; var idMuell = "javascript.0.Muellereignisse.heute";
Nur beim Muell sagt er mir noch nichts an und wenn ich zwei Geburtstage im Kalender stehen habe kommt die Ansage nur für einen. Wenn ich den Eintrag der in der Ansage kommt lösche und das script neu trigger kommt immer noch die Ansage für den gelöschten Termin.
Mirko
-
Guten Morgen, Mirko,
Ich habe ja das Skript von Jonny auf meine Bedürfnisse angepasst. Allerdings funktioniert bei mir auch die Müllansage noch nicht. Ich werde mir das heute im Laufe des Tages in Ruhe anschauen und mich dann noch einmal melden.
Liebe Grüße
Bernd
-
Hi skorpil.
Ich stelle heute noch meine Skripte incl. Screenshots (ical-Adapter config, usw) hier rein.
Bzgl. IPad und SayIt kann ich leider nicht weiterhelfen da ich selber keines habe.
Ich hoffe die Skripte und Screens können euch trotzdem weiterhelfen
Gruß
Johnny
-
Hi,
Die iPad Ansage funktioniert ja Prinzipiell.
Das ich die einzeln ansprechen kann ist erstmal nicht so wichtig.
Freue mich auf deine Infos und Skripte.
Mirko
Gesendet von iPhone mit Tapatalk