Command "Execute Piston ....." not working


#1

1) Give a description of the problem
I have two Smartthings Hubs (1 at my home and another at my holiday home). Both are registered on the same Smartthings account (each with its own location) and I have 2 instances of webCoRE, one for each hub.
I have always been able to execute a piston (Secondary Piston) located in the Holiday webCoRE instance, from within a piston (Main Pistion) located in the Home webCoRE instance.
I wanted to do the same with new pistons I have been adding over the last few days. When I, however, tested the Main Piston, the Secondary Piston is ignored. I have changed the execute command in the Main Piston to another (Secondary) Piston and changed it back, but that did not help.
The only puzzling thing I noticed is that after I had initially added the command to execute the Secondary Piston, the details of the latter disappeared after saving the Main Piston. When I tried to re-add the Secondary Piston’s details to the execute command, all the pistons of the Holiday Home Hub were missing from the drop-down list. I closed my browser and when I re-opened it, I had to re-add the second instance of webCoRE (for the holiday home hub). After doing that, the pistons of both hubs were again available in the drop-down list of the “execute piston” command.

Any help would be much appreciated.

2) What is the expected behavior?
The piston of the second instance of webCoRE should be executed by a piston of the first instance.

3) What is happening/not happening?
Secondary Piston fails to execute.

4) Post a Green Snapshot of the pistonimage

5) Attach any logs (From ST IDE and by turning logging level to Full)

