Как запустить приложение фляги и приложение Long Poll одновременно в одном проекте - PullRequest
0 голосов
/ 08 февраля 2019

У меня есть бот Telegram, который состоит из двух частей:

  1. Веб-часть, работающая с колбой с ORM
  2. Сам бот

Мне нужноначать опрос только один раз , но кажется, что когда я пытаюсь запустить его, app.py импортирует bot.py более одного раза, и он создает несколько "опросов"

Я пытался вызвать bot.polling() через колбу before_first_request, перемещая bot.polling () назад и вперед в приложение, его обработчики.Я не хочу создавать другое приложение, так как у меня здесь есть мои модели ORM

app.py

from flask import Flask
from telebot import TeleBot

app = Flask(__name__) # flask init

bot = TeleBot(os.getenv('TOKEN')) # bot init

# db init

from views import * # importing views into app to run them
from bot import * # importing bot handlers to run them

bot.py

from app import bot

@bot.message_handler() # message handler
def index(m):
    bot.send_message(m.chat.id, 'Hello')

bot.polling() # needs to be run only once

Я хочу, чтобы оно былоработайте отдельно и одновременно и получите доступ к моей базе данных как с бота, так и с веб-сайта.

...