Thank you for your assistance.
I followed your instructions. Google billing and account is operational (i see billing information according to my requests with success).
After creation the rule and running it this is exception during first run (no wav files are created):
2021-11-12 17:33:01.076 [ERROR] [ce.googletts.internal.GoogleCloudAPI] - Could not write /openhab/userdata/cache/org.openhab.voice.googletts/enUSStandardA_33c9e5af4e05b6de0e942a019aa586d5.wav to cache
java.io.IOException: java.util.concurrent.ExecutionException: java.io.EOFException: HttpConnectionOverHTTP@1243140::DecryptedEndPoint@124c5fa{l=/172.17.0.4:41086,r=texttospeech.googleapis.com/172.217.16.42:443,OPEN,fill=-,flush=-,to=529239/0}
at org.openhab.core.io.net.http.HttpUtil.executeUrlAndGetReponse(HttpUtil.java:260) ~[?:?]
at org.openhab.core.io.net.http.HttpUtil.executeUrl(HttpUtil.java:155) ~[?:?]
at org.openhab.core.io.net.http.HttpUtil.executeUrl(HttpUtil.java:130) ~[?:?]
at org.openhab.core.io.net.http.HttpRequestBuilder.getContentAsString(HttpRequestBuilder.java:135) ~[?:?]
at org.openhab.voice.googletts.internal.GoogleCloudAPI.synthesizeSpeechByGoogle(GoogleCloudAPI.java:425) ~[?:?]
at org.openhab.voice.googletts.internal.GoogleCloudAPI.synthesizeSpeech(GoogleCloudAPI.java:334) ~[?:?]
at org.openhab.voice.googletts.internal.GoogleTTSService.synthesize(GoogleTTSService.java:331) ~[?:?]
at org.openhab.core.voice.internal.VoiceManagerImpl.say(VoiceManagerImpl.java:223) ~[?:?]
at org.openhab.core.automation.module.media.internal.SayActionHandler.execute(SayActionHandler.java:60) ~[?:?]
at org.openhab.core.automation.internal.RuleEngineImpl.executeActions(RuleEngineImpl.java:1183) ~[?:?]
at org.openhab.core.automation.internal.RuleEngineImpl.runNow(RuleEngineImpl.java:1035) ~[?:?]
at org.openhab.core.automation.internal.RuleEngineImpl.runNow(RuleEngineImpl.java:1051) ~[?:?]
at org.openhab.core.automation.rest.internal.RuleResource.runNow(RuleResource.java:327) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:179) ~[bundleFile:3.4.3]
....
Caused by: java.util.concurrent.ExecutionException: java.io.EOFException: HttpConnectionOverHTTP@1243140::DecryptedEndPoint@124c5fa{l=/172.17.0.4:41086,r=texttospeech.googleapis.com/172.217.16.42:443,OPEN,fill=-,flush=-,to=529239/0}
at org.eclipse.jetty.client.util.FutureResponseListener.getResult(FutureResponseListener.java:118) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.util.FutureResponseListener.get(FutureResponseListener.java:101) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.HttpRequest.send(HttpRequest.java:730) ~[bundleFile:9.4.40.v20210413]
at org.openhab.core.io.net.http.HttpUtil.executeUrlAndGetReponse(HttpUtil.java:251) ~[?:?]
... 68 more
Caused by: java.io.EOFException: HttpConnectionOverHTTP@1243140::DecryptedEndPoint@124c5fa{l=/172.17.0.4:41086,r=texttospeech.googleapis.com/172.217.16.42:443,OPEN,fill=-,flush=-,to=529239/0}
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.earlyEOF(HttpReceiverOverHTTP.java:376) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:1614) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.shutdown(HttpReceiverOverHTTP.java:259) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.process(HttpReceiverOverHTTP.java:181) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.receive(HttpReceiverOverHTTP.java:79) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.http.HttpChannelOverHTTP.receive(HttpChannelOverHTTP.java:131) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.http.HttpConnectionOverHTTP.onFillable(HttpConnectionOverHTTP.java:169) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.onFillable(SslConnection.java:540) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:395) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.ssl.SslConnection$2.succeeded(SslConnection.java:161) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) ~[bundleFile:9.4.40.v20210413]
... 3 more
2021-11-12 17:33:01.157 [WARN ] [core.voice.internal.VoiceManagerImpl] - Error saying 'Hello Google': Could not read from Google Cloud TTS Service
org.openhab.core.voice.TTSException: Could not read from Google Cloud TTS Service
at org.openhab.voice.googletts.internal.GoogleTTSService.synthesize(GoogleTTSService.java:333) ~[?:?]
at org.openhab.core.voice.internal.VoiceManagerImpl.say(VoiceManagerImpl.java:223) ~[?:?]
at org.openhab.core.automation.module.media.internal.SayActionHandler.execute(SayActionHandler.java:60) ~[?:?]
at org.openhab.core.automation.internal.RuleEngineImpl.executeActions(RuleEngineImpl.java:1183) ~[?:?]
at org.openhab.core.automation.internal.RuleEngineImpl.runNow(RuleEngineImpl.java:1035) ~[?:?]
at org.openhab.core.automation.internal.RuleEngineImpl.runNow(RuleEngineImpl.java:1051) ~[?:?]
at org.openhab.core.automation.rest.internal.RuleResource.runNow(RuleResource.java:327) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:179) ~[bundleFile:3.4.3]
at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) ~[bundleFile:3.4.3]
Caused by: java.util.concurrent.ExecutionException: java.io.EOFException: HttpConnectionOverHTTP@1243140::DecryptedEndPoint@124c5fa{l=/172.17.0.4:41086,r=texttospeech.googleapis.com/172.217.16.42:443,OPEN,fill=-,flush=-,to=529239/0}
at org.eclipse.jetty.client.util.FutureResponseListener.getResult(FutureResponseListener.java:118) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.util.FutureResponseListener.get(FutureResponseListener.java:101) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.HttpRequest.send(HttpRequest.java:730) ~[bundleFile:9.4.40.v20210413]
at org.openhab.core.io.net.http.HttpUtil.executeUrlAndGetReponse(HttpUtil.java:251) ~[?:?]
... 68 more
Caused by: java.io.EOFException: HttpConnectionOverHTTP@1243140::DecryptedEndPoint@124c5fa{l=/172.17.0.4:41086,r=texttospeech.googleapis.com/172.217.16.42:443,OPEN,fill=-,flush=-,to=529239/0}
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.earlyEOF(HttpReceiverOverHTTP.java:376) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:1614) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.shutdown(HttpReceiverOverHTTP.java:259) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.process(HttpReceiverOverHTTP.java:181) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.receive(HttpReceiverOverHTTP.java:79) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.http.HttpChannelOverHTTP.receive(HttpChannelOverHTTP.java:131) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.client.http.HttpConnectionOverHTTP.onFillable(HttpConnectionOverHTTP.java:169) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.onFillable(SslConnection.java:540) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:395) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.ssl.SslConnection$2.succeeded(SslConnection.java:161) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) ~[bundleFile:9.4.40.v20210413]
at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) ~[bundleFile:9.4.40.v20210413]
... 3 more
2021-11-12 17:33:01.157 [WARN ] [core.voice.internal.VoiceManagerImpl] - Error saying 'Hello Google': Could not read from Google Cloud TTS Service
org.openhab.core.voice.TTSException: Could not read from Google Cloud TTS Service
at org.openhab.voice.googletts.internal.GoogleTTSService.synthesize(GoogleTTSService.java:333) ~[?:?]
at org.openhab.core.voice.internal.VoiceManagerImpl.say(VoiceManagerImpl.java:223) ~[?:?]
at org.openhab.core.automation.module.media.internal.SayActionHandler.execute(SayActionHandler.java:60) ~[?:?]
at org.openhab.core.automation.internal.RuleEngineImpl.executeActions(RuleEngineImpl.java:1183) ~[?:?]
at org.openhab.core.automation.internal.RuleEngineImpl.runNow(RuleEngineImpl.java:1035) ~[?:?]
at org.openhab.core.automation.internal.RuleEngineImpl.runNow(RuleEngineImpl.java:1051) ~[?:?]
at org.openhab.core.automation.rest.internal.RuleResource.runNow(RuleResource.java:327) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:179) ~[bundleFile:3.4.3]
at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) ~[bundleFile:3.4.3]
Next runs don’t produce errors in openhab.log. Files are generated now:
pi@raspberrypi:/opt/openhab/userdata/cache/org.openhab.voice.googletts $ ls -la
total 68
drwxrwxrwx 2 openhab openhab 4096 Nov 12 17:48 .
drwxr-xr-x 5 openhab openhab 4096 Nov 10 18:44 ..
-rw-r--r-- 1 openhab openhab 106 Nov 12 17:48 enUSStandardA_33c9e5af4e05b6de0e942a019aa586d5.txt
-rw-r--r-- 1 openhab openhab 53804 Nov 12 17:48 enUSStandardA_33c9e5af4e05b6de0e942a019aa586d5.wav
I’ve checked OpenHAB container ip address:
pi@raspberrypi:~ $ sudo docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 0c1a7d63850e
172.17.0.4
So it looks, that OpenHAB in docker container has problems with connectivity/cross-connectivity. But a little bit strange is, that file is finally donwloaded, but still cannot be sent to chromecast device.