Design Draft: Node Status Emails From Satellite

Hey all, we want to change how we’re sending emails to SNOs. Check it out

https://review.dev.storj.io/plugins/gitiles/storj/storj/+/refs/changes/53/8353/3/docs/blueprints/satellite-node-emails.md

5 Likes

Just to be sure. Do you know the effort necessary to avoid emails being not just marked as spam, but instantly blackholed by major email account providers?

Regarding «send an email at the time an event occurs», this would be fine for me, but also increases chances of emails being blackholed. If someone operates more than one node, they might be getting many emails, and getting many emails very quickly is one of the things mail account providers don’t like. Given you seem to be set on implementing a chore for offline emails, maybe implementing some simple form of aggregation by email address and a chore to periodically send aggregated events wouldn’t be much more work?

Instead of «Rather, it is the lack of an event, namely the node successfully checking in with the satellite.», maybe it would be easier for you to consider an audit not being able to access the node as the event? Would save the effort of implementing a chore.

I’d also wish for an event like Node degrading triggered, let say, every time node’s reputation crosses some predefined threshold downwards (maybe ¼ towards disqualification), to serve as an early warning before the node is disqualified.

I’d also suggest four more events: node’s first successful check-in after setup, node’s vetting being finished, node’s crossing 9 months (and hence no more profits being held) and 16 months (held-out being paid). The first would serve as a simple one-time test whether email notifications work for a new operator. All would additionally provide some psychological token of success to the operator. All of them could be triggered on check-ins.

7 Likes

Check-in happened every hour by default. Too many emails

      --contact.interval duration                                how frequently the node contact chore should run
(default 1h0m0s)
2 Likes