Исправил ошибку при повторной регистрации

This commit is contained in:
2020-03-19 18:45:29 +03:00
parent b713aa3145
commit 36bfbb77d0
3 changed files with 40 additions and 39 deletions

View File

@@ -69,13 +69,13 @@ def workshop():
actionArgs) actionArgs)
return redirect(url_for('workshop')) return redirect(url_for('workshop'))
# if 'NewScenarioName' in request.form:
if 'TGUsername' in request.form: if 'TGUsername' in request.form:
new_tg_username = request.form['TGUsername'] new_tg_username = request.form['TGUsername']
db_routing.tg_username_update(current_user.get_id(), new_tg_username) db_routing.tg_username_update(current_user.get_id(), new_tg_username)
return redirect(url_for('workshop')) return redirect(url_for('workshop'))
# if 'NewScenarioName' in request.form:
triggers_list = db_routing.get_trigers() triggers_list = db_routing.get_trigers()
actions_list = db_routing.get_actions() actions_list = db_routing.get_actions()
user_scripts_list = db_routing.get_user_scripts(current_user.get_id()) user_scripts_list = db_routing.get_user_scripts(current_user.get_id())

View File

@@ -1,30 +1,33 @@
# Парсер почты # Парсер почты
import datetime import datetime
import imaplib
import time
import email import email
import imaplib
# будильник # будильник
import threading import threading
import time
#То, что нужно будет передавать функциям # То, что нужно будет передавать функциям
#Инициализация будильника # Инициализация будильника
userName='Denis' userName = 'Denis'
year_Alarm_Clock=2020 year_Alarm_Clock = 2020
month_Alarm_Clock=3 month_Alarm_Clock = 3
day_Alarm_Clock=19 day_Alarm_Clock = 19
hour_Alarm_Clock=12 hour_Alarm_Clock = 12
min_Alarm_Clock=49 min_Alarm_Clock = 49
sec_Alarm_Clock=0 sec_Alarm_Clock = 0
#Инициализация парсера почты # Инициализация парсера почты
gmail_user=''#Login gmail_user = '' # Login
gmail_pass=''#Password gmail_pass = '' # Password
#Сами функции
#Будильник # Сами функции
def alarm_clock(year_Alarm_Clock, month_Alarm_Clock, day_Alarm_Clock, hour_Alarm_Clock, min_Alarm_Clock, sec_Alarm_Clock):
dt = datetime.datetime(year_Alarm_Clock, month_Alarm_Clock, day_Alarm_Clock, hour_Alarm_Clock, min_Alarm_Clock, sec_Alarm_Clock) # Будильник
def alarm_clock(year_Alarm_Clock, month_Alarm_Clock, day_Alarm_Clock, hour_Alarm_Clock, min_Alarm_Clock,
sec_Alarm_Clock):
dt = datetime.datetime(year_Alarm_Clock, month_Alarm_Clock, day_Alarm_Clock, hour_Alarm_Clock, min_Alarm_Clock,
sec_Alarm_Clock)
diff = (dt - datetime.datetime.now()).total_seconds() diff = (dt - datetime.datetime.now()).total_seconds()
try: try:
time.sleep(diff) time.sleep(diff)
@@ -47,10 +50,10 @@ def check_email(gmail_user, gmail_pass):
count_Email_Current = (mail.select("inbox")[1][0]).decode('utf-8') count_Email_Current = (mail.select("inbox")[1][0]).decode('utf-8')
if count_Email_Current > count_Email_Start: if count_Email_Current > count_Email_Start:
result, data = mail.search(None, "ALL") result, data = mail.search(None, "ALL")
ids = data[0] # Получаем сроку номеров писем ids = data[0] # Получаем сроку номеров писем
id_list = ids.split() # Разделяем ID писем id_list = ids.split() # Разделяем ID писем
latest_email_id = id_list[-1] # Берем последний ID latest_email_id = id_list[-1] # Берем последний ID
result, data = mail.fetch(latest_email_id, "(RFC822)") # Получаем тело письма (RFC822) для данного ID result, data = mail.fetch(latest_email_id, "(RFC822)") # Получаем тело письма (RFC822) для данного ID
raw_email = data[0][1] raw_email = data[0][1]
email_message = email.message_from_bytes(raw_email) email_message = email.message_from_bytes(raw_email)
email_message_From = email_message['From'] email_message_From = email_message['From']
@@ -62,25 +65,23 @@ def check_email(gmail_user, gmail_pass):
time.sleep(15) # частота проверки нового письма time.sleep(15) # частота проверки нового письма
# Чтобы запустить будильник 1, Парсер 2
Mode = 2
#Чтобы запустить будильник 1, Парсер 2 # Для создания потока будильника передаются:
Mode=2
#Для создания потока будильника передаются:
# Id юзера который поставил будильник, и значения времени которые он поставил. Поток создаётся с именем(id) юзера # Id юзера который поставил будильник, и значения времени которые он поставил. Поток создаётся с именем(id) юзера
if __name__ == '__main__': if __name__ == '__main__':
if Mode==1: if Mode == 1:
Clock_Thread = threading.Thread( Clock_Thread = threading.Thread(
target = alarm_clock, name = userName, args=(year_Alarm_Clock, target=alarm_clock, name=userName, args=(year_Alarm_Clock,
month_Alarm_Clock, month_Alarm_Clock,
day_Alarm_Clock, day_Alarm_Clock,
hour_Alarm_Clock, hour_Alarm_Clock,
min_Alarm_Clock, min_Alarm_Clock,
sec_Alarm_Clock)) sec_Alarm_Clock))
Clock_Thread.start() Clock_Thread.start()
if Mode==2: if Mode == 2:
check_email(gmail_user, gmail_pass) check_email(gmail_user, gmail_pass)
# сценарии должны хранить логины и пароль # сценарии должны хранить логины и пароль
# запилить бота, возврат темы и отправителя в словаре. # запилить бота, возврат темы и отправителя в словаре.

View File

@@ -56,7 +56,7 @@ class Scenario(db.Model):
def add_user(user_name, passw_hash): def add_user(user_name, passw_hash):
if not get_user(user_name): if not get_user(username=user_name):
new_user = User(username=user_name, password=passw_hash) new_user = User(username=user_name, password=passw_hash)
db.session.add(new_user) db.session.add(new_user)
db.session.commit() db.session.commit()