Android/IOS/Windows Notifications

I have no idea whether or not this would be easy or difficult to incorporate into the Duplicati backend, but there’s an open-source program called Apprise that allows notifications to be sent to basically every notification service in existence, e.g. Pushbullet, Join, Windows 10, etc. Here’s the link: GitHub - caronc/apprise: Apprise - Push Notifications that work with just about every platform!

I don’t know about others, but I would love an error-only notification popping up on my phone or wherever rather than an email at the end of a run. If it’s possible to incorporate this program or something like it, I think it would be a great addition to Duplicati.

I don’t know how easy it is either, but there’s no lack of high priority work that might delay the feature addition.
Meanwhile though, https://www.duplicati-monitoring.com/ is seeking feedback, possibly even features like this.

In general, Duplicati has been providing raw output, then other contributors have been making it more useful.

Easier to read backup reports or weekly summarization

Client-side agent and centralized management / dashboardAnnouncing dupReport - A Duplicati Email Report Summary Generator

Remote Management for Duplicati

Announcing dupReport - A Duplicati Email Report Summary Generator

dupReport is interesting because it’s Python, like the tool you mention.

Let me send mentions to @crazy4chrissi and @handyguy (any others?) in case the idea fits their software.

This is interesting. I took a quick look at the apprise docs and I think I get what it’s trying to do. The question I have for @mobamoba is how you see this integrating into the Duplicati process cycle?

Let’s assume that the Duplicati dev team is neck-deep in feature requests, so this is likely not something that will make it into the development stream any time soon. So that leaves an “after-job” script in Duplicati or 3rd party tools like Duplicati Monitoring or dupReport to pick it up. Both of these tools are fed by Duplicati end-of-job result outputs, so neither will give you real-time job failure/error notifications as the backups are happening. Duplicati Monitoring may be able to trigger a notification once it gets the output from Duplicati, dupReport (a more batch-like process) will have to wait until the tool is run before it can send out a notification.

So are you looking for:

  1. a notification in real time as the backup job is running (Duplicati feature enhancement)?
  2. a notification that comes as soon as the job completes (after-job script or Duplicati Monitoring enhancement)
  3. a notification at some time after the job is run without having to check your email first (a dupReport enhancement)?

I may have missed a couple of options, but I’m trying to better understand the use case.

HG

I’m looking for 2 and 3 on your list. I far prefer notifications for this kind of thing to email in part because of inbox clutter but also in part because I think we’ve all gotten used to having dismissable notifications popup on our phones or other devices. I guess in the way that text messaging has replaced email in many instances, so have device notifications replaced it as well, especially for pure information-only output like Duplicati post-job reporting.

To me the enhancement is that email seems - dare I say :slight_smile: - clunky and old-fashioned relative to popup notifications and if there’s a way to glue Duplicati post-job reporting to Apprise or something similar, it would give users an additional way to check on the state of their backups.

So the next fair question would be, what would be in the notification? As a popup/toolbar notice it can’t be very wordy. Should it be any error messages seen? Just the fact that an error occurred? UI/UX would be very important here. I suppose giving the user a way of configuring the message would be nice, but very complicated to program properly. It took me multiple tries just to get the configurable email subject for dupReport to work properly :roll_eyes:

Well the way Apprise works is it passes along a subject and a message body so I’d say something a la, “Duplicati [JOB NAME] completed [JOB RESULT] at [COMPLETION TIME]” as subject and body would be “All good” or somesuch in the event of success and “Error [LOG RESULT]” or something somewhat helpful from the log in the event of an error. Though frankly just an error notification where I have to check the log myself would, I think, be pretty good for starters.

I’ll add this as an issue/feature request in dupReport. I found a bug recently I need to address and I’ll look into this while I’m in the code. Have some other projects I need to finish up, so It may be a couple of weeks before I can get to it.

Great thanks! Happy to beta it if you need testers.

If you keep an eye on this thread in the Duplicati Forum, that’s were I usually announce new test code and version releases.

@mobamoba, I just uploaded a new version (2.2.3) to the dupReport pre_prod branch in GitHub. It includes Apprise support as you requested. The README file has also been updated explaining how to use Apprise from within dupReport. When you get a chance please check it out and let me know how it works.

HG

Great thanks! I’m trying to test it. However, DupReport won’t run with just an Apprise section and a deleted incoming/outgoing email section - or at least I can’t figure out how to do that. It throws an error about not being able to reach the server (because I didn’t put one in); then, if I delete the sections entirely, it re-adds the incoming/outgoing back to the rc. How do I disable the email so I’m only getting Apprise updates since I don’t need both? Thanks.

Hmm… Interesting. I never thought about not needing email servers if you’re using an alternate messaging service, but that does make a lot of sense.

That’s why developers shouldn’t test their own code :wink:

You will always need an incoming email server because dR needs to know where the Duplicati result emails are located. However, I suppose that it you’re using Apprise for notification you wouldn’t need an outgoing email server.

The -x option suppresses sending outgoing emails, but I believe -x is processed later in the code after the .rc file is processed and missing sections are replaced.

Please open an issue on the GitHub site and I can take a look at how to address this problem.

indeed, it would be great if duplicati could just call up a webhook offered by an external notification service, pass the gist of the status message and be done with it. No complicated UI and whatnot necessary, just refer the notification recipient to the existing web UI if more details are needed.