cs3org / reva

WebDAV/gRPC/HTTP high performance server to link high level clients to storage backends
https://reva.link
Apache License 2.0
170 stars 113 forks source link

CERN: User defined notifications #2971

Open labkode opened 2 years ago

labkode commented 2 years ago

Ability to set a notification workflow for specific files/directories to trigger a mail to a specific e-group/person.

TODO(labkode): provide more info, Watcher in Dropbox

micbar commented 2 years ago

Building blocks are in place:

1) Reva emits all file related events and sends it to the nats service in ocis (on the edge branch) 2) Nats is bundled in ocis but could also be used with a dedicated system. Nats is an industry standard and needs to be scaled accordingly 3) We have an implementation in ocis for an email messaging service. That could also be a push-notifications service.

labkode commented 2 years ago

For sending mails, a dedicated service will be created that reads from the event queue and dispatches them.

@micbar can you paste here an event payload that contains for example "new file created"? I expect the payload to contain a path.

labkode commented 2 years ago

Can we have an example of a payload for a file created?

micbar commented 2 years ago

https://github.com/owncloud/ocis/blob/84d9b390a61b99c49066dc096cbf7607501cc3ee/services/audit/pkg/types/conversion.go#L245

There are some examples

labkode commented 2 years ago

We'll implement in master based on the work in edge. The big chunk of work is in the driver, so by respecting the interface of edge we'll be on the safe side when moving to edge.

micbar commented 1 year ago

@labkode What can we do here? This seems to be CERN todo.

dragotin commented 1 year ago

To update from what was discussed on the workshop in Feb. 2023, the current implemented state is:

The email text can be customized for the site using templates as in https://github.com/owncloud/ocis/tree/master/services/notifications/pkg/email/templates - just copy the templates to a custom dir, change it and point the environment variable OCIS_EMAIL_TEMPLATE_PATH to it.

Additional CERN wishes: