[RELEASE] Echo Speaks V4

Thanks for the info @junk7001 ! As I mentioned in a previous post, someone else had also inquired and they said they got a different answer (supposedly as they did not actually post the response from Heroku as you did). Always good to get the actual facts! Thanks.

1 Like

Theoretically if it is distributed as a docker image you could run it anywhere that supports docker - and AWS does. I donโ€™t know what tier of service is required though.

1 Like

Yes there is a free deployment

But I need help Installing the proper apps.
Echo speaks on Heroku took me awhile to get.

Thanks for the info. I have already removed one of my two instances. I am working on setting up a second container locally and try to figure out why it's so twitchy and also fix the time zone issue. That drives me crazy trying to convert time in log files. This time I will install it on docker under Synolgoy vs. a Pi.

I would love any info on installing on the Synology. Let us know how it goes!

5 Likes

I'm noticing since I have just moved to Local. Ecobee announcement is not working. I have logs without any errors.
app:36922022-09-03 01:53:14.764 pmdebugEchoApp (v4.2.0.7) | workQ active: false work items fnd: false now: 1662227594761 nextOk: 0

app:36922022-09-03 01:53:14.761 pmtraceEchoApp (v4.2.0.7) | running workQ

app:36922022-09-03 01:52:59.409 pmdebugEchoApp (v4.2.0.7) | workQ active: false work items fnd: false now: 1662227579406 nextOk: 1662227582159

app:36922022-09-03 01:52:59.406 pmtraceEchoApp (v4.2.0.7) | running workQ

app:36922022-09-03 01:52:59.402 pmtraceEchoApp (v4.2.0.7) | running finishWorkQ

app:36922022-09-03 01:52:59.177 pmdebugEchoApp (v4.2.0.7) | workQ active: true work items fnd: true now: 1662227579175 nextOk: 1662227582159

app:36922022-09-03 01:52:59.167 pmdebugEchoApp (v4.2.0.7) | workQ FINAL ms delay is 3000.0

app:36922022-09-03 01:52:59.164 pmdebugEchoApp (v4.2.0.7) | workQ ms delay is 500.0

app:36922022-09-03 01:52:59.162 pmdebugEchoApp (v4.2.0.7) | workQ adding sendAnnouncementToDevices-VolumeRestore | MultiSequence : Sequential

app:36922022-09-03 01:52:59.156 pmtraceEchoApp (v4.2.0.7) | running workQ

app:36922022-09-03 01:52:51.214 pmdebugEchoApp (v4.2.0.7) | workQ wakeup requested in 7953 msworkQ active: false work items fnd: true now: 1662227571169 nextOk: 1662227578922

app:36922022-09-03 01:52:51.168 pmtraceEchoApp (v4.2.0.7) | running workQ

app:36922022-09-03 01:52:51.165 pmtraceEchoApp (v4.2.0.7) | running finishWorkQ

app:36922022-09-03 01:52:50.942 pmdebugEchoApp (v4.2.0.7) | workQ active: true work items fnd: true now: 1662227570939 nextOk: 1662227578922

app:36922022-09-03 01:52:50.934 pmdebugEchoApp (v4.2.0.7) | workQ FINAL ms delay is 8000.0

app:36922022-09-03 01:52:50.931 pmdebugEchoApp (v4.2.0.7) | workQ found nop, processing current list

app:36922022-09-03 01:52:50.928 pmdebugEchoApp (v4.2.0.7) | workQ ms delay is 8000.0

app:36922022-09-03 01:52:50.925 pmdebugEchoApp (v4.2.0.7) | workQ adding sendAnnouncementToDevices-VolumeSet | MultiSequence : Sequential

app:36922022-09-03 01:52:50.912 pmtraceEchoApp (v4.2.0.7) | running workQ

app:36922022-09-03 01:52:50.836 pmdebugaddToQ (multi) | Command(2): [command:volume, value:70, deviceData:[deviceType:A18BI6KPKDOEI4, serialNumber:d76598409ad54881bf8bc9913a0d8d7b, owner:A1WI00BMZGNS1R, account:A3SQMSALDO4A6M, dni:3692|echoSpeaks|d76598409ad54881bf8bc9913a0d8d7b]]

app:36922022-09-03 01:52:50.833 pmdebugaddToQ (multi) | Command(1): [command:volume, value:70, deviceData:[deviceType:A18BI6KPKDOEI4, serialNumber:d76598409ad54881bf8bc9913a0d8d7b, owner:A1WI00BMZGNS1R, account:A3SQMSALDO4A6M, dni:3692|echoSpeaks|d76598409ad54881bf8bc9913a0d8d7b]]

app:36922022-09-03 01:52:50.830 pmdebugaddToQ (multi) | srcDesc: sendAnnouncementToDevices-VolumeRestore

app:36922022-09-03 01:52:50.828 pmdebugaddToQ (multi) | device: 3692|echoSpeaks|d76598409ad54881bf8bc9913a0d8d7b

app:36922022-09-03 01:52:50.783 pmdebugaddToQ (multi) | time: 1662227570719

app:36922022-09-03 01:52:50.780 pmdebugaddToQ NEW COMMAND (3)

app:36922022-09-03 01:52:50.707 pmdebugaddToQ (nop) | time: 1662227570661

app:36922022-09-03 01:52:50.704 pmdebugaddToQ NEW COMMAND (2)

