#!/usr/bin/env python3 # -*- coding: utf-8 -*- # -------------------------------------------------------------- # ip2e (IP to email) - Create the configuration file. | # Created by clamsawd (clamsawd@openmailbox.org) | # Licensed by GPL v.3 | # Last update: 06-11-2015 | # | # Compatible with Python 3.x | # -------------------------------------------------------------- version="1.1.1" #Import python-modules import os import sys #Check if your system use Python 3.x if sys.version_info<(3,0): print ("") print ("You need python 3.x to run this program.") print ("") exit(1) #Function to clear screen def ClearScreen(): if sys.platform == "cygwin": print (300 * "\n") elif os.name == "posix": os.system("clear") elif os.name == "nt": os.system("cls") else: print ("Error: Unable clear screen") #Detect system & PATH of user folder if os.name == "posix": os.chdir(os.environ["HOME"]) print ("POSIX detected") elif os.name == "nt": os.chdir(os.environ["USERPROFILE"]) print ("Windows detected") if not os.path.exists(".ip2e"): os.makedirs(".ip2e") os.chdir(".ip2e") if os.path.exists(".ip2e"): os.chdir(".ip2e") if os.path.isfile("ip2e-conf.py"): ClearScreen() print ("") print ("ip2e-config v"+version) print ("") print ("Detected a previous configuration file") print ("Do you want to overwrite or check the current configuration?") print ("") print ("(o) - overwrite (create new configuration)") print ("(c) - check and test the current configuration") print ("") OverWriteOrCheck=input("[Default: check and test] Choose an option; ") if OverWriteOrCheck == "o" or OverWriteOrCheck == "O": print ("Create new configuration") else: exec(open("ip2e-conf.py").read()) #Import smtplib import smtplib try: server = smtplib.SMTP(SmtpFromEmail) server.ehlo() server.starttls() server.ehlo() server.login(FromEmailUser,FromEmailPass) server.quit() print ("") print ("Test OK") print ("") except: print ("") print ("Failed to connect ("+SmtpFromEmail+")") print ("") exit(0) #Set variables of 'ip2e-conf.py' ClearScreen() print ("") print ("ip2e-config v"+version+" - Create config.file") print ("") FromEmail=input("Type the email sender: ") FromEmailUser=input("Type the user of email sender: ") FromEmailPass=input("Type the pass of email sender: ") SmtpFromEmail=input("Type the server STMP of email sender: ") ToEmail=input("Type the email receiver: ") #Create 'ip2e-conf.py' if os.path.isfile("ip2e-conf.py"): os.remove("ip2e-conf.py") ip2ecf=open('ip2e-conf.py','w') ip2ecf.close() ip2ecf=open('ip2e-conf.py','a') ip2ecf.write('# sample configuration file of ip2e\n') ip2ecf.write('\n') ip2ecf.write('FromEmail="'+FromEmail+'"\n') ip2ecf.write('FromEmailUser="'+FromEmailUser+'"\n') ip2ecf.write('FromEmailPass="'+FromEmailPass+'"\n') ip2ecf.write('SmtpFromEmail="'+SmtpFromEmail+'"\n') ip2ecf.write('ToEmail="'+ToEmail+'"\n') ip2ecf.close() #Show the configuration ClearScreen() print ("") print ("ip2e-config v"+version+" - Current config.file") print ("") readfile=open('ip2e-conf.py', 'r') print(readfile.read()) readfile.close() #Test connection with your configuration print ("") TestConnection=input("[Default: y] Test connection with your configuration (y/n): ") if TestConnection == "n": print ("Exiting...") exit(0) else: exec(open("ip2e-conf.py").read()) #Import smtplib import smtplib try: server = smtplib.SMTP(SmtpFromEmail) server.ehlo() server.starttls() server.ehlo() server.login(FromEmailUser,FromEmailPass) server.quit() print ("") print ("Test OK") print ("") except: print ("") print ("Failed to connect ("+SmtpFromEmail+")") print ("")