commands.py 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. """Telegram commands"""
  2. from telegram import ParseMode
  3. from app import database, functions
  4. from app.models import TelegramAccount
  5. def cmd_start(update, context):
  6. """Start command"""
  7. update.message.reply_text(
  8. 'Hello {},\ntype /help for a list of commands'.format(update.message.from_user.first_name))
  9. telegram_account = database.get_telegram_account(update.message.from_user.id)
  10. if not telegram_account:
  11. database.add_telegram_account(update)
  12. def cmd_help(update, context):
  13. """Help command"""
  14. message_list = [
  15. '**Command list**',
  16. '/accounts - list of accounts',
  17. '/add\\_account - add account to list',
  18. ]
  19. message = '\n'.join(message_list)
  20. update.message.reply_text(message, parse_mode=ParseMode.MARKDOWN)
  21. def cmd_accounts(update, context):
  22. """Return account list"""
  23. message_list = ['Accounts verified to this Telgeram account:']
  24. telegram_account = database.get_telegram_account(update.message.from_user.id)
  25. if telegram_account:
  26. accounts = database.get_rr_accounts(telegram_account)
  27. else:
  28. accounts = []
  29. if not accounts:
  30. message_list.append('• none')
  31. for account in accounts:
  32. desktop_link = '[desktop](https://rivalregions.com/#slide/profile/{})'.format(account.id)
  33. mobile_link = '[mobile](https://m.rivalregions.com/#slide/profile/{})'.format(account.id)
  34. message_list.append(
  35. '• {} {} - {}'.format(
  36. functions.escape_text(account.name),
  37. desktop_link,
  38. mobile_link,
  39. )
  40. )
  41. message = '\n'.join(message_list)
  42. update.message.reply_text(message, parse_mode=ParseMode.MARKDOWN)