Making voice announcements & controlling Amazon Alexa Echo


#21

Ahhh… That’s the missing piece to the puzzle…
This website is for webCoRE … not CoRE.
(as are all the instructions on this page)
Both programs are by @ady624, but webCoRE is much more powerful.

The two programs can both be installed at the same time without issue, but once you delve into webCoRE, you will likely not look back.

The install is a bit strange for most folks, but there is a good step-by-step here:
https://wiki.webcore.co/GitHub_Install

You might be able to get Alexa working with CoRE, but as I do not use that program anymore, I wouldn’t be able to help much… My experience with CoRE is very limited because I switched over to webCoRE shortly afterwards.


#22

I bought Tasker once, and it lets me install it on any device I own.
(I admit, Tasker is one of the first programs I put on ALL my Android devices)

But for the sake of this document, it is only required for the one device left at home connected to your speaker.


#23

I went back and removed the smartapp and reinstalled WebCoRE from scratch. This time, I did it correctly. I was able to register my WebCoRE dashboard, which I couldn’t do before. I created my one line Push Notification piston and each time I press test, the notification appears, which is great! But Tasker still did not say or do anything.

I have given up on Tasker as I realized that my Samsung R1 speaker can be used in WebCoRE to give voice prompts and other things, so I am going to use that instead of Tasker.

Thanks for all of your responses and feedback!!!


#24

Sorry I didn’t catch this sooner. For simple voice alerts, Tasker might not be needed if you already have a WiFi speaker. Keep in mind though that without Tasker, I think you’ll be giving up the following features:

  • Playing sound effects as an alert
  • Visual alerts on the tablet
  • Writing data to text file or spreadsheet
  • Being able to respond back to webCoRE with a new command
  • Control the dialect, pitch and sex of the voice

(ie: My smart-house alerts me in a female Australian voice, and my weather alerts are spoken in a male British voice… All thanks to Tasker)

If you can live without those features, then sending a direct command is likely best.

If you change your mind and decide to try Tasker again later, just say the word…


#25

I spent a few hours yesterday bringing about 50 of my Spotify playlists into webCoRE.
Now, I can trigger any of them at any time thanks to webCoRE! :sunglasses:


As an added bonus, I have found a great workaround to the old shuffle issue.

Normally, Spotify will remember if shuffle was on or off, and continue a new session with the previous setting. This is good, but there is one problem:

Spotify will begin each playlist at the first track, and does not shuffle the tracks until that first song is over…

This means if you play this playlist a few times, you will quickly get tired of track #1.

In the past, I would start a playlist, and then immediately skip to the next track, but I have come up with a better (hands-free) solution. We can put a really short and silent track in the #1 position. This way, you will never hear it, and when it shuffles a few seconds later, it will always be to a different track.

To implement this yourselves, simply copy the following line to clipboard:

spotify:track:5XSKC4d0y0DfcGbvDOiL93

Then in the desktop version of Spotify:

  • Load your playlist
  • Single click on the first track
  • Ctrl-V (to paste)
  • Drag the silent track to the top slot
  • Repeat the above steps in your other playlists

Now, when Alexa hears, “shuffle David Grisman playlist”, you will always get fresh songs right from the start!

It is a shame Spotify cannot shuffle right off the bat, but this workaround works very well in the meantime.


NOTE :
The shortest silent track I could find is 11 seconds long.
If anyone finds one even shorter, please share it here…


#26

Where do you adjust the volume?


#27

I can change the volume on my phone or on my Speaker.

Normally, I tend to keep this old Android device at full volume, and just change the volumes on my external speakers.


#28

The volume on my phone S8 plus does not adjust the volume when Tasker is talking


#29

I am going to repost my earlier suggestions to you…
(If you choose to ignore them again, you are on your own)


You may need to edit the Task in Tasker.
Specifically, edit the “Say” command. Notice under “Stream” you have 6 choices. (Call, System, Ringer, Media, Alarm, Notification) I believe you can choose any of them, but keep in mind on Android, they each have a separate volume control.


Your particular phone may not have all 6 volume controls, so you might want to check your phone’s capabilities before tweaking that line in Tasker.

