nano bot.py
#!/usr/bin/env python
import telegram
from flask import Flask, request
import json
application = Flask(__name__)
global bot
bot = telegram.Bot(token='320450759:AAH-CThiNf5ePsqCv5k-eP4KGNXbjEqlk68')
@application.route('/test/', methods=['POST'])
def webhook_handler():
if request.method == "POST":
# retrieve the message in JSON and then transform it to Telegram object
# print(request.get_json(force=True))
# print(bot)
update = telegram.Update.de_json(request.get_json(force=True),bot)
chat_id = update.message.chat.id
# Telegram understands UTF-8, so encode text for unicode compatibility
text = update.message.text
# repeat the same message back (echo)
bot.sendMessage(chat_id=chat_id, text=text)
return 'ok'
@application.route('/set_webhook', methods=['GET', 'POST'])
def set_webhook():
s = bot.setWebhook('https://kartel.ir/test/')
if s:
return "webhook setup ok"
else:
return "webhook setup failed"
@application.route('/')
def index():
return '.'
nano wsgi.py
from bot import application
if __name__ == "__main__":
application.run()
nano wsgi.ini
[uwsgi]
module = wsgi
virtualenv=/home/bjem/venv/
master = true
processes = 5
req-logger = file:log/reqlog
logger = file:log/errlog
socket = /socket/tact.sock
chmod-socket = 777
vacuum = true
die-on-term = true
enable-threads=true