eMail send Service

Hi,

The following question is not really related to Nethserver, but might be understood somehow as a feature request as well as a call for know how / experience

I am looking for a simple tool which allows me to send recurrent email, e.g. reminders, to specific users on a weekly, monthly or annual basis. I do not want to run this on a separate client. Furthermore, I prefer to run such a service on the (Neth-) server (centos). Of course, such service should be handled as simple as possible, preferable from within the NS-cockpit :slight_smile:

What is the problem I would like to solve with this? Quite simple. The company of my wife changed its provision of payment slips from surface mail to “download from the intranet”. Now I would like to remind my wife (and from 2023 myself) on each end of every month to download and send it to our document management system.

I think an appropriate workaround is to use the crontab management tool provided by stephdl. Yes, this will work, but I will have to write a little script for each email to be sent - I would like to have a more handy tool. But any other alternative service running on CentOS is welcome.

TIA
Thorsten

I’d say the simplest way is the script with Cron job but does their intranet have an api

Might be able to set a script to auto retrieve the slips and upload them to the Document management system

As for a script for use with Cron tab

Create a file with the contents of reminder
Then create a script

#!/bin/bash
cat /path/to/file | mail -s "your subject" your@email.com

Then have it run on your schedule with Cron tab

1 Like

Doesn’t webtop, roundcube (with some plugin) or nextcloud (calendar, mail…) have this feature?

What could be even better (but maybe more difficult to implement) would be some kind of automation that downloads the file for you. Something like zapier, n8n.io, beehive, huginn…

Edit: Sorry, I missed the Intranet part, if those automation systems do not have Intranet access a notification like you request could be good enough.

Do not know if some command line mail client can do this too.

2 Likes

I was just thinking for the simplest thing but I keep forgetting roundcube has plugins but my point about api would be a scripted version of your zapier etc suggestion since he said about not wanting additional things

@thorsten do you know what service they would be using and is it an implementation of existing software or custom built

I think with that info we might be able to think of an automated solution as there’s a few ways to do email reminders but if it could keep doing what your currently doing (I’m assuming here that you run an email rule that auto copies email attachment at the moment to your document management system) that would be what I’d do

1 Like

Sogo and Nextcloud with calendar app can send mail reminders out of the box.

2 Likes

Hi @Shane_Treweek

Then create a script

Yes, correct, that would exactly work. The advantage would be that I may use the contrab module by stephdl, but I would have to create a separate file per eMail.

1 Like

Hi @mrmarkuz ,

yes, I know that would work, but It would have two alternative disadvanages:
Either I would need to schedule other users tasks in my calendar or I would need to have access to another user’s calendar (aka login). Both is not really nice.

In order to get it to send the email end of every month unless you set 1 to every 28 Days you would make 1 script called 3 times by cron in the dash board it should look something like this
28dayremindercron
30daycron
31dayremindercron

As for the file you want to send (ie the email) that would depend on how you want it to appear and how complex it could be a simple txt file which says download payslip
or complex as html file that auto updates the time and date in the email adds a background and has a link to log in to your intra net

2 Likes

@Shane_Treweek

You hit exactly the point! 25 years I go, I had a letterbox outside my house and every letter arrived in there, nowhere else! Nowadays, very company requires you to log in their site and download the letters.

Each month, I will need to log in at least 5-10 websites to download phone/internet invoices, payment slips, account slips, insurance invoices… They do not even provide a notification by email. I really hate this systems. Meaningful, but a hindrance to implement an automated download, are 2FA systems.

I would be glad if regulatory authorities would enforce the companies to provide such documents as (encrypted) email.

Anyway, no change to complain about here - I try to find a solution.

  1. I use ecoDMS [www.ecodms.de] as a document management system.
  2. I implemented an automated system to most regular invoices as long as it is provided as a pdf by email from an allowed sender to a specific address within my NS domain.
  3. Now I need to get the users and companies to send the pdfs … which is easy in some cases, possible an other cases and impossible in cases of insurances and banks.

I agree but if the software they use has an api it wouldnt mater what they offered you could have a script that connect to there end grab the file in any format and convert to pdf and upload into your document system i could help you get a script together but obviously sometimes companies dont allow access to the api but if there using a prebuilt program they might not no how to but there might be a generic way to do it

But almost all erp systems have api

@Shane_Treweek

I know, but go to your bank front desk and ask the clerk at the counter to provide API documentation … Please try the same on the hotline of your insurance … :name_badge:

Those people will not even understand what you are asking for - “AP-what???” will be their likely answer. Even if you get an ICT person - you will not have the smallest change …

That proposal is for sure valid and would be the most sophisticated solution - but absolutely impossible.

2 Likes

Did you try to save the cron job? I used

echo “text” | mail -s “subject” my@email.com

it failed the validation. I would proceed so, If that would be possible from within the crontab manager, but obviously it does not allow connected commands. I would propose

/path/to/myscript.sh

with a script per email - but again - I am looking for something “more handy”.

no sorry i didnt save it as it would need to be customised but your right about the cmd it should be /path/to/myscript.sh sorry for that as for the authentication that would depend on how you setup your email (ie user pass user@email.tld pass or sso) my bad i should have explained

update i did test the script

made test.sh containing
#!/bin/bash cat ~/email.txt | mail -s "This is a Test" shane@ksatdesign.com.au

chmod +x test.sh

email.txt contains
This is a test hope it works

ran script ./test.sh

it ran successfully and i got the email

so set the cronjob to
31cemail
to run the end of every month with 31 days

1 Like

what do you want to have happen let me know and I can try to come up with something that suites if it’s automation of data that can be handled in the script and can be made to send one email to you and a separate one to your wife in the same script

1 Like

Yes, this is exactly how I would solve it if there would be no other solution “with an individual web interface”

@Shane_Treweek thank you for your offer, this is so kind. I think, I will have may different scripts as this will have different time schedules, but maybe if I may send you a proposal to countercheck - my scripting abilities are not the best :slight_smile:

1 Like

no problem I’m happy to go over and test your scripting feel free to pm me the script if you dont want it public

AFAIK for calendars an owner can give permission to other users to ‘manage’ a calendar. Either read only, but in your case, with full write/edit permissions.
Then you only have to use the caldav location to access the calendar and you can manage the calendar for those users. Works like a charm with SOGo.

/edit: Oh, you needed to do this for email… I do think you can also set permissions for a mailbox… but need to dive into that on how that works…
found this: [SOGo] Delegate user's mailbox