1
0
mirror of https://github.com/eternnoir/pyTelegramBotAPI.git synced 2023-08-10 21:12:57 +03:00
pyTelegramBotAPI/examples/webhook_examples
2021-03-28 11:54:46 +03:00
..
README.md docs: fix simple typo, perfomance -> performance 2020-12-25 09:47:40 +11:00
webhook_aiohttp_echo_bot.py
webhook_cherrypy_echo_bot.py
webhook_cpython_echo_bot.py
webhook_flask_echo_bot.py
webhook_flask_heroku_echo.py Heroku example update 2021-03-28 11:54:46 +03:00
webhook_tornado_echo_bot.py
webhook_twisted_echo_bot.py

Webhook examples using pyTelegramBotAPI

There are 5 examples in this directory using different libraries:

  • Python (CPython): webhook_cpython_echo_bot.py

    • Pros:
      • Official python libraries, it works out of the box (doesn't require to install anything).
      • Works with Python 2 and Python 3 (need to be converted with 2to3).
    • Cons:
      • Ugly code.
      • Many things to handle yourself, this can lead to errors.
      • Not powerful, do the trick but the performance is low.
  • CherryPy (3.8.0): webhook_cherrypy_echo_bot.py

    • Pros:
      • It's a web application framework, cleaner code, uses objects for defining the web application.
      • Very good performance.
      • The project seems to be active, latest version is recent.
      • Works with Python 2 and Python 3.
    • Cons:
      • Some things are not very intuitive, reading the doc is a must.
  • Flask (0.10.1): webhook_flask_echo_bot.py

    • Pros:
      • It's a web application framework, cleaner code, uses decorator which can be nice.
      • Good performance.
      • It's intuitive if you know how web application works.
    • Cons:
      • The project seems not to be very active, latest version dates 2013.
      • They don't recommend to use it with Python 3, but may work.
      • May be a oversized for just handling webhook petitions.
  • aiohttp (1.2.0): webhook_aiohttp_echo_bot.py

    • Pros:
      • It's a web application framework
      • Python 3 compatible
      • Asynchronous, excellent performance
      • Utilizes new async/await syntax
    • Cons:
      • Requires Python 3.4.2+, don't work with Python 2
  • Twisted (20.3.0): webhook_twisted_echo_bot.py

    • Pros:
      • Asynchronous event-driven networking engine
      • Very high performance
      • Built-in support for many internet protocols
    • Cons:
      • Twisted is low-level, which may be good or bad depending on use case
      • Considerable learning curve - reading docs is a must.

Latest update of this document: 2020-12-17