def send_confirmation_email(self): Mailer.send_html_mail( "Welcome to Bezzist! Please Confirm Your Account", "mail/account_confirmation.html", {"confirmation_code": self.confirmation_code}, [self.user.email], )
def check_stories(args: argparse.Namespace) -> None: mailer = Mailer() for user_id in args.usernames: account = InstaAccount(user_id) if account.has_stories(): mailer.send_mail_stories_found(user_id) logging.info(f'{user_id} stories were checked')
def check_media(args: argparse.Namespace) -> None: mailer = Mailer() for user_id in args.usernames: account = InstaAccount(user_id) new_media = account.get_new_media() if new_media: mailer.send_mail_new_media_found(user_id, new_media) logging.info(f'{user_id} media were checked')
def confirm_user(self): """ Confirms a user, authenticates and logges her in, and then send out an email to that user notifying her of the confirmation. """ self.user.is_active = True self.user.save() Mailer.send_html_mail("Bezzist Account Confimation Email", "mail/account_confirmed.html", {}, [self.user.email]) self.delete()
def sendAsyncMail(data): """sends an email when feedback form is filled successfully""" mail_data = copy.deepcopy(data) for recipient in data['recipients']: mail_data['recipients'] = [recipient] mailer = Mailer(mail_data) Mailer.send() logger.info("Sent mail with celery") return '{} random users created with success!'.format(mail_data)
def sendMailWithAttachment(request): unserializerFile = FileSerializer(data=request.data) response = copy.deepcopy(output_dict) try: if not unserializerFile.is_valid(): logger.warning('Missing input parameters.: %s', 'connection reset', extra=[]) raise ValueError("Missing input parameters.") unserializer = EmailSerializer(data=unserializerFile.data['json_data']) if unserializer.is_valid(): logger.info("Send Mail") if unserializer.data['async'] == True: task = sendAsyncMail.delay(unserializer.data) if task.id is not None: response["data"] = task.id response["status"] = "success" sts = status.HTTP_200_OK else: response["data"] = task.id response["status"] = "failed" sts = status.HTTP_422_UNPROCESSABLE_ENTITY return Response(response, content_type='application/json', status=sts) else: mailer = Mailer(unserializer.data) mailer.send() response["status"] = "success" return Response(response, content_type='application/json', status=status.HTTP_200_OK) else: response["error"] = unserializer.errors response["status"] = "failed" return Response(response, content_type='application/json', status=status.HTTP_400_BAD_REQUEST) except ParseError as ex: response["error"] = "Json request syntax error" response["status"] = 400 return Response(response, content_type='application/json', status=status.HTTP_400_BAD_REQUEST) except Exception as ex: logger.error('Something went wrong!') response["error"] = str(ex) response["status"] = "failed" return Response(response, content_type='application/json', status=status.HTTP_400_BAD_REQUEST)
def sendMail(request): #logger.info(request.data) response = copy.deepcopy(output_dict) try: if not request.data: logger.warning('Missing input parameters.: %s', 'connection reset', extra=request.data) raise ValueError("Missing input parameters.") unserializer = EmailSerializer(data=request.data) logger.info(unserializer) if unserializer.is_valid(): logger.info("Send Mail") if unserializer.data['async'] == True: task = sendAsyncMail.delay(unserializer.data) response["data"] = task.id response["status"] = "success" return Response(response, content_type='application/json', status=status.HTTP_200_OK) else: mailer = Mailer(unserializer.data) mailer.send() response["data"] = unserializer.data response["status"] = "success" return Response(response, content_type='application/json', status=status.HTTP_200_OK) else: response["error"] = str(unserializer.errors) response["status"] = "failed" return Response(response, content_type='application/json', status=status.HTTP_400_BAD_REQUEST) except Exception as ex: logger.error('Something went wrong!') response["error"] = str(ex) response["status"] = "failed" return Response(response, content_type='application/json', status=status.HTTP_400_BAD_REQUEST)
log.info("Current date: %s", getNow()) log.info("Warn about upcoming expirations in less than %d days", alertbefore) cEmailConfig = MailConfig(mailconfigfile) if not cEmailConfig.configFileExists(): log.warning("Oops, email config file %s doesn't exist yet", mailconfigfile) cEmailConfig.initConfigFile() else: log.info("Using mail config file %s", mailconfigfile) cEmailConfig.readConfigFile() if arguments['--test-mail']: log.info("Test Mail Configuration") content = [] mailhandler = Mailer(mailconfigfile) info = ['certmon.py email test'] mailhandler.sendmail(info, content, 'Email test') sys.exit(0) mailhandler = Mailer(mailconfigfile) warn_list = init_warn_mail_list(mailer=mailhandler) expired_list = init_expired_mail_list(mailer=mailhandler) changed_list = init_changed_mail_list(mailer=mailhandler) if arguments['--tor']: original_socket = socket.socket socks.set_default_proxy(socks.SOCKS5, "localhost", 9050) socket.socket = socks.socksocket log.info("socks public ip: " + str(urllib.request.urlopen('http://ip.42.pl/raw').read()))
from flask import Blueprint from flask import jsonify, render_template, request import os import sys sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) from .logger import SystemLogger from mail.mailer import Mailer log = Blueprint('log', __name__) mail = Mailer() systemLogger = SystemLogger() @log.route("/api/log/error", methods=['GET']) def send_err_file(): attachment_file = systemLogger.zip_log_file() status_code = mail.send_email_with_attachment({}, attachment_file) print(status_code) if status_code == 202: msg = str( "The error log has communicated to the developer! Please wait for a reply." ) return jsonify(msg=msg), 202 else: msg = str("Unable to communicate error log!")
log.info("Warn about upcoming expirations in less than %d days", alertbefore) cEmailConfig = MailConfig(mailconfigfile) if not cEmailConfig.configFileExists(): log.warning("Oops, email config file %s doesn't exist yet", mailconfigfile) cEmailConfig.initConfigFile() else: log.info("Using mail config file %s", mailconfigfile) cEmailConfig.readConfigFile() if arguments['--test-mail']: log.info("Test Mail Configuration") content = [] mailhandler = Mailer(mailconfigfile) info = ['certmon.py email test'] mailhandler.sendmail(info, content, 'Email test') sys.exit(0) mailhandler = Mailer(mailconfigfile) warn_list = init_warn_mail_list(mailer=mailhandler) expired_list = init_expired_mail_list(mailer=mailhandler) changed_list = init_changed_mail_list(mailer=mailhandler) if arguments['--tor']: original_socket = socket.socket socks.set_default_proxy(socks.SOCKS5, "localhost", 9050) socket.socket = socks.socksocket log.info("socks public ip: " + str(urllib.request.urlopen('http://ip.42.pl/raw').read()))
os.makedirs(DETECTION_OUTPUT_BASE_PATH) EXECUTION_PATH = os.getcwd() print('Running application at ', EXECUTION_PATH) print('Initializing Camera...') CAMERA = Camera(camera_index=CAMERA_INDEX) print('Camera initialized') print('Loading object detection model...') # Download this model from https://github.com/OlafenwaMoses/ImageAI/releases/download/1.0/yolo.h5 OBJECT_DETECTOR = ObjectDetector(model_name=MODEL_NAME, model_path=MODEL_PATH) print('Model loaded') print('Initializing Mailer...') MAILER = Mailer(smtp_server=SMTP_SERVER, smtp_port=SMTP_PORT) MAILER.authenticate(username=USERNAME, password=PASSWORD) print('Mailer initialized...') IO.setwarnings(False) IO.setmode(IO.BCM) IO.setup(IR_PIN_NO, IO.IN) def on_ir_state_changed(previous_state, current_state): if previous_state == 1 and current_state == 0: current_timestamp = '{0:%Y_%m_%d_%H_%M_%S}'.format( datetime.datetime.now()) picture_file_name = 'capture_' + current_timestamp + '.jpg' camera_capture_file_path = os.path.join(CAMERA_CAPTURES_BASE_PATH, picture_file_name)