Echo Speaks Repeats the first statement - No idea why


#1

Hello,

I’m completely new to ST and WebCore, so far I’m loving the idea of getting Alexa to Speak when something is Triggered. This is my first Piston I created and thought I did a great job for a noob but I cant figure out with Alexa repeats the first statement “Front Door was just opened”, she doesnt repeat the second statement after waiting 10 seconds. I have 2 of my echo dots saying it which are located in the Kitchen and Living Room, they both turn on, speak statement 1 (2x) then say statement 2 (1x).

I just want them to say each statement once

Not currently home to get the ST Logs but I have the WebCore Log from last night…

( 12/12/2018, 11:33:12 PM +408ms
+1ms ╔Received event [Front Door Sensor].contact = open with a delay of 970ms
+71ms ║RunTime Analysis CS > 16ms > PS > 41ms > PE > 14ms > CE
+74ms ║Runtime (38729 bytes) successfully initialized in 41ms (v0.3.109.20181207) (71ms)
+75ms ║╔Execution stage started
+87ms ║║Comparison (string) off is_any_of (string) off,stay,away = true (2ms)
+88ms ║║Condition #1 evaluated true (9ms)
+90ms ║║Condition group #null evaluated true (state did not change) (10ms)
+99ms ║║Comparison (enum) open is (string) open = true (2ms)
+101ms ║║Cancelling condition #3's schedules...
+102ms ║║Condition #3 evaluated true (9ms)
+103ms ║║Cancelling condition #2's schedules...
+104ms ║║Condition group #2 evaluated true (state changed) (12ms)
+107ms ║║Cancelling statement #5's schedules...
+343ms ║║Executed physical command [Echo - Kitchen].setVolume([80.0]) (220ms)
+345ms ║║Executed [Echo - Kitchen].setVolume (222ms)
+388ms ║║Executed physical command [Echo - Living room].setVolume([80.0]) (40ms)
+390ms ║║Executed [Echo - Living room].setVolume (42ms)
+465ms ║║Executed physical command [Echo - Kitchen].speak([Front Door was just opened]) (70ms)
+466ms ║║Executed [Echo - Kitchen].speak (73ms)
+536ms ║║Executed physical command [Echo - Living room].speak([Front Door was just opened]) (67ms)
+537ms ║║Executed [Echo - Living room].speak (70ms)
+542ms ║║Executed virtual command [Echo - Kitchen, Echo - Living room].wait (0ms)
+543ms ║║Requesting a wake up for Wed, Dec 12 2018 @ 11:33:22 PM EST (in 10.0s)
+549ms ║╚Execution stage complete. (475ms)
+551ms ║Setting up scheduled job for Wed, Dec 12 2018 @ 11:33:22 PM EST (in 9.994s)
+560ms ╚Event processed successfully (560ms))

#2

Why are you setting the contact sensor variable at the beginning of the piston? You know you can just select multiple devices in the if portion of the piston rather than setting a variable. That would be a lot cleaner. You also don’t have the complete log. This shows that each command was executed once then the wait begins. This doesn’t show anything else. So, it shouldn’t be even doing the second announcement according to this log. Can you post the full one?


#3

Hey Ryan,

Come to think of it, I don’t remember why I set it as a Variable at the time I created it. I’m currently at work but I can recreate the log and get the full log of the complete piston run once I get home tonight.

Have you experienced Alexa repeat a statement that she was only supposed to say one time?


#4

I’m not using Alexa Speaks but a piston is a piston…if you have the logs show that it executes twice it will show you why.


#5

I’ve had issues with ES repeating statements several times. Try adding a RESETQUEUE command after the SPEAK command. That worked for me.


#6

I finally got to test it and made sure the entire piston ran… heres the log for it…

