UniversalDevicesInc-PG3 / udi-poly-FlumeWater

MIT License
0 stars 1 forks source link

Connection Getting Invalid Token #3

Closed SteveHoyt closed 2 years ago

SteveHoyt commented 2 years ago

Just adding this here so you will have it officially filed in the right place. Also aded to the PG3 forum.

The connection failed after many days around 7:44 this AM.

See attached log. FlumeWater_2-4-2022_83415_AM.txt

SteveHoyt commented 2 years ago

Good Morning.

Sorry if this will be a bit long, but hopefully my questions/observations will be of value for future users. I have included a variety of screen captures and todays log file if you need them.

1) I upgrade my polisy and the app...all went well and it has been running for a bit over a day now. See current versions below.

2) I randomly still see the error "connection aborted". See log file at 00:02:06, 02:54:09, 03:06:10, 04:30:11,04:46:11, and 05:06:12. I am not sure, if any info is there, to determine why they happen. Not a big deal. For my own curiosity, is the flume app querying a local API on my flume box ( like you do with the Kasa devices ) or their site? Perhaps if it does, the errors come from my Wifi network, though it is very robust with 3 hardwired access points.

3) I was confused why the app was polling data every 4 minutes, when I had the current interval set to 5 minutes. Also I could not get my GPM calculations to match what the Flume app was reporting. After this morning it now makes sense. I had to run a 1 hour cycle of sprinklers this morning and watched things as it ran. The long poll interval appears to determine when the admin console values get updated. I assumed mistakenly, it seems, that interval was also the usage since the last poll. It appears even though it polls every 4 minutes, that the actual usage reported is for the interval defined by "current interval in minutes". Is that how you intended it to work? Not sure if I missed this in the documentation or not. No problem if thats how it works, I just need to revise my programs.

4) Now a question or 2 on my programming design. I currently have a program for each circuit I want to monitor. It triggers when it sees running from the Rainmachine app. When it gets "not running" I have the necessary programming in the else statement. I was worried ( hence my comments about the query function ) that my data would not be timely. Given my understanding now of how it works, this no longer seems to be a concern, as long as the minimum run time exceeds the long poll.

5) If I were to decide, for whatever reason, to go the query sensor route in my else statement, another question comes to mind. Will my else statement pause until the node server values are updated or do I need to add a delay before I use them in my computations.

Again sorry for the length. I think I am pretty close to having it working.

Thanks Steve

Screen Shot 2022-02-17 at 8 05 27 AM Screen Shot 2022-02-16 at 8 44 30 AM

Screen Shot 2022-02-17 at 7 34 32 AM

Screen Shot 2022-02-17 at 7 34 32 AM

FlumeWater_2-17-2022_80421_AM.zip

Screen Shot 2022-02-17 at 8 10 33 AM
jimboca commented 2 years ago
  1. For my own curiosity, is the flume app querying a local API on my flume box ( like you do with the Kasa devices ) or their site?

No, there isn't a local API for flume, so this is all dependent on your LAN -> Internet -> Flume. As long as the NS is recovering from that error and continuing to work then it's not an issue. Previously we had see the NS stop working after an error.

  1. The long poll interval appears to determine when the admin console values get updated. I assumed mistakenly, it seems, that interval was also the usage since the last poll. It appears even though it polls every 4 minutes, that the actual usage reported is for the interval defined by "current interval in minutes". Is that how you intended it to work?

I was really not really sure how any of this should work, and intended to get a deeper understanding, but then my water company swapped my meter so I can't use it anymore. But yes, the longPoll determines when the NS queries flume for updates and sends those values to the ISY. Do you think I should just set the "current interval" to match the longPoll?

  1. If I were to decide, for whatever reason, to go the query sensor route in my else statement, another question comes to mind. Will my else statement pause until the node server values are updated or do I need to add a delay before I use them in my computations.

No, the else will not pause to await the new values. It's hard to say without seeing the programs, usually you would have another program that was triggered off the values updating. It would be best to post about that in the forum and get opinions for others on how to write it.

As of now, you have the most experience with using the Flume and NS, so if there are better ways to make it work I will do that as time allows.

SteveHoyt commented 2 years ago

Thank You for the quick response.

I am ok with things the way they are for now…

In fact, now that I understand it, I prefer the way it is. I just did not understand how everything worked.

I hopefully, will leave you in peace for a bit, and do some serious testing, now that the rains have not appeared and our watering season has begun.

If you ever need a test bed, I am more than willing to install a test version here.

Thanks Steve

On Feb 17, 2022, at 2:18 PM, JimBoCA @.***> wrote:

For my own curiosity, is the flume app querying a local API on my flume box ( like you do with the Kasa devices ) or their site? No, there isn't a local API for flume, so this is all dependent on your LAN -> Internet -> Flume. As long as the NS is recovering from that error and continuing to work then it's not an issue. Previously we had see the NS stop working after an error.

The long poll interval appears to determine when the admin console values get updated. I assumed mistakenly, it seems, that interval was also the usage since the last poll. It appears even though it polls every 4 minutes, that the actual usage reported is for the interval defined by "current interval in minutes". Is that how you intended it to work? I was really not really sure how any of this should work, and intended to get a deeper understanding, but then my water company swapped my meter so I can't use it anymore. But yes, the longPoll determines when the NS queries flume for updates and sends those values to the ISY. Do you think I should just set the "current interval" to match the longPoll?

If I were to decide, for whatever reason, to go the query sensor route in my else statement, another question comes to mind. Will my else statement pause until the node server values are updated or do I need to add a delay before I use them in my computations. No, the else will not pause to await the new values. It's hard to say without seeing the programs, usually you would have another program that was triggered off the values updating. It would be best to post about that in the forum and get opinions for others on how to write it.

As of now, you have the most experience with using the Flume and NS, so if there are better ways to make it work I will do that as time allows.

— Reply to this email directly, view it on GitHub https://github.com/UniversalDevicesInc-PG3/udi-poly-FlumeWater/issues/3#issuecomment-1043533990, or unsubscribe https://github.com/notifications/unsubscribe-auth/AXIJHWNU4EX3YZMUILNGWJDU3VX2LANCNFSM5NTCSYPA. Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub. You are receiving this because you authored the thread.

jimboca commented 2 years ago

Great, thanks, and if you can post info about how you are using it on the forum once it's all working that would be great.