Exemple #1
0
def cron_scheduler(x, y):
    try:
        # crone task will run for every 15 min
        from db.mongod import find
        res_list = find(collection='campaign',
                        query_params={
                            "campaign": "swiggy",
                            "metrix": {
                                "$and": ['clicks', 'install']
                            }
                        })
        clicks, install = 0, 0
        for item in res_list:
            if item.get('clicks'):
                clicks += item['clicks']
            elif item.get("install"):
                install += item['install']

        if clicks >= 5000 and install >= 100:
            from services.mail import send_mail
            send_mail(email="*****@*****.**",
                      email_to="*****@*****.**",
                      email_sub="campaign is stop",
                      password="******",
                      name="xyz",
                      rule='swiggy',
                      campaign='swiggy',
                      schedule="current_date",
                      condition="your_condition",
                      action="action")

        print("data has been inserted !!")

    except Exception as e:
        print("Exception occured cron_scheduler :: {0}".format(str(e)))
Exemple #2
0
 def post(self):
     try:
         body = request.get_json()
         reset_token = body.get('reset_token')
         password = body.get('password')
         if not reset_token or not password:
             raise SchemaValidationError
         user_id = decode_token(reset_token)['identity']
         user = User.objects.get(id=user_id)
         user.modify(password=password)
         user.hash_password()
         user.save()
         return send_mail('[BlogApp] Password reset successful',
                          sender='*****@*****.**',
                          recipients=[user.email],
                          html_body=render_template(
                              'reset_password/reset_password_success.html'))
     except SchemaValidationError:
         raise SchemaValidationError
     except ExpiredSignatureError:
         raise ExpiredTokenError
     except (DecodeError, InvalidTokenError):
         raise BadTokenError
     except Exception as e:
         raise InternalServerError
Exemple #3
0
 def post(self):
     try:
         body = request.get_json()
         confirm_token = body.get('confirm_token')
         is_confirmed = body.get('is_confirmed')
         if not confirm_token or not is_confirmed:
             raise SchemaValidationError
         user_id = decode_token(confirm_token)['identity']
         user = User.objects.get(id=user_id)
         check_is_confirmed = json.loads(user.to_json()).get('is_confirmed')
         if check_is_confirmed:
             raise EmailAlreadyExistsError
         user.modify(is_confirmed=is_confirmed)
         user.save()
         return send_mail('[Blog] Account validated successful',
                             sender='*****@*****.**',
                             recipients=[user.email],
                             html_body=render_template('confirm_email/confirm.html'))
     except SchemaValidationError:
         raise SchemaValidationError
     except EmailAlreadyExistsError:
         raise EmailAlreadyExistsError
     except ExpiredSignatureError:
         raise ExpiredTokenError
     except (DecodeError, InvalidTokenError):
         raise BadTokenError
     except Exception as e:
         raise InternalServerError
Exemple #4
0
def add_rule():
    rule = request.form['rule']
    campaign = request.form['campaign']
    schedule = request.form['schedule']
    condition = request.form['condition']
    action = request.form['action']
    from services.rule import addrule
    resp = addrule(rule=rule,
                   campaign=campaign,
                   schedule=schedule,
                   condition=condition,
                   action=action)
    from services.mail import send_mail
    send_mail(email="*****@*****.**",
              email_to="*****@*****.**",
              email_sub="Tryoo campaign test !",
              password="******",
              name="abc",
              rule=rule,
              campaign=campaign,
              schedule=schedule,
              condition=condition,
              action=action)
    return redirect("/login")
Exemple #5
0
 def post(self):
     try:
         url = CONSTANT_URL + "reset/"
         email = request.get_json().get('email')
         if not email:
             raise SchemaValidationError
         user = User.objects.get(email=email)
         expires = datetime.timedelta(minutes=10)
         reset_token = create_access_token(str(user.id),
                                           expires_delta=expires)
         return send_mail('[BlogApp] Reset Your Password',
                          sender='*****@*****.**',
                          recipients=[user.email],
                          html_body=render_template(
                              'reset_password/forget_password.html',
                              url=url + reset_token))
     except DoesNotExist:
         raise UserDoesnotExistsError
     except SchemaValidationError:
         raise SchemaValidationError
     except Exception as e:
         raise InternalServerError
Exemple #6
0
 def post(self):
     try:
         url = CONSTANT_URL + "confirm_account/"
         email = request.get_json().get('email')
         if not email:
             raise SchemaValidationError
         user = User.objects.get(email=email)
         expires = datetime.timedelta(hours=12)
         confirm_token = create_access_token(str(user.id), expires_delta=expires)
         return send_mail('[ Blog ] Confirm your email',
                         sender='*****@*****.**',
                         recipients=[user.email],
                         html_body=render_template('confirm_email/confirm_account_send.html',
                                                     url=url + confirm_token))
     except FieldDoesNotExist:
         raise SchemaValidationError
     except DoesNotExist:
         raise UserDoesnotExistsError
     except SchemaValidationError:
         raise SchemaValidationError
     except Exception as e:
         raise InternalServerError