test.py 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #!/usr/bin/env python3
  2. import argparse
  3. import logging
  4. import pathlib
  5. import telegram.ext
  6. import telegram.update
  7. _LOGGER = logging.getLogger(__name__)
  8. def _start_command(
  9. update: telegram.update.Update,
  10. context: telegram.ext.callbackcontext.CallbackContext,
  11. ):
  12. context.bot.send_message(
  13. chat_id=update.effective_chat.id,
  14. text=f"context={vars(context)}\nupdate={vars(update)}",
  15. )
  16. def _main():
  17. logging.basicConfig(
  18. level=logging.DEBUG,
  19. format="%(asctime)s:%(levelname)s:%(name)s:%(funcName)s:%(message)s",
  20. datefmt="%Y-%m-%dT%H:%M:%S%z",
  21. )
  22. argparser = argparse.ArgumentParser()
  23. argparser.add_argument("--token-path", type=pathlib.Path, required=True)
  24. args = argparser.parse_args()
  25. _LOGGER.debug("args=%r", args)
  26. updater = telegram.ext.Updater(
  27. token=args.token_path.read_text().rstrip(), use_context=True
  28. )
  29. updater.dispatcher.add_handler(telegram.ext.CommandHandler("start", _start_command))
  30. updater.start_polling()
  31. if __name__ == "__main__":
  32. _main()