[RELEASE] Echo Speaks V4

I don't ever remember saying there would be a solution that runs entirely on the Hub.
I said I was going to try and make a new server for docker.

8 Likes

So many thanks to @steinauf, I now have Echo Speaks working in Container Station using his ARM branch of the Docker code on my QNAP NAS.

1 Like

Thanks @tonesto7 . I stand corrected. Thank you for everything you do. In your opinion, is a Hubitat hosted server even possible?

I'm starting to get these errors in my logs. I'm not sure why I am using heruko server. Everything looks fine no error messages anywhere else that I can tell. And everything is checked out.

Let me know what you think the possible problem could be. Thank you in advance for your assistance.

Hello,, Did you ever figured out how to play sound using ES in RM. If yes, I really appreciate a hint. Thank you

Hi guys, I have been trying to use the playSoundByName() in Custom Actions in RM, but nothing happens. Do any on you have a working example. I see some threads, but there are no concrete results ! Thank you in advance

Echo Speaks Server for Docker Instructions:

All, I made some basic instructions in Markdown format for getting the ES Server running on Docker for Windows or Linux an sent it over to @tonesto7. The linux instructions probably can work on other hardware as well, like a NAS. If anyone wants to make instructions for a specific NAS OS let me know and I can add it to this file.

These instructions include how to properly set the ipAddress env variable and the restart policy from the command line when creating the container.

11 Likes

When I get a chance I’ll update the Linux side with the docker-compose script for those using that or Portainer. Appreciate your write up though, it clears up a few questions that I had and fills a critical documentation gap

2 Likes

If you want to put something into MD format I can add it to my Gist, or even just a text document I can take the instructions and format them up nice into MD and add it.

I am having issues with the docker, the app keep saying it need to login but the docker is already login


My instructions I posted above address that situation at the very bottom. Please check that out and let me know if that solves it.

It also looks like you have not set the callback URL on the cookie server.

1 Like

As a user with a low level of Docker competence, I started using Portainer about a year ago. It's made a big difference in manageability of containers, especially updating them. I use it on a Synology and it is much better than the Synology Docker app. Ironically, the only thing that needs to go to a terminal session is updating Portainer itself. I highly recommend it for anyone wanting to manage more than a single container.

3 Likes

The instruction at the bottom does not fix it. The app callback url keeps getting remove after reboot of the docker.

Seems like the container is not able to save persistent data. Could try deleting the container and creating it again using my instructions. What platform are you installing it on?

I am using a truenas server

1 Like

don't you need to call out the volume path like the other variables such as ipaddress, port, restart, etc? if so i think those are missing in your docker scripts.

i know in my docker-compose script the volume is specified right there alongside the rest of that information

Not sure if that is handled in the Dockerfile where the WORKDIR is set? But it might be needed for other non-standard installs. It works without it on docker for windows and I assume for the standard docker run command as well.

I believe that is what i am missing the volume path.
Docker containers are based on immutable images. Every time you recreate or update a container it and all of the data inside gets destroyed and replaced with the image.

For persistent data you need to mount volumes or directories that live outside of the container and therefore are not affected by container itself being wiped.

1 Like

i think WORKDIR has more to do with creation of the image and the path of the app within the container, but a volume path still needs to be defined for persistent storage.

worth a shot to try at least. i dont know if the path endpoints actually matter, or just that they're called out. here's some potential modifications to your scripts:

docker run -v ./data:/es-data -e ipAddress=X.X.X.X -p 8091:8091 --name echo-speaks-server --restart=unless-stopped -d tonesto7/echo-speaks-server
docker run 
  --network host \
  --name echo-speaks-server \
  -v ./data:/es-data \
  -e ipAddress=X.X.X.X \
  --restart=unless-stopped \
  -d tonesto7/echo-speaks-server

I can tell you that with a regular docker install those are not needed, I can reboot my entire machine and the data is kept. Cannot attest to any of the other setups. If that can be confirmed to solve the issue in some cases I can certainly add it as an optional parameter with other platforms.