mirror of
https://github.com/hastagAB/Awesome-Python-Scripts.git
synced 2024-12-18 16:20:14 +00:00
53 lines
1.5 KiB
Python
53 lines
1.5 KiB
Python
|
#!/usr/bin/python
|
||
|
# coding: utf-8
|
||
|
|
||
|
import email
|
||
|
import smtplib
|
||
|
import sys
|
||
|
import csv
|
||
|
|
||
|
# Capture stdin message via pipe
|
||
|
msg = email.message_from_file(sys.stdin)
|
||
|
|
||
|
# list with sellers or emails for distribution
|
||
|
sellers = [('Seller 01', 'seller01@domain.com'),
|
||
|
('Seller 02', 'seller02@domain.com')]
|
||
|
|
||
|
# Check the size of the vendor list
|
||
|
totalSellers = len(sellers)
|
||
|
|
||
|
# Get the last seller that received email
|
||
|
lastSeller = open('lastseller.txt', 'r').read() # use the full path of file
|
||
|
|
||
|
# Determines the next seller who will receive email
|
||
|
if int(lastSeller) == totalSellers - 1: # If the last one you received is the last
|
||
|
nextSeller = 0 # on the list, get the first one on the list.
|
||
|
else: # If not,
|
||
|
nextSeller = int(lastSeller) + 1 # get the next one.
|
||
|
|
||
|
currentSeller = str(nextSeller)
|
||
|
|
||
|
# records which seller is receiving the current email.
|
||
|
fvend = open('lastseller.txt', 'w') # use the full path of file
|
||
|
fvend.write(currentSeller)
|
||
|
fvend.close()
|
||
|
|
||
|
# Check if you have an email for reply
|
||
|
if not msg['reply-to']:
|
||
|
emailContact = msg['from']
|
||
|
else:
|
||
|
emailContact = msg['reply-to']
|
||
|
|
||
|
# writes log to csv
|
||
|
with open('emails.csv', 'a') as fcsv: # use the full path of file
|
||
|
mailwriter = csv.writer(fcsv, delimiter=';')
|
||
|
mailwriter.writerow(
|
||
|
[msg['date'], msg['subject'], emailContact,
|
||
|
sellers[nextSeller][0]])
|
||
|
|
||
|
# Forward the email to the seller of the time.
|
||
|
s = smtplib.SMTP('localhost')
|
||
|
s.sendmail("sellers@domain.com", sellers[nextSeller][1],
|
||
|
msg.as_string())
|
||
|
s.quit()
|