Python 在flask服务器上运行几个viber机器人程序

Python 在flask服务器上运行几个viber机器人程序,python,python-3.x,flask,pythonanywhere,viber,Python,Python 3.x,Flask,Pythonanywhere,Viber,我在python上制作了viber机器人。工作正常。现在我尝试在一台Web服务器上运行几个机器人程序。第一个机器人正在工作,但是 第二个不是 app = Flask(__name__) app2 = Flask('app2') @app.route('/', methods=['POST']) def incoming(): viber_request = viber.parse_request(request.get_data()) if isinstance(vibe

我在python上制作了viber机器人。工作正常。现在我尝试在一台Web服务器上运行几个机器人程序。第一个机器人正在工作,但是 第二个不是

app = Flask(__name__)  


app2 = Flask('app2')
@app.route('/', methods=['POST'])
def incoming():
    viber_request = viber.parse_request(request.get_data())
    if isinstance(viber_request, ViberMessageRequest):
         viber.send_messages(viber_request.sender.id,[TextMessage(text='test1')] )

@app2.route('/ff', methods=['POST'])
def incoming2():
    viber_request = viber.parse_request(request.get_data())
    if isinstance(viber_request, ViberMessageRequest):
         viber.send_messages(viber_request.sender.id,[TextMessage(text='test2')] )

def set_webhook(viber):
    viber.unset_webhook()
    time.sleep(1)
    viber.set_webhook('https://myhost.pythonanywhere.com')

def set_webhook2(viber2):
    viber2.unset_webhook()
    time.sleep(1)
    viber2.set_webhook('https://myhost.pythonanywhere.com/ff')



if __name__ == "__main__":
    scheduler = sched.scheduler(time.time, time.sleep)
    scheduler.enter(5, 1, set_webhook, (viber,))
    t = threading.Thread(target=scheduler.run)
    t.start()

    scheduler = sched.scheduler(time.time, time.sleep)
    scheduler.enter(5, 1, set_webhook2, (viber2,))
    t = threading.Thread(target=scheduler.run)
    t.start()


    app.run(host='https://myhost.pythonanywhere.com', port=8443, debug=True)
    app2.run(host='https://myhost.pythonanywhere.com/ff', port=8080, debug=True)
第一个bot响应test1,但第二个bot保持沉默。
如何在一台Web服务器上正确运行几个机器人程序?这两个令牌都是正确的

可能的原因可能是您正在使用:

@app.route('/ff', methods=['POST'])
而不是

@app2.route('/ff', methods=['POST'])
另一方面,你不必创建两个不同的应用程序。
如果您从代码中删除最后一行(app2.run(host='',port=8080,debug=True)),那么您的代码将正常工作,并且您可以访问端口8443上的第一个bot和端口8443上的第二个bot

否,对不起,我有不同的decorator名称。我在帖子中犯了错误。谢谢你的回复