amiri ارسال شده در 18 شهریور، 2019 اشتراک گذاری ارسال شده در 18 شهریور، 2019 راه اندازی بات تلگرام با استفاده از فلاسک Flask و پایتون در سی پنل ابتدا از Lets Encrypt موجود در cPanel یک ssl رایگان بر روی دامنه مورد نظر نصب کرده و سپس از Python selector اقدام به نصب فریم ورک و ماژول تلگرام می کنیم : سپس فایل web.py حاوی کد های فلاسک برگرفته از مثال نمونه را ایجاد میکنیم : from flask import Flask, request import telegram # CONFIG TOKEN = 'YOUR_BOT_API' HOST = 'YOURDOMAIN.COM' global bot bot = telegram.Bot(TOKEN) app = Flask(__name__) @app.route('/') def hello(): return 'Hello World! :)' @app.route('/' + TOKEN, methods=['POST']) def webhook(): try: update = telegram.Update.de_json(request.get_json(force=True),bot) bot.sendMessage(chat_id=update.message.chat.id, text='Hello, there'.encode('utf-8')) except Exception as e: return str(e) return 'OK' @app.route('/set_webhook', methods=['GET', 'POST']) def setWebhook(): s = bot.setWebhook(webhook_url='https://%s/%s' % (HOST,TOKEN)) if s: return "webhook setup ok" else: return "webhook setup failed" اکنون لازم است با ایجاد فایل passenger_wsgi.py فایل web.py را به وب سرور برای اتصال معرفی کنیم : from web import app as application در نهایت پایتون را از کنترل پنل python selector رستارت می کنیم . اکنون با مراجعه به https://yourdomain.com باید hello world ! به درستی نمایش داده شود و با رفتن به آدرس https://yourdomain.com/set_webhook باید پیام webhook setup ok نمایش داده شود. همچنین با ارسال یک درخواست json تست به : https://yourdomain.com/TOKEN نباید خطایی نشان داده شود و باید پیام ok نمایش داده شود. این درخواست test را می توان با کتابخانه requests پایتون فرستاد: import requests requests.post("https://yourdomain.com/TOKEN",json={'test':'test'}).content http://persianwhois.com نقل قول لینک به دیدگاه به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ارسالهای توصیه شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .
توجه: strong> مطلب ارسالی شما پس از تایید مدیریت برای همه قابل رویت خواهد بود.