-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Notification of IP changes and errors #532
Comments
@alipay404 Thanks for the feedback. You can set up Healthchecks and put the ping URL into |
Thanks |
How do I get an IP change |
@alipay404 The current design does not notify you of IP changes because that's not an "error." (It's working as expected.) Let me re-open this issue because you seem to be requesting a new feature. |
@alipay404 Hi, because you are asking for a new feature, I wonder if you could possibly provide more details. In particular, when do you want to receive notifications and what should be the messages? If you have seen this feature in another product, I can take a look. tl;dr: I need more details. |
@alipay404 I checked GoDNS and they only mentioned "IP changes". Do you also want to get notifications when something's wrong (e.g., when the updater fails to get the public IP)? Also, do you have a preference between webhooks (you specify the URL and the content) and something like shoutrrr (which might increase the image size but offers direct support of many services)? It is not difficult to implement any of these but I want to implement something that addresses your need (if I choose to implement it after checking the technical detail). 😀 @bartclone if you are willing, any input will be helpful to move this issue forward. Thanks! |
Sure. A IP change could have effects, that an user wants to be notified of. |
@bartclone Thanks for the feedback. Do you want to get notifications when something went wrong (e.g., not being able to get the IP)? PS: I would like to check how large the images would be after linking shoutrrr. |
Maybe introduce a debug level 1-6, to control which messages are sent out?
|
@bartclone Thanks for the suggestion. The internal logging system already has levels. However, the logs are only optimized for the terminal view and are imperfect for notifications. (E.g., some messages are intentionally split into multiple lines, but they should be sent as one message to, say, Discord, and the Healthchecks pinning uses a different format.) To have the best UI/UX, I believe one would have to manually adjust messages for different targets. I also want a clean configuration interface where every option should ideally have a reasonable meaning independent of other options. I'm worried that it is not immediately clear whether the log level should also affect the messages sent to Healthchecks and the terminal (and maybe replace the option Anyways, to confirm, I believe you don't expect to receive notifications other than (1) IP changes and (2) all kinds of "errors". Is that correct? It might take me a while to go through all the errors the updater is reporting right now, but technically I don't think supporting this is difficult other than the size bloat due to the shoutrrr library. (I also welcome PRs but usually I implemented something before someone did it.) |
@bartclone Sorry for the slow progress. Do you think you will ever need to notify multiple targets? |
@alipay404 @bartclone I played with |
Sorry for the late reply, holidays kicked in ;). |
@bartclone I admit that it's more like an intellectual exercise for me to create the smallest but maintainable DDNS updater with all the features I like. This project was my way of learning Go. I'd like to think through the alternatives---last time I managed to save some bits and improve usability by handcrafting my own parser. In any case, I suppose you don't need the updater to notify multiple places. Is that correct? |
@bartclone I think I'm about to give up finding alternative designs. There are two things to decide and one major difficulty to worry about. The two things are:
The major difficulty is that this feature would take me a while (if I want to add all the test cases and whatnot). |
Or maybe just use the ability to a use the API of Apprise. Using an external service like Apprise (or maybe Shoutrrr?) would limit your codebase. On loglevels, see https://sematext.com/blog/logging-levels/
|
@bartclone Thank you!
|
Unfortunately it is difficult for me to spend enough time on this issue in this semester. PRs are welcome. It is not inherently hard to integrate shoutrrr, just lots of testing and checking. I will leave this issue open at least for now. Sorry about this. |
Update: for people who want to track my (slow) progress, you can subscribe to #632. Otherwise, I will just close this issue when I feel the feature is ready for broader audience. 😁 |
@obstrux @bartclone Progress report: I have implemented experimental support of shoutrrr but right now it has bugs: strangely, messages cannot be sent to pushover. If you feel adventurous, you could use |
Update: the bug was fixed! However, only the failure to detect IP addresses or update DNS records is currently notified. I'm working on other errors: |
This is done now, pending updates on documentation. |
🎉 The new feature was released with 1.12.0. Please try it out! |
Ex. Email
The text was updated successfully, but these errors were encountered: