neothematrix / noip-renew

Auto renew (confirm) noip.com free hosts
https://hub.docker.com/r/moebiuss/noip-renew
Apache License 2.0
54 stars 20 forks source link

Correct Calculation of Expiry Date When Confirm Days Provided #7

Closed peterchs closed 2 years ago

peterchs commented 2 years ago

Correct Calculation of Expiry Date When Confirm Days Provided - used when setting up appropriate crontab for next run.

Discussed at https://github.com/loblab/noip-renew/issues/90

peterchs commented 2 years ago

In retrospect this is based on assumption that the tooltip message "Confirm in X days" is the days until the start of the confirm period rather than the end. I'm monitoring my hosts and will know in a few days if that assumption is correct or not. I'd wait until I can firm up that assumption before merging this PR.

Angel0ffDeath commented 2 years ago

@peteakalad I have the same suspects like you but the only way is to monitor regularly what happens. Unfortunately I renew my host few days ago and will have an answer around Xmas... The other possibility is just to run the script each 4 days from renewal date and to forget about this...

neothematrix commented 2 years ago

I need to test this, we definitely need to compare the labels and fix the regex instead of searching for "Confirm" after because I'm sure the different xpath I had to use are because the button on the webpage appears different

peterchs commented 2 years ago

Yes agree, ought to look for specific string rather than just pull any \d+ from the element.

Will close this PR then.

Angel0ffDeath commented 2 years ago

@peteakalad Look at my new PR about Login - The idea is to find it first by ID (which is unique)... The code probably can help you to find better solution, but if not - will deal with this in the next days, when have time. Just monitor your host(s) and remaining days (it seems you are closer to expiration from everybody else) to be sure calculations are correct.

peterchs commented 2 years ago

To confirm my previous expectation that 'confirm days' was to the start of the confirm period was wrong, its days to the expiry date as the code already expects i.e. current logic is good.

Adding logging I noted one of my hosts tooltips/button changed from/to over period of 1 day as it became 'confirmable': Confirm in 8 days Expires in 7 days

Will look at that other PR comment there.