app:36922022-09-03 01:52:50.654 pmdebugaddToQ (multi) | Command(3): [command:announcement_devices, value:Echo Speaks Test::This is a test of the Echo speaks announcement system!!!::[{"deviceTypeId":"A18BI6KPKDOEI4","deviceSerialNumber":"d76598409ad54881bf8bc9913a0d8d7b"},{"deviceTypeId":"A18BI6KPKDOEI4","deviceSerialNumber":"018e97ac14d74c5b863a76260935716a"}], cmdType:playAnnouncement, deviceData:[deviceType:A18BI6KPKDOEI4, serialNumber:d76598409ad54881bf8bc9913a0d8d7b, owner:A1WI00BMZGNS1R, account:A3SQMSALDO4A6M, dni:3692|echoSpeaks|d76598409ad54881bf8bc9913a0d8d7b]]

app:36922022-09-03 01:52:50.650 pmdebugaddToQ (multi) | Command(2): [command:volume, value:70, deviceData:[deviceType:A18BI6KPKDOEI4, serialNumber:d76598409ad54881bf8bc9913a0d8d7b, owner:A1WI00BMZGNS1R, account:A3SQMSALDO4A6M, dni:3692|echoSpeaks|d76598409ad54881bf8bc9913a0d8d7b]]

app:36922022-09-03 01:52:50.647 pmdebugaddToQ (multi) | Command(1): [command:volume, value:70, deviceData:[deviceType:A18BI6KPKDOEI4, serialNumber:d76598409ad54881bf8bc9913a0d8d7b, owner:A1WI00BMZGNS1R, account:A3SQMSALDO4A6M, dni:3692|echoSpeaks|d76598409ad54881bf8bc9913a0d8d7b]]

app:36922022-09-03 01:52:50.644 pmdebugaddToQ (multi) | srcDesc: sendAnnouncementToDevices-VolumeSet

app:36922022-09-03 01:52:50.641 pmdebugaddToQ (multi) | device: 3692|echoSpeaks|d76598409ad54881bf8bc9913a0d8d7b

app:36922022-09-03 01:52:50.638 pmdebugaddToQ (multi) | time: 1662227570572

app:36922022-09-03 01:52:50.635 pmdebugaddToQ NEW COMMAND (1)

app:36922022-09-03 01:52:49.344 pmtraceEchoApp (v4.2.0.7) | getDoNotDisturb

app:36922022-09-03 01:52:47.035 pmtraceEchoApp (v4.2.0.7) | healthCheck

app:36922022-09-03 01:52:06.457 pmdebugEchoApp (v4.2.0.7) | processFirebaseResponse: heartbeat Data Sent SUCCESSFULLY

app:36922022-09-03 01:52:06.454 pmtraceEchoApp (v4.2.0.7) | processFirebaseResponse(heartbeat)

The devices work fine before and NO Errors listed from them.

Note: TTS works.

Does anyone have a docker image working anwhere, PI or linux? Perhaps you could make a redacted version available?

1 Like

Add me to the authentication success after pm2 restart.

1 Like

FYI.. I think Amazon is holding up auth. If it sees you from a new device and it notifies. Wait about 15-30 Minutes that should work. They are waiting for you to confirm (by not responding) to allow that authentication happen.

Quick question and suggestion. 1) which specific post/inquiry are you responding to? 2) whenever responding to anything other than the OP at the head of the thread, please click the โ€œreply toโ€ post icon to make it easier to follow specific responses. Thanks. No disrespect at all intended as I have also forgotten to do this but with these longer threads it really helps to link responses/answers to the inquiry. Thanks, and thank you for your contributions!

I just managed to get the server running under Docker on my Pi. If people want instructions, I'd be happy to do so based on my setup. It's actually not too difficult, but the software isn't really expecting to run on Docker, so you need a few options to make sure the config stays persistent and the server software sees the correct IP.

4 Likes

Yes please, I'd be interested to find out how to solve the IP issue.
It might be worth creating a new topic for the echo speak server docker, so we can discuss it at length and keep it updated as the server is updated.

I have a synology server that can run docker. Wondering if anyone has implemented this setup to work with ES? If so, how hard/easy is it? I have zero experience with docker but learn quickly! It would be nice to get this workload local and gain a bit of experience with new things (docker, NodeJS).

2 Likes

It is very possible to share working docker images. Just remove the personal data and zip it up. That way others can get a head start.

1 Like

Docker hub would be the best place to post one of these.

https://hub.docker.com/

As an example, here is one of the best HomeBridge images:

https://hub.docker.com/r/oznu/homebridge

1 Like

I was thinking of iterating on it as a group, to come up with the best solution.

2 Likes

It's in the docker folder this script file start.sh. It does a replacment of the IP address in one of the configuration files of the node.js code. If you take a complete zip of Tony's repository:

Unzip it on a pi that has docker-compose, then go into the docker folder you will file the shell script. The docker-compose up -d will build a new container image with all the node.js stuff and start it. You should then be able to use the ip address of your pi and the right address will be sent to the Echo Speaks speaks for it's configuration.


#!/bin/bash

# I added the line below and give it the Pi's IP Address

IPADDRESS=192.168.20.251

if [[ (-z "${IPADDRESS}") ]]; then
    echo "Please set IPADDRESS environment variables"
    echo "example: IPADDRESS=192.168.1.100 ./start.sh"
    exit 1
fi

if [ $(grep -c "IPADDRESS_TO_CHANGE" env.echo-speaks-server.dist) -ne 0 ]; then
   sed "s/IPADDRESS_TO_CHANGE/$IPADDRESS/g" env.echo-speaks-server.dist > env.echo-speaks-server
fi

echo "Starting docker-compose"
docker-compose up -d

1 Like

Thanks,
I was just looking at the master branch. I wondered why the IP was not just passed in through the env like the rest of the variables.
I ended up doing a patch on master for my image.

I'll update my change to match the new node change.

-D

Excellent, I will see if I can get it going on linux

I swear you guys are very impatient!
Just relax and use the current server... we have almost 3 months!
I will have the new version ready before then

30 Likes