12/16/2018, 5:30:04 PM +457ms
+1ms ╔Received event [Front Door Sensor].contact = closed with a delay of 1485ms
+10186ms ║RunTime Analysis CS > 15ms > PS > 10154ms > PE > 17ms > CE
+10188ms ║Piston waited at a semaphore for 10116ms
+10190ms ║Runtime (38568 bytes) successfully initialized in 10154ms (v0.3.109.20181207) (10187ms)
+10191ms ║╔Execution stage started
+10204ms ║║Comparison (string) away is_any_of (string) off = false (2ms)
+10206ms ║║Cancelling condition #1’s schedules…
+10207ms ║║Condition #1 evaluated false (11ms)
+10209ms ║║Cancelling condition #null’s schedules…
+10210ms ║║Condition group #null evaluated false (state changed) (14ms)
+10211ms ║║Piston execution aborted due to restrictions in effect
+10220ms ║║Comparison (enum) closed is (string) open = false (2ms)
+10222ms ║║Cancelling condition #3’s schedules…
+10223ms ║║Cancelling condition #2’s schedules…
+10233ms ║╚Execution stage complete. (41ms)
+10234ms ╚Event processed successfully (10234ms)
12/16/2018, 5:30:04 PM +262ms
+1ms ╔Received event [Home].time = 1544999405615 with a delay of -1353ms
+372ms ║RunTime Analysis CS > 117ms > PS > 229ms > PE > 25ms > CE
+376ms ║Runtime (38483 bytes) successfully initialized in 229ms (v0.3.109.20181207) (373ms)
+378ms ║╔Execution stage started
+1205ms ║║Executed physical command [Echo - Kitchen].speak([Please make sure everything is okay and close the door soon]) (795ms)
+1207ms ║║Executed [Echo - Kitchen].speak (798ms)
+1468ms ║║Executed physical command [Echo - Living room].speak([Please make sure everything is okay and close the door soon]) (257ms)
+1469ms ║║Executed [Echo - Living room].speak (260ms)
+1492ms ║║Executed physical command [Echo - Kitchen].restoreLastVolume() (20ms)
+1493ms ║║Executed [Echo - Kitchen].restoreLastVolume (22ms)
+1515ms ║║Executed physical command [Echo - Living room].restoreLastVolume() (19ms)
+1517ms ║║Executed [Echo - Living room].restoreLastVolume (23ms)
+1521ms ║╚Execution stage complete. (1144ms)
+1523ms ╚Event processed successfully (1523ms)
12/16/2018, 5:29:55 PM +436ms
+1ms ╔Received event [Front Door Sensor].contact = open with a delay of 724ms
+117ms ║RunTime Analysis CS > 41ms > PS > 61ms > PE > 14ms > CE
+119ms ║Runtime (38497 bytes) successfully initialized in 61ms (v0.3.109.20181207) (117ms)
+121ms ║╔Execution stage started
+134ms ║║Comparison (string) off is_any_of (string) off = true (2ms)
+136ms ║║Cancelling condition #1’s schedules…
+138ms ║║Condition #1 evaluated true (11ms)
+139ms ║║Cancelling condition #null’s schedules…
+141ms ║║Condition group #null evaluated true (state changed) (14ms)
+150ms ║║Comparison (enum) open is (string) open = true (3ms)
+152ms ║║Cancelling condition #3’s schedules…
+154ms ║║Condition #3 evaluated true (9ms)
+155ms ║║Cancelling condition #2’s schedules…
+156ms ║║Condition group #2 evaluated true (state changed) (13ms)
+160ms ║║Cancelling statement #5’s schedules…
+176ms ║║Executed virtual command [Echo - Kitchen, Echo - Living room].wait (1ms)
+178ms ║║Requesting a wake up for Sun, Dec 16 2018 @ 5:30:05 PM EST (in 10.0s)
+184ms ║╚Execution stage complete. (64ms)
+187ms ║Setting up scheduled job for Sun, Dec 16 2018 @ 5:30:05 PM EST (in 9.993s)
+196ms ╚Event processed successfully (195ms)


#7

Awesome… I’ll give it a try and let you know how it goes. Thanks!


#8

These logs clearly show the command being issued to each device once. Try taking one of the devices out of the piston and see what happens. Does ES require you to issue the command to each device or to a group of devices? I don’t think it’s a webcore issue.


#9

I was noticing that too, that the request is only sent once to each device ever since the problem started. I even removed the variable and added each device to line 28 but was still coming up with the first statement being spoken twice.

@Mebejedi suggestion actually worked. She didnt repeat it after adding the ResetQueue command.


#10

Thanks it worked!!!


#11

That makes no sense.


#12

Having both Echo Dots set up as a variable prevent me from seeing the full list of options I can use. I wasn’t able to see “ResetQueue” having them as a variable. Once I did that and just added them to the Then, with Line 28" that option appeared on the list.

Honestly, I wonder if there’s a better Announcement smartapp out there to use instead of EchoSpeak.


#13

I have been biting my tongue on this thread… but since you asked…

This is the method that I use to make voice announcements, play sound effects, pass variables & control Alexa using webCoRE. It takes about 30 minutes to set up the first time, but from that point onwards, it is only a single character added to a piston.


#14

20-30 mins? Come on man…that’s really not realistic for the average user.


#15

Everyone in this forum started out as a beginner. Gotta learn some time. Besides, you only have to do it once.


#16

That’s what I’m saying… It would take me longer than 20 mins and I’ve used all those apps before. LOL… That’s too LOW an estimate.


#17

My walk thru focuses on step 6, (the tough step) which I can do in 12-15 minutes on a new device. The 20-30 minute estimate is fairly accurate for a newby. (if they follow the clear details in my walk thru) I guess if you count the time it takes to connect the speaker and go to the Google Play store to install the two apps you can add a few more minutes to that…

Just because I gave great detail in my walk thru, does not mean it is a complex process.

I will drop the 20 and simply say 30 minutes though if it makes you happy…


#18

LOL… I was hoping someone would give an alternative to ES (Echo Speaks). I read that post about a week ago before finding ES. the reason I didn’t go with it was because I don’t have an Android device, we’re an iOS home. I think i have an old Galaxy S4 in my storage box but not sure if it still works. If I find it and get it to work, i’ll give it a shot…

Thanks!


#19

So true! and I dont mind getting my hands dirty learning what WebCore can offer, WebCore wasnt difficult to install following the instructions on Wiki. It was the same for Echo Speaks, it’ll take time in the beginning but we’ll all get faster the more we do it.


#20

We’ll reach @WCmore expertise level eventually :slight_smile: then we wont think 20min is too low of an estimate :smiley: