From 7a844a96fe9ea5e73f3daa81eef5ebc67e528cfe Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= <hugo@lysator.liu.se>
Date: Fri, 18 Sep 2020 00:02:48 +0200
Subject: [PATCH] Got it working!

---
 main.py | 26 ++++++++++++++++++--------
 1 file changed, 18 insertions(+), 8 deletions(-)

diff --git a/main.py b/main.py
index ad1dea1..52ae2aa 100644
--- a/main.py
+++ b/main.py
@@ -4,6 +4,7 @@ from email import message_from_bytes
 import email.policy
 from dateutil.parser import parse
 import subprocess
+import re
 
 class CustomSMTPServer(smtpd.SMTPServer):
     def process_message(self, peer, mailfrom, rcpttos, data, **kwargs):
@@ -11,16 +12,25 @@ class CustomSMTPServer(smtpd.SMTPServer):
         body = msg.get_content()
         d = parse(msg.get('Date'))
         title = msg.get('Subject')
-        subprocess.run('wp', 'post', 'create',
-                '--post_author', 1,
-                '--post_date', f'{d:%Y-%m-%d}',
-                '--post_title', title,
-                '--post_publish', 'publish',
-                '--post_category', 'Veckomail',
-                '--post_content', f'<pre>{body}</pre>')
+
+        if not title:
+            print("Title missing")
+            return
+
+        title = re.sub('^\[.*\] *', '', title)
+
+        subprocess.run(['wp', 'post', 'create',
+                '--post_author=2'
+                f'--post_date={d:%Y-%m-%d}',
+                f"--post_title={title}",
+                '--post_status=publish',
+                '--post_category=Veckomail',
+                f"--post_content=<pre>{body}</pre>"],
+                cwd='/usr/share/wordpress',
+                shell=False)
         return
 
 
-server = CustomSMTPServer(('localhost', 1025), None,
+server = CustomSMTPServer(('0.0.0.0', 1025), None,
         decode_data=False)
 asyncore.loop()
-- 
GitLab