temp


NOTE :
You will likely have to follow BOTH of these suggestions to correct your volume…


#30

With the new integration between Alexa and sensors there’s so many more possibilities for notifications. I’ve got an Alexa routine that announces when people are home based on webCoRE presence sensors. Tied the presence sensors to simulated contact sensors so present equals open and in Alexa I’ve got routine so if Contact Sensor changes to open then announce “[person’s name] is home”.


#31

I’ve seen that new capability, but as far as I know, Alexa does not allow for variables in the voice announcement. (which means you have to make a simulated switch for EACH phrase you want announced) This also means that you could never have her read the inside temperature without creating 20 Simulated Switches. (one for each and every degree)

Did they improve her capabilities beyond this?

As far as I know, Alexa cannot announce a line like this with 5 different variables:
“The time is 4:00 P.M. It’s 79 degrees and Partly Cloudy outdoors.
Tonight’s low is 50 degrees. It is a comfortable 73 degrees inside.”

This is why I created this page as a workaround. I want my speaker to announce more than a predetermined sentence.


#32

I gave my example specifically because it’s similar to this part of your original post

As far as temperatures go - you can query multi sensors for the temperature.


#33

Ahh ok, thanks for clarifying.

I tried to give simple examples in this thread, but in real life, my voice announcements are fairly robust. I have over 50 complex phrases that are spoken outloud (in a thousand different ways if we count the variables).

I will continue to use my webCoRE to Tasker method until Alexa no longer has that limitation.
(Your method might suffice if I only had a few canned responses)


There is no way I could make a SimSwitch for each spoken phrase…

With the current Alexa, the 5 variables in this ONE phrase:

The time is 4:00 P.M . It’s 79 degrees and Partly Cloudy outdoors.
Tonight’s low is 50 degrees. It is a comfortable 73 degrees inside.

would require over one billion SimSwitches to cover all possible announcements!!!
(1440 x 68 x 20 x 38 x 14 = 1,041,868,800)

I think I prefer just adding one character (®) to my code as described in my original post… :sunglasses:


#34

So I want to make sure I am understanding how this works … you MUST have the always powered android device AND the connected speaker to get the Android device to make the initial announcement or request to the Echo, right? What’s the point of the Echo then?

I have 4 Echos throughout my home. I’d like to have a piston that has all of them make the same push announcement, so no matter where I am in the house, I will hear it. Is this possible with this setup? Better yet, is there a way to push the announcement directly to the Echo’s from the piston and eliminate the intermediary devices?


#35

This entire thread is essentially broken up into two parts:


To make an announcement (as complex as you want)

If this is all you need, the Echo is optional. It only requires the Android and one speaker. That speaker can be any speaker connected via Bluetooth or 3.5mm jack. (Mine is going to my Echo Show via Bluetooth, but you can even use a 25 year old speaker, as long as it has a 3.5mm jack)

All ‘®’ notifications will be piped thru the Android and that connected speaker.


To make webCoRE actually control Echo 100%

This method requires two speakers. One regular speaker to ‘speak’ (like just mentioned) and an Echo speaker nearby to ‘listen’ to the command and act upon it.


I was tempted to make two different threads for the two scenarios, but for anyone taking the time to connect the Android to a speaker via Tasker, will GREATLY benefit from having an Echo device nearby. (so both steps have been somewhat combined in this thread)


If you are using the two speaker setup mentioned above, you can use this method for that.
Simply make the webCoRE request something like:
Send PUSH notification "® Alexa, broadcast 'The time is '$time'. The weather is 'currentWeather' and there is a 'rainChance'% chance of rain today'"
Adding the word ‘broadcast’ after Alexa will push that entire phrase (with variables) to ALL of your Echo devices. Also, using the ‘broadcast’ makes a tiny chime before it is spoken out loud on the Echos, which is kind of nice.


Unfortunately, Amazon has not opened up their API in that way. (which is why I created this workaround) Even if they do open it up in the future, you can bet there will be lots of limitations. My methods described in my first post here have ZERO limitations. Any and all commands & skills will work just as if you had spoken the command yourself.

