NEWS
SayIt Adapter tut nichts mehr
-
Systemdata Bitte Ausfüllen Hardwaresystem: Pi4. Arbeitsspeicher: 8GB Festplattenart: SSD Nodejs-Version: v18.17.1 NPM-Version: 9.6.7 Sayit: 3.0.5 Hi,
Ich habe mehrere Sayit Instanzen installiert.
Instanz 1 spuckt manchmal Meldungen aus, aber nicht mit unten gezeigtem Script.
Instanz 2 und 3 machen gar nichts mehr.Das Endgerät ist ansprechbar und gibt über den Test in der Sayit Instanz auch ein Hallo1 aus.
Hier das simpelste aller Scripte, dass ich bauen konnte:
Dieses schmeißt fröhlich im 20 sec Takt Debug Messages.
Aber obwohl der Loglevel auf Debug steht, findet sich zu dem Sayit Adapter nichts im Log. Dieses Aussprechen wird einfach nicht ausgeführt.Im Log findet sich stattdessen
sayit.2 2023-12-24 13:02:46.975 error Error on MDNS discovery: Error: getaddrinfo -3008 sayit.2 2023-12-24 13:02:46.957 error Error on MDNS discovery: Error: getaddrinfo -3008 sayit.2 2023-12-24 13:02:46.952 error Error on MDNS discovery: Error: getaddrinfo -3008 sayit.2 2023-12-24 13:02:46.924 error Error on MDNS discovery: Error: getaddrinfo -3008 sayit.2 2023-12-24 13:02:46.918 error Error on MDNS discovery: Error: getaddrinfo -3008 sayit.2 2023-12-24 13:02:46.906 error Error on MDNS discovery: Error: getaddrinfo -3008 sayit.2 2023-12-24 13:02:46.905 error Error on MDNS discovery: Error: getaddrinfo -3008 sayit.2 2023-12-24 13:02:46.884 error Error on MDNS discovery: Error: getaddrinfo -3008 sayit.2 2023-12-24 13:02:46.883 error Error on MDNS discovery: Error: getaddrinfo -3008 sayit.2 2023-12-24 13:02:46.855 error Error on MDNS discovery: Error: getaddrinfo -3008 sayit.2 2023-12-24 13:02:46.851 error Error on MDNS discovery: Error: getaddrinfo -3008 sayit.2 2023-12-24 13:00:58.177 error amixer is not available, so you may hear no audio. Install manually! sayit.2 2023-12-24 13:00:58.170 error stderr: amixer: Cannot find the given element from control default sayit.2 2023-12-24 12:55:47.617 error Cannot write file: TypeError [ERR_INVALID_ARG_TYPE]: The "data" argument must be of type string or an instance of Buffer, TypedArray, or DataView. Received an instance of Object sayit.2 2023-12-24 12:52:52.698 error Cannot write file: TypeError [ERR_INVALID_ARG_TYPE]: The "data" argument must be of type string or an instance of Buffer, TypedArray, or DataView. Received an instance of Object
Nicht verwirren lassen von der Instanznummer. Ich habe Instanz 2 schon neu installiert, aber auch eine komplett neue Instanz, um alles mögliche getestet zu haben.
Die Instanz:
Discovery und Net Tools sind installiert.
Web.0 sieht so aus
-
Ich habe zwischenzeitlich auch wieder Version 3.0.0 installiert.
-
Ich habe jeweils nach Versionswechsel die Scripte neu gespeichert wegen diesem Passus in den Release Notes: "Used sendTo instead of setState in blockly"
-
Neustart / Neuinstallation
-
Polly durch Google ersetzt
-
Mit / Ohne Caches in den Adaptern gearbeitet
Ich habe das Gefühl das JS Blockly macht nichts. Aber auch das habe ich neu gestartet und dieses registriert den Sayit Auftrag schon irgendwie:
javascript.0 2023-12-24 13:43:40.009 info script.js.General.TestSprachausgabe: Debug-Testmessage javascript.0 2023-12-24 13:43:40.008 debug script.js.General.TestSprachausgabe: Executed sayit.1: : Testmessage
-
-
Nach vielen Neustarts und Neuspeichern von Scripten und Versionswechseln läuft derzeit wieder die 3.0.0
Update: Instanz 2 hat seine Arbeit wieder eingestellt..
Ausstehendes Problem:
Der Sayit Adapter schreibt ein mp3 File, welches sich der Chromecast zur Aussprache zieht. Der Chromecast scheint aber noch ein altes File im Cache zu haben, sodass er Sprachausgaben doppelt wiedergibt und die neueste damit verwirft. Was kann man da tun?Es wird immer Test1 ausgegeben
-
@maxpd sagte in SayIt Adapter tut nichts mehr:
Was kann man da tun?
Bau Dir mal diesen Baustein ein:
sayit.0.tts.clearQueue
-
-
@thomas-braun Habe ich gemacht. Also dein Befehl selbst tut nichts außer eine Liste an Befehlen ausspucken. Evtl. war ich im falschen Ordner? Aber ich habe apt upgrade und iobroker upgrade durchgeführt. Bin weiterhin auf v18.17.1
@djmarc75 said in SayIt Adapter tut nichts mehr:
@maxpd sagte in SayIt Adapter tut nichts mehr:
Was kann man da tun?
Bau Dir mal diesen Baustein ein:
sayit.0.tts.clearQueue
Danke für den Tipp. Habe das Gefühl, das Problem liegt aber nicht in der Queue von Sayit sondern Chromecast. Würde es dennoch probieren, aber er spricht gar nichts aus, weil er im log nur timeouts wirft. Das Gerät selber ist aber mit dem Internet verbunden und antworten zügig und normal.
sayit.1 2023-12-26 11:35:18.524 error Error while checking if chromecast.0.b02a4364hg55.player.announcement finished playing announcement: {"url":"http://192.168.178.30:8082/sayit.1/tts.mp3","volume":70}: TIMEOUT sayit.1 2023-12-26 11:35:08.011 info Set "chromecast.0.b02a4364hg55.player.announcement to {"url":"http://192.168.178.30:8082/sayit.1/tts.mp3","volume":70} sayit.1 2023-12-26 11:35:07.827 info saying: Test 3 sayit.1 2023-12-26 11:35:06.719 error Cannot play file: undefined sayit.1 2023-12-26 11:35:06.718 error Error while checking if chromecast.0.b02a4364hg55.player.announcement finished playing announcement: {"url":"http://192.168.178.30:8082/sayit.1/tts.mp3","volume":70}: TIMEOUT sayit.1 2023-12-26 11:34:56.199 info Set "chromecast.0.b02a4364hg55.player.announcement to {"url":"http://192.168.178.30:8082/sayit.1/tts.mp3","volume":70} sayit.1 2023-12-26 11:34:55.935 info saying: Test 2 sayit.1 2023-12-26 11:34:54.824 error Cannot play file: undefined sayit.1 2023-12-26 11:34:54.823 error Error while checking if chromecast.0.b02a4364hg55.player.announcement finished playing announcement: {"url":"http://192.168.178.30:8082/sayit.1/tts.mp3","volume":70}: TIMEOUT sayit.1 2023-12-26 11:34:44.310 info Set "chromecast.0.b02a4364hg55.player.announcement to {"url":"http://192.168.178.30:8082/sayit.1/tts.mp3","volume":70} sayit.1 2023-12-26 11:34:44.117 info saying: Test 1 sayit.1 2023-12-26 11:34:43.007 error Cannot play file: undefined sayit.1 2023-12-26 11:34:43.006 error Error while checking if chromecast.0.b02a4364hg55.player.announcement finished playing announcement: {"url":"http://192.168.178.30:8082/sayit.1/tts.mp3","volume":70}: TIMEOUT
-
-
@thomas-braun ok, damit habe ich nodejs geupdated.
Das Problem besteht aber weiterhin. Entweder er wirft einen Timeout oder er wiederholt die alte Sprachausgabe, obwohl schon die neue abliegt und sich anhören lässt. -
Hab jetzt mal noch versucht vor jeder neuen Ansage, die alte Ansage wirklich vom System zu löschen. Dennoch wird Test 1 in Dauerschleife wiederholt. "Test 2" oder "Test 3" werden nie ausgesprochen. Die Datei ist mit diesem exec Befehl auch wirklich weg. Das habe ich geprüft.
-
Meine sayit-Adapter steigen auch ab und an aus. Wie oben bereits erwähnt, liegt es an Chromecast.
Hier hilft bei mir:
- Chromecast-Adapter stoppen
- alle Objekte des Chromecast löschen
- Chromecast-Adapter wieder starten
-
@meister-mopper ja, aber das löst nicht das Problem, dass die falsche Sprachausgabe getätigt wird. Auch nicht, wenn ich die Timeouts höher drehe und den zeitlichen Trigger weiter auseinander ziehe.