Ejemplo n.º 1
0
 def create(self):
     name = request.params["name"]
     sender_mail = request.params["email"]
     phone = "88888888"
     msg = request.params["message"]
     mail = Mail(name, sender_mail, phone, msg)
     self.mail_service.send(mail)
    def buy(self, close):
        """

        :param close:
        :return:
        """
        try:
            price, quantity = self.get_buy_value(close)
            order = self.client.create_order(
                symbol=self.config.get("Symbol"),
                side=self.client.SIDE_BUY,
                type=self.get_order_type(),
                timeInForce=self.client.TIME_IN_FORCE_GTC,
                quantity=quantity,
                price=price)
            self.set_last_order_id(order["orderId"])
            self.send_buy_mail(close)
            debug_logger.debug(
                " **************************** BUY: {} **************************** "
                .format(close))
            debug_logger.debug(json.dumps(order))
        except Exception as error:
            debug_logger.debug(error)
            mail = Mail()
            mail.send_mail("Fehler", error)
            return False
Ejemplo n.º 3
0
    def post(self):
        email = self.request.get("email")
        name = self.request.get("name")
        mail = Mail(email=email, name=name)
        mail.put()

        return self.redirect_to("main-page")
    def send_sell_cancelled_mail(self, price, quantity):
        """

        :param price:
        :param quantity:
        :return:
        """
        subject = "Tradingbot: Verkauf abgebrochen"
        message = "Die letzte Verkauforder wurde abgebrochen:"
        message += "Preis: {0}</br>".format(price)
        message += "Menge: {0}</br>".format(quantity)
        mail = Mail()
        mail.send_mail(subject, message)
    def send_sell_filled_mail(self, price, quantity):
        """

        :param price:
        :param quantity:
        :return:
        """
        subject = "Tradingbot: Verkauft"
        message = "Die letzte Verkauforder war erfolgreich:"
        message += "Preis: {0}</br>".format(price)
        message += "Menge: {0}</br>".format(quantity)
        mail = Mail()
        mail.send_mail(subject, message)
    def send_sell_mail(self, close):
        """

        :param close:
        :return:
        """
        price, quantity = self.get_sell_value(close)
        subject = "Tradingbot: Verkaufe"
        message = "Ich setze eine Verkauforder:"
        message += "Preis: {0}</br>".format(price)
        message += "Menge: {0}</br>".format(quantity)
        mail = Mail()
        mail.send_mail(subject, message)
    def restart_socket(self):
        """
        startet den socket neu

        :return: None
        """
        debug_logger.debug("restarting socket")
        self.socket_manager.stop_socket(self.connection_key)
        self.start_socket()
        debug_logger.debug("socket restarted")
        mail = Mail()
        mail.send_mail("Tradingbot socket restarted",
                       "Tradingbot socket restarted")
    def start_socket(self):
        """
        startet den websocket

        :return: None
        """
        dataframe = self.get_candles()
        for close in dataframe['close']:
            self.closes.append(close)
        self.socket_manager.start()
        debug_logger.debug("socket started")
        mail = Mail()
        debug_logger.debug(
            "**************************************** TRADING BOT STARTED ****************************************"
        )
        mail.send_mail("Tradingbot started", "Tradingbot started")
Ejemplo n.º 9
0
 def Mail(self):
     return Mail(self)
Ejemplo n.º 10
0
async def form_create_user(api_key: str, user: preUser, ip: str):
    try:
        ApiKey(APIKEY=api_key)
    except ValidationError as e:
        return JSONResponse(
            status_code=status.HTTP_403_FORBIDDEN,
            content=e.errors()
        )

    ds = datasource()
    ds.connect()

    SQL = "SELECT EMAIL FROM USERDATA WHERE EMAIL = %s"
    PAR = (user.EMAIL,)

    ds.execute(SQL, PAR)
    data = ds.fetch_row()

    ds.close()

    if data is not None:
        raise HTTPException(
            status_code=status.HTTP_409_CONFLICT,
            detail="User is already registered"
        )

    PERMISSION_LEVEL = 0
    HASH = uuid.uuid1().hex

    isTeacher = is_teacher(user.EMAIL)

    # Check if User is in the Global Teacher Database
    if isTeacher:
        PERMISSION_LEVEL = 1
        user.CLASS = "LEHRER"
    elif user.CLASS == "LEHRER":
        raise HTTPException(
            status_code=status.HTTP_417_EXPECTATION_FAILED,
            detail="User is not a teacher"
        )

    NAME = user.EMAIL.split(".")[0].capitalize()
    LASTNAME = user.EMAIL.split(".")[1].split("@")[0].capitalize()

    if LASTNAME[-2:].isdigit():
        LASTNAME = LASTNAME[:-2]

    try:
        account = User(
            EMAIL=user.EMAIL,
            PASSWORD_HASH=get_password_hash(user.PASSWORD),
            NAME=NAME,
            LASTNAME=LASTNAME,
            CLASS=user.CLASS,
            PERMISSION_LEVEL=PERMISSION_LEVEL,
            LAST_IP=ip,
            ACTIVE=False,
            TEMPHASH=HASH
        )
    except ValidationError as e:
        raise HTTPException(
            status_code=status.HTTP_422_UNPROCESSABLE_ENTITY,
            detail=e.errors()
        )
    create_user(account)

    mail = Mail(
        to=user.EMAIL,
        subject="Account Aktivieren",
        message="https://api.toolbox.philsoft.at/account/activate/" + account.TEMPHASH,
        html=False
    )

    if mail.send():
        return JSONResponse(
            status_code=status.HTTP_200_OK,
            content="User successfully created"
        )
    else:
        return HTTPException(
            status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
            detail="There was some error with the mail processing"
        )