For the record, once the Android and Tasker is setup, it requires only ONE CHARACTER added to our piston to create a spoken phrase or to control Alexa. The entire trip from webCoRE to Android to Speaker is usually under a second. (before my door is fully opened, I hear her alert)


#36

It’s tempting to try it … buy a Dot and put it somewhere out of the way in the house so the command isn’t annoying. I don’t have an extra android device right now but I imagine that wouldn’t be hard to find on ebay etc. Just curious, why do you need the external speaker to speak the command to the Echo? Isn’t the phone speaker loud enough?


#37

I thought about installing mine in a closet, but then I realized that many times, I only wanted the spoken announcement (or Alexa Skill) going to one device, so I changed my direction.

For example:
Send PUSH notification "® Alexa, play Santana on Spotify"
(will play Santana on the ONE speaker)

If you add the word ‘broadcast’ to the above command like this:
Send PUSH notification "® Alexa, broadcast play Santana on Spotify"
(it will make all your speakers say the phrase, “play Santana on Spotify”, which is useless)

In other words, ‘broadcast’ is great for personalized alerts or notifications that go to all Echos… but you do not want to use ‘broadcast’ with any commands for Echo. (since the Echos cannot speak & listen at the same time)

If you place your Echo in a closet, you are limiting yourself to ONLY using the ‘broadcast’ features.

If your phone’s speakers are decent and kept close at high volume, it might not be needed. Although a $20 set of computer speakers would be better than that in my opinion.


#38

If you already have 4 Echos, I would not recommend buying another just for this project. Surely you already have one near your favorite spot in the house…

And, for what it’s worth, I helped a friend set this up and he decided to use his one and only cell phone instead of an additional Android. When he is out of the house, his cell will only speak URGENT alerts. When he is home, they are ALL spoken. We moved his phone’s charging cable right next to his Echo, so he just plugs it in when he gets home like normal.

(this method requires a bit extra programming in Tasker though so only the IMPORTANT alerts get spoken out loud when he is at work etc. Originally, we simply told Tasker to read NOTHING when he is not home, and the code was simpler)


#39

What announcements are you looking to make? I’ve got my Echo devices making several of them now that sensors are included in routines in Alexa. You’ll need to get creative and use lots of virtual devices, but it can be done. Don’t need external DLNA speakers or multiple Echo devices - just webCoRE and Alexa.

Here’s a sample of what I’ve got going on. I’m using simulated contact sensors and pistons saying if SHM is armed then open simulated contact sensor and if disarmed close it. Then in Alexa I’ve got a routine that says if said contact sensor opens then she will announce “SHM is armed” and if it closes then she announces “SHM is disarmed”. You can do this with anything from presence sensors to switches, etc. I’ve even got welcome home messages setup. Next I’m going to use the smart weather tile for creating verbal weather announcements for when it snows.


#40

So either:

  • You keep announcements simple & generic, or
  • You create a ton of Simulated Sensors
    (which has to be connected and programmed in both webCoRE and Alexa)
  • Or, you follow the suggestions on this page and add a single character to get as complex as you want.

Basically, my method requires a half hour to set it up, but NO time for any future additions.

Your method requires ST SimDevice to be created, webCoRE has to be told to connect to the new device, webCoRE programming has to be done to flip the new switch, Alexa discovery must be run, and Alexa Routine has to be programmed. All 5 of those steps have to be done for each and every phrase you want spoken.

And you are STILL limited in the spoken phrases…
(ie, when my alarm is set, I get a voice alert confirming, but it also tells me the rain percentage over the next 6 hours. Your method could never do that without creating 100 Simulated Sensors)

All methods are feasible, but this page is focusing on infinite advanced announcements with one character added in webCoRE.

Please do not take offense to this rebuttal. If I only had a half dozen phrases that never changed, I may have done the same as you.


And for clarification, this thread does NOT require a DLNA speaker. (a speaker from 1980 would work perfectly)… You do NOT need an Echo to hear the customized announcements… The exception is, if you want to send a command to an Echo, then you will need ONE Echo nearby.