Provides an "email in" solution for the Nextcloud Deck app
 
 
 
Go to file
Lucian Pricop 6987d50db7
Merge pull request #7 from bpehrs11/Fix-DeckClass-PHP_Curl-Issues
More explicitly handle the HTTP request methods with PHP cURL
2022-01-03 14:23:37 +02:00
attachments some changes. 2019-12-13 20:22:40 +02:00
lib Merge pull request #7 from bpehrs11/Fix-DeckClass-PHP_Curl-Issues 2022-01-03 14:23:37 +02:00
README.md Update README.md 2019-12-20 13:36:24 +02:00
config.php edit config.php 2019-12-19 16:42:18 +02:00
index.php some changes 2019-12-19 16:37:42 +02:00

README.md

mail2deck

Provides an "email in" solution for the Nextcloud Deck app

A. For users

Retains the following:

  1. Email subject is the card title, and email body is the card description!
  2. You can add even attachments to the email and they will be transposed as attachments of the card.
  3. mail2deck doesn't add stacks (for now), so you must to have at least one stack on the board you want to add the cards.

To have the feature as your email to be transformed in a Deck card you have to follow some easy steps.

1) Deck Bot needs to be assigned as a user of the board that you want to add the cards.

The card will be assigned to the Deck Bot. In case you aren't the board owner or you haven't rights to add users to the board, we consider that mail2deck for that board is disabled.

2) Send the email.

You have two posibilities to choose the board that you want to add the card:

1) Set the board in the email subject

We interprate that is mail subject: mail subject b-'personalBoard'
You can use single or double quotes, and the word from inside the quotes has to be exactly the board name. For the stack you can use: mail subject b-'personalBoard' s-'important stuff' or not, because the default stack is the left one.

2) Set the board in the email address

For that, we have to introduce you the structure of the email address.
The email address is composed like: incoming+boardname@server.domain, and string between the plus (+) and the at (@) needs to be exactly the board name that you want to add the card.

B. For NextCloud admins to setup

Requirements

This app requires php-curl, php-imap and Postfix.

NC new user

Create a new user from User Management on your NC server, which will have to function as a bot. We chose to call him deckbot, but you can call it however you want.
Note: that you have to assign deckbot on each board you want to add new cards from email.

Set up Postfix for incoming email

You can setup Posfix mail server folowing the instructions on Posfix setup, and after that add "+" delimiter (which separe the user from the board in the email address) using the command:

sudo postconf -e "recipient_delimiter = +"

Download and install

Clone this repository into incoming user.

cd /home/incoming/
git clone https://github.com/putt1ck/mail2deck.git mail2deck

Edit as you need the config file:

sudo nano /home/incoming/mail2deck/config.php

Add a cronjob which will run mail2deck.

sudo crontab -u incoming -e

Add the following line in the opened file: */5 * * * * /usr/bin/php /home/incoming/mail2deck/index.php >/dev/null 2>&1

Finish

Now mail2deck will add new cards every five minutes if new emails are received.