fixing and debugging
This commit is contained in:
parent
caa90a577f
commit
26b41f2c94
@ -115,7 +115,7 @@ def send_welcome(message):
|
||||
|
||||
:rtype: none
|
||||
"""
|
||||
bot.reply_to(message, "/id or /auth get your user id\n/update get updates on your shares.\n/users see all users.\n/news get top article for each keyword.\n/allnews get all news (last 7 days)\n/keywords get all your keywords\n/addkeyword add a keyword\n/removekeyword remove a keyword\n/share get price of specific share\n/portfolio see own portfolio\n/newtransaction add new transaction\n/interval get update interval\n/setinterval set update interval\n_For further details see https://gruppe1.testsites.info _", parse_mode='MARKDOWN')
|
||||
bot.reply_to(message, "/id or /auth get your user id\n/update get updates on your shares.\n/users see all users.\n/me get my user info\n/news get top article for each keyword.\n/allnews get all news (last 7 days)\n/keywords get all your keywords\n/addkeyword add a keyword\n/removekeyword remove a keyword\n/share get price of specific share\n/portfolio see own portfolio\n/newtransaction add new transaction\n/interval get update interval\n/setinterval set update interval\n_For further details see https://gruppe1.testsites.info _", parse_mode='MARKDOWN')
|
||||
|
||||
|
||||
@bot.message_handler(commands=['users'])
|
||||
@ -141,6 +141,25 @@ def send_all_users(message):
|
||||
bot.send_message(chat_id=user_id, text=answer)
|
||||
|
||||
|
||||
@bot.message_handler(commands=['me'])
|
||||
def send_user(message):
|
||||
""" Send user data
|
||||
:type message: message object bot
|
||||
:param message: message that was reacted to, in this case always containing '/me'
|
||||
|
||||
:raises: none
|
||||
|
||||
:rtype: none
|
||||
"""
|
||||
user_id = int(message.from_user.id)
|
||||
user_data = api_handler.get_user(user_id) # tbd: formatting
|
||||
if not user_data or user_data == None:
|
||||
bot.reply_to(message, "This didn\'t work. Make sure to connect your telegram id (/id) on https://gruppe1.testsites.info")
|
||||
return
|
||||
|
||||
bot.reply_to(message, 'Your user data:\n' + str(user_data))
|
||||
|
||||
|
||||
@bot.message_handler(commands=['id', 'auth']) # /auth or /id -> Authentication with user_id over web tool
|
||||
def send_id(message):
|
||||
|
||||
@ -248,7 +267,7 @@ def send_all_news(message):
|
||||
keywords = api_handler.get_user_keywords(user_id)
|
||||
|
||||
if keywords == None:
|
||||
bot.send_message(chat_id=user_id, text='This didn\'t work. Make sure too connect your telegram id (/id) on https://gruppe1.testsites.info')
|
||||
bot.send_message(chat_id=user_id, text='This didn\'t work. Make sure to connect your telegram id (/id) on https://gruppe1.testsites.info')
|
||||
return
|
||||
|
||||
if not keywords:
|
||||
@ -286,7 +305,7 @@ def send_news(message):
|
||||
keywords = api_handler.get_user_keywords(user_id)
|
||||
|
||||
if keywords == None:
|
||||
bot.send_message(chat_id=user_id, text='This didn\'t work. Make sure too connect your telegram id (/id) on https://gruppe1.testsites.info')
|
||||
bot.send_message(chat_id=user_id, text='This didn\'t work. Make sure to connect your telegram id (/id) on https://gruppe1.testsites.info')
|
||||
return
|
||||
|
||||
if not keywords:
|
||||
@ -369,7 +388,7 @@ def send_keywords(message):
|
||||
user_id = int(message.from_user.id)
|
||||
keywords = api_handler.get_user_keywords(user_id)
|
||||
if keywords == None:
|
||||
bot.send_message(chat_id=user_id, text='This didn\'t work. Make sure too connect your telegram id (/id) on https://gruppe1.testsites.info')
|
||||
bot.send_message(chat_id=user_id, text='This didn\'t work. Make sure to connect your telegram id (/id) on https://gruppe1.testsites.info')
|
||||
return
|
||||
if not keywords:
|
||||
bot.send_message(chat_id=user_id, text='No keywords set for this account. Add keywords by using /addkeyword')
|
||||
@ -392,17 +411,18 @@ def send_portfolio(message):
|
||||
user_id = int(message.from_user.id)
|
||||
portfolio = api_handler.get_user_portfolio(user_id)
|
||||
if portfolio == None:
|
||||
bot.send_message(chat_id=user_id, text='This didn\'t work. Make sure too connect your telegram id (/id) on https://gruppe1.testsites.info')
|
||||
bot.send_message(chat_id=user_id, text='This didn\'t work. Make sure to connect your telegram id (/id) on https://gruppe1.testsites.info')
|
||||
return
|
||||
if not portfolio:
|
||||
bot.send_message(chat_id=user_id, text='You do not have any stocks in your portfolio.')
|
||||
return
|
||||
else:
|
||||
portfolio_str = ', '.join(portfolio) # tbd: format portfolio
|
||||
bot.send_message(chat_id=user_id, text=f'Your portfolio is: _{portfolio_str}_', parse_mode="MARKDOWN")
|
||||
# tbd: format portfolio
|
||||
|
||||
bot.send_message(chat_id=user_id, text=f'Your portfolio is: _{str(portfolio)}_', parse_mode="MARKDOWN")
|
||||
|
||||
|
||||
@bot.message_handler(commands=['newtransaction']) #tbd
|
||||
@bot.message_handler(commands=['newtransaction']) #tbd not working rn
|
||||
def set_new_transaction(message):
|
||||
""" Set new transaction for user
|
||||
:type message: message object bot
|
||||
@ -413,14 +433,14 @@ def set_new_transaction(message):
|
||||
:rtype: none
|
||||
"""
|
||||
user_id = int(message.from_user.id)
|
||||
bot.send_message(chat_id=user_id, text='Type "<symbol>,<amount>,<price_per_stock>" (time of transaction will be set to now):')
|
||||
bot.send_message(chat_id=user_id, text='Type "<symbol>,<amount>,<price_per_stock_usd>" (time of transaction will be set to now):')
|
||||
bot.register_next_step_handler(message, set_new_transaction_step)
|
||||
|
||||
def set_new_transaction_step(message):
|
||||
user_id = int(message.from_user.id)
|
||||
|
||||
if not re.match(r"[A-Za-z0-9]+,[0-9]+[.[0-9]+]?,[0-9]+[.[0-9]+]?", message.text):
|
||||
bot.send_message(chat_id=user_id, text='Invalid format. Try again with /newtransaction.')
|
||||
if not re.match(r"[A-Za-z0-9]+,[0-9]+(.[0-9]+)?,[0-9]+(.[0-9]+)?", message.text):
|
||||
bot.send_message(chat_id=user_id, text='Invalid format \n(e.g. AAPL,53.2,120.4).\n Try again with /newtransaction.')
|
||||
return
|
||||
|
||||
transaction_data = str(message.text).split(',')
|
||||
@ -428,7 +448,8 @@ def set_new_transaction_step(message):
|
||||
amount = float(transaction_data[1])
|
||||
price = float(transaction_data[2])
|
||||
time = dt.datetime.now()
|
||||
|
||||
#print("\n\n\n\n\n")
|
||||
#print(f"{symbol},{amount},{price},{time}")
|
||||
status = api_handler.set_transaction(user_id, amount, price, symbol, time)
|
||||
|
||||
if status == 200:
|
||||
@ -448,14 +469,17 @@ def send_interval(message):
|
||||
:rtype: none
|
||||
"""
|
||||
user_id = int(message.from_user.id)
|
||||
interval = api_handler.get_user(user_id)
|
||||
if interval == None:
|
||||
bot.send_message(chat_id=user_id, text='This didn\'t work. Make sure too connect your telegram id (/id) on https://gruppe1.testsites.info and set an interval with /setinterval')
|
||||
user_data = api_handler.get_user(user_id)
|
||||
if user_data == None:
|
||||
bot.send_message(chat_id=user_id, text='This didn\'t work. Make sure to connect your telegram id (/id) on https://gruppe1.testsites.info and set an interval with /setinterval')
|
||||
return
|
||||
else:
|
||||
interval = str(interval['cron'])
|
||||
interval = str(user_data['cron'])
|
||||
if interval == 'None':
|
||||
bot.send_message(chat_id=user_id, text='You do not have an interval set. Set one with /setinterval')
|
||||
return
|
||||
formatted_interval = str(interval).replace(' ', '_')
|
||||
bot.send_message(chat_id=user_id, text=f'Your update interval: {interval} (https://crontab.guru/#{formatted_interval})', parse_mode="MARKDOWN")
|
||||
bot.send_message(chat_id=user_id, text=f'Your update interval: {interval} (https://crontab.guru/#{formatted_interval})')
|
||||
|
||||
|
||||
@bot.message_handler(commands=['setinterval'])
|
||||
@ -483,7 +507,7 @@ def set_new_interval_step(message):
|
||||
return
|
||||
|
||||
if status == -1: # only -1 when interval is invalid
|
||||
bot.send_message(chat_id=user_id, text='Invalid interval. Try again with /setinterval.')
|
||||
bot.send_message(chat_id=user_id, text='Invalid interval format. Try again with\n /setinterval.')
|
||||
return
|
||||
else:
|
||||
bot.send_message(chat_id=user_id, text=f'Failed setting interval. (statuscode {status})')
|
||||
|
Loading…
Reference in New Issue
Block a user