Jump to content
View in the app

A better way to browse. Learn more.

Universal Devices Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

MrBill

Members
  • Joined

  • Last visited

Everything posted by MrBill

  1. Agreed. But if we can't test which bit is set or which bit is not set it's not any more useful to do it bitwise ...in the other posters example in this thread count 1 - 6 is no better than bitwise... if a program didn't run, or ran multiple times in either case that's not detectable efficiently using the tools we have. it could be ineffeciently done using more variables and more programs but at that point its not worth using the variable in a bitwise manner to begin with.
  2. yea... in ISY math functions we do actually have operators bitwise OR |= and bitwise AND &= meaning we can set or clear variables bitwise. Unfortunately IF statement conditions don't include XOR or any other bitwise operators so there's no easy way to use it. I wish there was actually.
  3. This program has more triggers. specifically 3 state variables and a nodeserver data point, anytime ANY of those change the IF will be re-evaluted, during the time Range it is true. This is different that the example present above which was two programs with time ranges only, the first was 'sunset' in both and the question was which sunset will run first... the answer to that question is that its not predictable.
  4. then have one program add +1, the next add +2, the next add +4, the next add +8, the next add + 16, the last adds +32 when the total is 63 they all ran once.... oh... but that doesn't solve the problem if one of them can run 5 times ??
  5. the important thing to keep in mind.... rebooting only happens months apart in most cases... it definitely not an everyday or even every week thing.. Generally the only time I reboot is firmware update.
  6. You're correct on both counts... you need at least 1 second delay to send an email that includes a variable value that change. Also programs that "run at the same time" it's impossible to predict what order they will run in, it doesn't matter if its "run at start up", "run at sunset", or "Run at 11:00am" multiple programs with the same trigger run "all at once" and you can't guess which one will execute which first.... if order matters you have to control the order manually. Personally for "run at startup" I only have ONE program that runs at startup. When it's finished (which takes 10 minutes, mostly waiting, to finish) it runs the Then branch of another program that starts some heartbeat and does some other things and includes actually includes a couple short waits between some of the things it starts up. Why 10 minutes for my run at startup program? I have a really large insteon installation one of the things happening at startup is a 'query all' insteon... that needs to finish first, which actually happens mostly in about 4 minutes... the other part of the 10 minute value insures that in a WORST CASE SCENARIO (i.e. I'm on vacation in another part of the world and a major power outage caused even the UPS to run dry) the rest of the network (cable mode/LTE modem and router) will come up before the ISY starts trying to send me notifications. 10 minutes might be a little longer than it needs to be but I restart the ISY so rarely it doesn't matter to me.
  7. cool... I don't have the UD mobile app yet because I'm on the "other side" and missed the post about the iOS beta group until after it was already full. Programs don't run From... To... In your example, from sunset to 11: will run the THEN body at Sunset and the Else body at 11, and its considered TRUE from Sunset to 11 and FALSE otherwise. "repeats" and "waits" may keep programs running longer, but the only times that they "start" in your example is Sunset for THEN and 11 for ELSE. As for two programs that both "Start" at Sunset, you can't predict which will run first, if order matter to you add a "wait" or run one at Sunset +a few seconds.
  8. Do you know of a place to upload a clip? I don't know of anyway to upload and play such a clip on echo. I'd love to be able to, I have a 7 attention chime I'd love to use.
  9. We will have to kindly agree to disagree, which is perfectly fine, but I believe email has more points of failure: ISY > SMTP server > heuristic (spam) message filtering > IMAP/POP server > End-point Client and unless specifically configured like I did it Points 2, 3, and 4 are likely different providers ISY > Pushover API server > Apple Push Notification Server > End-point Client (admittedly I'm lacking on the android message path, I assume it's just google server instead of apple server) and for text messages: ISY > SMTP server > heuristic (spam) message filtering > SMS or MMS mail gateway > endpoint server > client. AT&T customer can attest to the fact the SMS or MMS mail gateway is a pain point. The only reasonable fail-safe method is to use multiple platforms and receive redundant messages.
  10. @DennisC It's interesting that you view email has less working parts to fail, I think it has more, the smtp server as well as the fact that at any given moment your email may suddenly be delayed or filter to junk. I've never used UDI's default mail server (I did try at first but was having delivery issues), further anyone that was using UDI's default server in the second half of 2020 experienced several long outages. That said you are correct, any method has it's potential for breakage. I actually didn't fess up above when I typed my front door notification program, I do send critical messages to my phone in multiple ways. In addition to the Network Resource it send an email that is addressed TO: the email address that sent, and the 10digitnum@mms.att.net essentially critical messages arrive on my phone 3 times, once from Pushover, once as a text message and once in a separate email client (my regular email client is silent, the second email client is just for ISY notifications). I also have a dual WAN router with an LTE modem for failover if cable dies. Really the only place without redundancy is the ISY itself, to be honest I don't think I need it either. The ISY itself has only actually stopped working and required manual intervention once in many years, and all that was needed that time was a simple reboot. But yes it's definitely important to think thru all the possible points of failure. @IT Solutions I created an email address just for the ISY to use at my isp, a gigantic cable company in philadelphia. I use that email address for NOTHING else, period. They also have an app that you can use with that account. Essentially I use the same account as BOTH the outbound smtp account and the inbound notification account. I send a few things 'email only' both FROM and TO the same email address. Others I send FROM the account and TO: that account comma 10digit@mms.att.net. and in a few cases like doors in away mode I also send via pushover..... usually I get all 3 but there are cases where one or the other or the other is missed or delayed.
  11. @IT Solutions I don't have ELK but I do use Insteon open/close or Hidden door sensors on about 19 doors (it's less security than an actual supervised alarm contact but being in a small rural town where everyone knows everyone I'm ok with that). I've added doors over time so I can't say I set it all up in 90 minutes, but If I had to redo it from scratch that's probably all it would take..... First create a network resource for every zone. Leverage the COPY button, Edit the Name of the NR, then edit the body, then Save and COPY, rinse and repeat. You can probably make 40 network resources in 40 minutes. Second create your program that sends the notification, mines pretty simple: If $Away = $cTrue and 'Front door' is switched On then Resource 'open.FrontDoor' Again, for the next zone leverage the COPY function, edit the name then the body of the program. Yep setting up 40 zones will take a few minutes. but once it's complete you won't touch the programs again.... for years!
  12. well also above, I was helping him with Pushover
  13. It should be noted that the # substitution character only works when generating an EMAIL notification, it will not work with network resources. From the Wiki: which is why I didn't point the # yesterday.
  14. Actually he wins the prize for the longest ever forum signature.... his entire setup is listed in double spaced detail! ?? But you absolutely correct there's no way to help him from the information present. Did your old ISY have one? What I'm asking is do you know how it works and the new one doesn't? or are you trying to figure out how to leverage it? what did you try? Have you tried the tutorials here: https://wiki.universal-devices.com/index.php?title=ISY-99i_Series_INSTEON:Quick_IR_Tutorial
  15. High and low temps for the day aren't hard at all, unless you want to know the exact time it occurred. If $sCurrentTemp is a state variable any program using that variable as the IF will run ANYTIME the value changes. If $sCurrentTemp > $iHighTempToday then $iHighTempToday = $sCurrentTemp else (nothing) IF $sCurrentTemp < $iLowTempToday then $iLowTempToday = $sCurrentTemp else (nothing) EDIT TO ADD: of course you need to have something set up to run at some time like 11:59 PM that does something with the values $iHighTempToday and $iHighTempToday (Save them or report them) and then reset the values to the opposing i.e. $iHighTempToday = -999 and $iHighTempToday = 999 which will be immediately replaced the next time the state variable updates as we begin working on the new days High and Low.
  16. use a longer message with a zone list. this is formatted as an email but you can do the same thing with Pushover I wouldn't use HTML with pushover tho, or you'll likely hit the 1024 character message limit. (although Pushover does allow HTML) <html> As of: ${sys.date} ${sys.time12}<br> <br> <!-- Living Room Fireplace --> ${var.2.53} <b>${sys.node.n004_1d3698bae66c5e.name}</b>&nbsp;&nbsp;&nbsp;<b>${sys.node.n004_1d3698bae66c5e.CLITEMP}</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;${sys.node.n004_1d3698bae66c5e.CLIHUM}<br> &nbsp; &nbsp;ST: <i>${sys.node.n004_1d3698bae66c5e.ST}</i>&nbsp;&nbsp;&nbsp;Battery: ${sys.node.n004_1d3698bae66c5e.BATLVL} - ${sys.node.n004_1d3698bae66c5e.CV}<br> <br> <!-- Downstairs Fireplace --> ${var.2.54} <b>${sys.node.n004_b40c6d12d303cc.name}</b>&nbsp;&nbsp;&nbsp;<b>${sys.node.n004_b40c6d12d303cc.CLITEMP}</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;${sys.node.n004_b40c6d12d303cc.CLIHUM}<br> &nbsp; &nbsp;ST: <i>${sys.node.n004_b40c6d12d303cc.ST}</i>&nbsp;&nbsp;&nbsp;Battery: ${sys.node.n004_b40c6d12d303cc.BATLVL} - ${sys.node.n004_b40c6d12d303cc.CV}<br> <br> <!-- Kitchen Refridgerator --> ${var.2.57} <b>${sys.node.n004_f48175781a6ea7.name}</b>&nbsp;&nbsp;&nbsp;<b>${sys.node.n004_f48175781a6ea7.CLITEMP}</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;${sys.node.n004_f48175781a6ea7.CLIHUM}<br> &nbsp; &nbsp;ST: <i>${sys.node.n004_f48175781a6ea7.ST}</i>&nbsp;&nbsp;&nbsp;Battery: ${sys.node.n004_f48175781a6ea7.BATLVL} - ${sys.node.n004_f48175781a6ea7.CV}<br> <br> <!-- Kitchen Freezer --> ${var.2.59} <b>${sys.node.n004_e0515ec730ae9d.name}</b>&nbsp;&nbsp;&nbsp;<b>${sys.node.n004_e0515ec730ae9d.CLITEMP}</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;${sys.node.n004_e0515ec730ae9d.CLIHUM}<br> &nbsp; &nbsp;ST: <i>${sys.node.n004_e0515ec730ae9d.ST}</i>&nbsp;&nbsp;&nbsp;Battery: ${sys.node.n004_e0515ec730ae9d.BATLVL} - ${sys.node.n004_e0515ec730ae9d.CV}<br> <br> <!-- Costco Rm Freezer --> ${var.2.60} <b>${sys.node.n004_81714ecf368989.name}</b>&nbsp;&nbsp;&nbsp;<b>${sys.node.n004_81714ecf368989.CLITEMP}</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;${sys.node.n004_81714ecf368989.CLIHUM}<br> &nbsp; &nbsp;ST: <i>${sys.node.n004_81714ecf368989.ST}</i>&nbsp;&nbsp;&nbsp;Battery: ${sys.node.n004_81714ecf368989.BATLVL} - ${sys.node.n004_81714ecf368989.CV}<br> <br> <!-- White Refridgerator --> ${var.2.61} <b>${sys.node.n004_42055297a6b0dc.name}</b>&nbsp;&nbsp;&nbsp;<b>${sys.node.n004_42055297a6b0dc.CLITEMP}</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;${sys.node.n004_42055297a6b0dc.CLIHUM}<br> &nbsp; &nbsp;ST: <i>${sys.node.n004_42055297a6b0dc.ST}</i>&nbsp;&nbsp;&nbsp;Battery: ${sys.node.n004_42055297a6b0dc.BATLVL} - ${sys.node.n004_42055297a6b0dc.CV}<br> <br> <!-- White Freezer --> ${var.2.62} <b>${sys.node.n004_644415ee9822c9.name}</b>&nbsp;&nbsp;&nbsp;<b>${sys.node.n004_644415ee9822c9.CLITEMP}</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;${sys.node.n004_644415ee9822c9.CLIHUM}<br> &nbsp; &nbsp;ST: <i>${sys.node.n004_644415ee9822c9.ST}</i>&nbsp;&nbsp;&nbsp;Battery: ${sys.node.n004_644415ee9822c9.BATLVL} - ${sys.node.n004_644415ee9822c9.CV}<br> <br> <!-- Silver Downstairs Fridge --> ${var.2.63} <b>${sys.node.n004_b6046d199db530.name}</b>&nbsp;&nbsp;&nbsp;<b>${sys.node.n004_b6046d199db530.CLITEMP}</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;${sys.node.n004_b6046d199db530.CLIHUM}<br> &nbsp; &nbsp;ST: <i>${sys.node.n004_b6046d199db530.ST}</i>&nbsp;&nbsp;&nbsp;Battery: ${sys.node.n004_b6046d199db530.BATLVL} - ${sys.node.n004_b6046d199db530.CV}<br> <br> <!-- Silver Downstairs Freezer --> ${var.2.64} <b>${sys.node.n004_ea50356d444712.name}</b>&nbsp;&nbsp;&nbsp;<b>${sys.node.n004_ea50356d444712.CLITEMP}</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;${sys.node.n004_ea50356d444712.CLIHUM}<br> &nbsp; &nbsp;ST: <i>${sys.node.n004_ea50356d444712.ST}</i>&nbsp;&nbsp;&nbsp;Battery: ${sys.node.n004_ea50356d444712.BATLVL} - ${sys.node.n004_ea50356d444712.CV}<br> <br> <!-- Plant Room --> ${var.2.56} <b>${sys.node.n004_af270204a321f3.name}</b>&nbsp;&nbsp;&nbsp;<b>${sys.node.n004_af270204a321f3.CLITEMP}</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;${sys.node.n004_af270204a321f3.CLIHUM}<br> &nbsp; &nbsp;ST: <i>${sys.node.n004_af270204a321f3.ST}</i>&nbsp;&nbsp;&nbsp;Battery: ${sys.node.n004_af270204a321f3.BATLVL} - ${sys.node.n004_af270204a321f3.CV}<br> <br> </html>
  17. check here: https://wiki.universal-devices.com/index.php?title=ISY-994i_Series:EMail_and_Networking_Substitution_Variables#Elk_Variables I don't have ELK so I can't help with specifics past that, but you include the substitution formatted like the time ${sys.time12} in other words what's in the EXAMPLE column surrounded by ${ } Scroll up on the link for other substantiations you can use.
  18. @IT Solutions Here is another you might want to try: token=<redacted>&user=<redacted>&priority=1&sound=persistent&message=**** SMOKE ALARM **** \n ${sys.time12}\n &priority=1 on iOS will issue an iOS critical alert which bypasses iOS Do Not Disturb. (I assume it work similar on Android but don't know the particulars.) and &sound let's you change from the default sound, the choices are here.
  19. to make it easy now that you've got one that works, use the copy button to make the next one and edit the name and body..... rinse and repeat anytime you need to create a new one.
  20. i just happened to see this right after you posted it, but when you are trying to use @ notifications in this forum @IT Solutions you need to select a name from the pop-up list that appears and see a bubble like this @IT Solutions in the message. first thing, double the time out to 4000ms, 96% of messages will go thru with 2000ms but you really need a bigger timeout. second I can't tell from your screenshot if you've created a valid message body. here is one of mine: token=<REDACTED>&user=<REDACTED>&message=Away mode Acivated. \n ${sys.time12}\n
  21. If the program is in a folder, you can also right click the folder and copy ALL the programs (and sub-folders, etc) from that folder for pasting. Or if you really want to copy all, go all the way to the top and click the "My Programs" folder and copy from there, then you will be pasting all your programs at once.
  22. I don't have/use google home, so this may or may not help you. I have a number of single device loads controlled by n-way switching (mostly keypad link buttons and mini remotes). When we added Alexa I went thru this same issue. Keeping the scene in sequence (on or off) and being able to DIM via Alexa seemed at first like it was impossible. I finally settled on a series of helper programs, they are detailed in this post: The first set is the hardest to set up, once you've got the concept working, you can COPY FOLDER in the ISY programming interface and then more quickly edit the copy for the next location. When I started down this road I had planned to set it up for every multi-switch dimmable scene possible. Along the way tho I realized there were only certain places (mostly all of which are table lamps or similar) that I really cared about Alexa being able to set the level, as a result there's only about 10 or 12 scenes total that I've set up for this. The rest Alexa can control as normal via the scene and there is no granular dimming via alexa... I can still walk to the wall of course and do it for a special occasion tho. Recently I set up Home Assistant as a front end to the ISY, the programs in the linked thread above got a few tweaks to extend the functionality, now for example I can control the table lamp from the keypad link buttons, Alexa or Home Assistant and the keypad link buttons stay on sync regardless of which platform controlled the lamp last.
  23. ...and that is all I would ever care about.
  24. Try using the Alexa web interface on a computer browser at https://alexa.amazon.com to clean up your devices and scenes (click "Smart Home" in the left column). Delete any that are orphaned or delete all and rediscover. I find this is much easier to do and to see what's there with the full computer browser interface... there is even a "Remove all" button at the bottom of the devices and scenes pages.
  25. I don't think it will know that until you've logged in once if you've used the add button to add. What happens when you open the admin console from the entry? (disclaimer: I didn't go clear my java cache and test what happens, but I'm pretty sure if you've manually added an ISY to finder you have to use that entry once to populate the rest of the entry)

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.