Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Popup from trigger
#1
How do I create a popup for something like caller id from a new call trigger? I don't see anyway in the event trigger for invoking a popup or interface.
HAI OmniProII, CQC, GC-100,2 CAV6.6,Denon 2308ci, PDP5080
Reply
#2
There's no direct way to do this. There are MANY complications involved in that. What you can do is have the trigger set a global variable. You can then set a timeout on the base template which will wake up every few seconds and look and see if that variable is set. If so, it can do a popup (after resetting the global variable, otherwise you are going to just keep popping them up until the viewer dies, one of the many complications of such things.)

Nothing will happen if another popup is up. It will wait until you get back to the base template again, since only the topmost template gets the timeouts.
Dean Roddey
Explorans limites defectum
Reply
#3
Dean Roddey Wrote:You can then set a timeout on the base template which will wake up every few seconds and look and see if that variable is set.
Dean, could I get some guidance on this? Would like to invoke a popup based on an trigger and dismiss after some period of time.
Reply
#4
There's still no really good scheme for doing this. It's still has as many gotchas as always and I've not addressed them. One option is to not use a popup, but put an overlay there but set it to initially hidden. If you want to always be able to see it, make sure it's somewhere that no popup will cover because it's in the base template and will not come up over any popup.

Set up an event handler in the base template that will show that overlay when the correct trigger comes in. Start a timeout in the base template when that happens (and if you get another one while it's visible, this will reset it again effectively so that you start the timer over, so it will time out X minutes after the last trigger that occurred.) When the timer expires, hide the overlay again.
Dean Roddey
Explorans limites defectum
Reply
#5
Dean Roddey Wrote:There's still no really good scheme for doing this. It's still has as many gotchas as always and I've not addressed them. One option is to not use a popup, but put an overlay there but set it to initially hidden. If you want to always be able to see it, make sure it's somewhere that no popup will cover because it's in the base template and will not come up over any popup.

Set up an event handler in the base template that will show that overlay when the correct trigger comes in. Start a timeout in the base template when that happens (and if you get another one while it's visible, this will reset it again effectively so that you start the timer over, so it will time out X minutes after the last trigger that occurred.) When the timer expires, hide the overlay again.

OK, thank you, will give this a try. I started down this path but was having trouble as I would also like a Close button in addition to the timer and that was easy with the popup.
Reply
#6
I'm sure it's obvious but I'm having trouble with the hide/show overlay issue using this method. My overlay is full screen and I need a button which hides it and shows the original template. Doesn't seem to be an action available to select.

With a popup, i could make a button calling InterfaceViewer(Exit) which closes the popup and then the original template is visible.
Reply
#7
You are never closing it, just hiding it. So you'd use the standard command that all widgets support to set the state (hidden, disabled, visible.) I think it's SetWidgetState().
Dean Roddey
Explorans limites defectum
Reply
#8
I went down this path a few years ago with the same roadblocks.

The way I got around it was to use a variable in the variable driver and a field animated image that is then placed within an overlay on every page. States are used to hide it when an alarm is not active. When something happens that needs my attention the var driver field is set to true, and the overlay is then visible with a flashing icon. There is a command button over the top of the image that then pops up the overlay with the alarm information.

Pressing exit changes the variable field to false to hide the alarm icon.

very convoluted but it works.

Mick
Mykel Koblenz
Illawarra Smart Home
Reply
#9
Some strategies you could use with that would be:

1. Use the logic server to condense a number of fields you care about into a single Boolean field. So if any of them meet the criteria, the field goes true. If you already have a single field in a driver that provides the hide/show state, then use that. But if you have multiples, this could simplify things.

2. Then setup the hide/show state to use the logic server field to hide/show the overlay.


This would be simpler than the event driven operation if there are multiple fields since all of the work is basically done for you to create the composite Boolean state and to hide/show the overlay. However, it will go away as soon as the controlling field changes state back, i.e. you can't leave it up for some period of time even after the situation has changed.
Dean Roddey
Explorans limites defectum
Reply
#10
I'm not having great luck so let me give a few more details.

The goal is motion in driveway brings up a full screen overlay containing a Static Web Image updating every couple of seconds. The screen is mounted on a wall and it would be nice to not to have to walk over to it and press a command button if I'm on the sofa for example (hence the full screen mode, it's ~12 feet away).

It should then auto hide after some set amount of time and go back to the template.

I'm adding this to the auto gen template called Overlay_Main_Tiles. I created an additional tile containing a command button so I can test using that this button and it does launch the web widget overlay. My overlay template with the web image also contains a command button to hide it manually in case I'm standing there and want to dismiss it before the time expiration.

Right now my overlay is acting more an an underlay with the 6 tiles on top.

That's as far as I've been able to go. This took a few minutes using the popup except for the issue described above (invoking via an event).

Mark
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Trigger on Russound F1 button xlurkr 6 2,022 06-01-2020, 01:17 PM
Last Post: Dean Roddey
  Train HTTP Trigger Driver jkmonroe 24 15,349 10-25-2016, 11:55 AM
Last Post: karenlee
  trigger on motion end jkmonroe 5 3,742 12-29-2015, 01:18 PM
Last Post: jkmonroe
  Generic socket trigger mappings? dlmorgan999 2 2,303 06-17-2015, 04:58 PM
Last Post: dlmorgan999
  Help setting up GeoFancy & HTTP Trigger driver Sendero 10 6,142 04-20-2015, 11:08 AM
Last Post: bbrendon
  HTTP Trigger Driver EST 5 4,111 08-01-2013, 05:59 AM
Last Post: EST
  HAI Omni trigger types ControlFreak 13 5,296 06-18-2013, 11:01 PM
Last Post: Dean Roddey
  popup moves image over ellisr63 3 2,566 06-04-2013, 12:24 PM
Last Post: Dean Roddey
  ELK-M1KP2 popup template? rbroders 3 3,832 09-25-2011, 08:31 PM
Last Post: rbroders
  Popup + Variable Question ShockValue 2 2,033 02-10-2010, 07:40 AM
Last Post: ShockValue

Forum Jump:


Users browsing this thread: 1 Guest(s)