2018/01/07, 09:02:35 +437ms
+0ms 	╔Received event [Home].time = 1515308556174 with a delay of -737ms
+258ms 	║RunTime Analysis CS > 24ms > PS > 154ms > PE > 79ms > CE
+262ms 	║Runtime (55093 bytes) successfully initialized in 154ms (v0.2.101.20171227) (261ms)
+263ms 	║╔Execution stage started
+289ms 	║║Cancelling statement #107's schedules...
+333ms 	║║Executed physical command [Shut Down Reebok House].off() (41ms)
+334ms 	║║Executed [Shut Down Reebok House].off (43ms)
+337ms 	║║Cancelling statement #62's schedules...
+361ms 	║║Calculating (string) 9:02 + (string) on >> (string) 9:02 on
+365ms 	║║Calculating (string) 9:02 on + (string) Sunday >> (string) 9:02 on Sunday
+370ms 	║║Calculating (string) 9:02 on Sunday + (string) ( >> (string) 9:02 on Sunday (
+374ms 	║║Calculating (string) 9:02 on Sunday ( + (string) 2018 >> (string) 9:02 on Sunday (2018
+378ms 	║║Calculating (string) 9:02 on Sunday (2018 + (string) / >> (string) 9:02 on Sunday (2018/
+381ms 	║║Calculating (string) 9:02 on Sunday (2018/ + (string) 1 >> (string) 9:02 on Sunday (2018/1
+384ms 	║║Calculating (string) 9:02 on Sunday (2018/1 + (string) / >> (string) 9:02 on Sunday (2018/1/
+387ms 	║║Calculating (string) 9:02 on Sunday (2018/1/ + (string) 7 >> (string) 9:02 on Sunday (2018/1/7
+390ms 	║║Calculating (string) 9:02 on Sunday (2018/1/7 + (string) ) >> (string) 9:02 on Sunday (2018/1/7)
+395ms 	║║Calculating (string) Turned Holiday Home Devices Off at + (string) 9:02 on Sunday (2018/1/7) >> (string) Turned Holiday Home Devices Off at 9:02 on Sunday (2018/1/7)
+398ms 	║║Calculating (string) Turned Holiday Home Devices Off at 9:02 on Sunday (2018/1/7) + (string)
+424ms 	║║Executed virtual command sendPushNotification (21ms)
+440ms 	║║Calculating (string) 9:02 + (string) on >> (string) 9:02 on
+445ms 	║║Calculating (string) 9:02 on + (string) Sunday >> (string) 9:02 on Sunday
+449ms 	║║Calculating (string) 9:02 on Sunday + (string) ( >> (string) 9:02 on Sunday (
+453ms 	║║Calculating (string) 9:02 on Sunday ( + (string) 2018 >> (string) 9:02 on Sunday (2018
+457ms 	║║Calculating (string) 9:02 on Sunday (2018 + (string) / >> (string) 9:02 on Sunday (2018/
+460ms 	║║Calculating (string) 9:02 on Sunday (2018/ + (string) 1 >> (string) 9:02 on Sunday (2018/1
+463ms 	║║Calculating (string) 9:02 on Sunday (2018/1 + (string) / >> (string) 9:02 on Sunday (2018/1/
+466ms 	║║Calculating (string) 9:02 on Sunday (2018/1/ + (string) 7 >> (string) 9:02 on Sunday (2018/1/7
+469ms 	║║Calculating (string) 9:02 on Sunday (2018/1/7 + (string) ) >> (string) 9:02 on Sunday (2018/1/7)
+474ms 	║║Calculating (string) Turned Holiday Home Devices Off at + (string) 9:02 on Sunday (2018/1/7) >> (string) Turned Holiday Home Devices Off at 9:02 on Sunday (2018/1/7)
+476ms 	║║Calculating (string) Turned Holiday Home Devices Off at 9:02 on Sunday (2018/1/7) + (string) >> (string) Turned Holiday Home Devices Off at 9:02 on Sunday (2018/1/7)
+479ms 	║║Executed virtual command setState (1ms)
+482ms 	║║Cancelling statement #101's schedules...
+487ms 	║║Executed virtual command [Reebok Internet & SmartThings].wait (0ms)
+488ms 	║║Requesting a wake up for Sun, Jan 7 2018 @ 9:04:35 AM SAST (in 120.0s)
+493ms 	║╚Execution stage complete. (231ms)
+495ms 	║Setting up scheduled job for Sun, Jan 7 2018 @ 9:04:35 AM SAST (in 119.995s)
+503ms 	╚Event processed successfully (503ms)

Can you use webCoRE to call a secondary ST hub?
#2

I’m having the same problem and was thinking of opening a post on this. When Robin said this was possible I immediately did a very simple piston, if contact opens, execute piston on other hub, but it doesn’t! So I’m back to using tasker and Sharptools. Hopefully someone will chime in.


#3

Another report here… something has changed:


#4

This does work, using the url method I suggested earlier. I just threw this together and it worked for me. This is what I have done in the past. You can pass variables this way as arguments.

The first is in my home hub

The second is on my Cabin hub.

Hope this helps


#5

@Gopack2 Can you elaborate please on how to do this? i need 2 pistons, one on each hub to execute a third desired piston on my main hub?


#6

Whatever piston you want to execute you need to get the url for that piston. You get that by clicking on the external url link Save that. And paste it into the piston you are using to tell that piston to execute.

The above example shows that I ran the on piston that is making the webrequest to trigger the other one that is sending the notification.

If you use this structure you should be able to do what you are looking for.


#7

This is what i have so far, i’m completely befuddled.


Trouble activating a piston on a different hub
#8

Try changing from json to form


#9

I just changed my original piston to use an if statement and it seems to work on my end. As well


#10

No, this is the piston i’m trying to trigger, here are the logs, but it doesn’t execute.

08/01/2018, 14:08:06 +52ms
+1ms ╔Received event [Home].execute = 52.213.77.15 with a delay of 140ms
+202ms ║Runtime (42204 bytes) successfully initialized in 73ms (v0.2.101.20171227) (200ms)
+203ms ║╔Execution stage started
+216ms ║╚Execution stage complete. (12ms)
+217ms ╚Event processed successfully (217ms)


Trouble activating a piston on a different hub
#11

It looks like it’s not triggering because the switch 34 is not changing to on. Executing a piston won’t turn that switch on. Try just removing the if. and make it an action statement. See if that does what you need

Sorry for delay. I’m working, on lunch now.


#12

I tried taking the switch out of the piston but it still wouldn’t execute unfortunately. But I did create another simple piston to turn a light on and using your method that worked across the two hubs. So it does work, it’s just it doesn’t like that piston for some strange reason.


Trouble activating a piston on a different hub
#13

Thank you @Gopack2. I really need this to work, so I’m pleased to see your solution. It would, however, be great to learn why the other method is not working anymore. And if there is a reason why the function has been removed. I’m worried that your suggested solution, might also be removed, in which case I’ll be seriously stuck.