Mass Mailing personalised encrypted files(pdfs) with personalised mail using SQLlite database. This mass-mailing application can send an encrypted PDF to the recipients. The password is set as default to be the Datae of Birth . However it can be changed . A basic database is included . The database can be manipulated by modifying the functions given in database_manage.py. The Database contains Name, Email and DOB columns. the program extracts the DOB and Email from this table.
- Clone the Mass-mailing-encrypted-data repo
git clone https://github.com/19-ade/Mass-mailing-encrypted-data.git
Navigate your way to the Mass mailing encrypted data folder.
- Run Requirements.py
python Requirements.py
- Run the GUI
python main.py
1.email_try.py : This is the script which performs the encryption and sends the mails. make_pdf encrypts the pdf. send_mail sends the mails ; the contents of the mail text can be manipulated here . mail_sending recieves the inputs from various scripts and calls the aforementioned functions. set_credentials recieves the sender's email id and password from the gui and initialises the global variables email and password with it .
2.main.py : This is GUI interface for the project . Made with tkinter.
3.database_manage.py : This contains various functions which can help manipulate the basic layout of the database, mass_mailing.db. Made with sqlite3
4.csv_creator: Creates , edits the csv files containing the mailing list. The functionalities will be added with further updates.
Inputs for appending to the Database
messagebox confirming the pdf to be uploaded
Messagebox confirmation feature
Deleting from the Database with just the email. More fetures will be added
Confirmation messagebox on successfully sending all the mails
- error message functionality for wrong entries while deleting and pressing delete without any inputs added
- Deleting a record can now be achieved with entering any one of the values (Email, dob, name) or all of them
- New button features added which allows users to directly download the database contents in either excel or csv file .
- A text_to_speech feature added which notifies a person everytime an action taks place(errors, mails sent, success etc.)
The project would not have been possible without contributions from Aditya Goyal, Nirav Jayesh Parmar. Made with love, in Python .