0
我一直在試圖將我的kik api部署到heroku,但它只是不工作。我設置了我的procfile,我的requirements.txt文件,我的runtime.txt文件,並且它在我的機器上顯示爲正常運行。但是,當我在手機上打開kik應用程序並嘗試向機器人發送消息時,不會發送消息,也不會迴應我的消息。通過使用ngrok作爲webhook,我能夠讓機器人工作,並且很好地迴應消息。但是,當我嘗試部署到heroku時,它根本不起作用。作爲參考,KIK機器人使用燒瓶和KIK API編寫的,這裏是我的代碼將kik bot部署到heroku不工作
from flask import Flask, request, Response
import os
from kik import KikApi, Configuration
from kik.messages import messages_from_json, TextMessage
app = Flask(__name__)
BOT_USERNAME = os.environ['BOT_USERNAME']
BOT_API_KEY= os.environ['BOT_API_KEY']
kik = KikApi(BOT_USERNAME, BOT_API_KEY)
config = Configuration(webhook=os.environ['WEBHOOK'])
kik.set_configuration(config)
@app.route('/', methods=['POST'])
def incoming():
if not kik.verify_signature(request.headers.get('X-Kik-Signature'), request.get_data()):
return Response(status=403)
messages = messages_from_json(request.json['messages'])
for message in messages:
if isinstance(message, TextMessage):
kik.send_messages([
TextMessage(
to=message.from_user,
chat_id=message.chat_id,
body=message.body
)
])
return Response(status=200)
if __name__ == '__main__':
# Bind to PORT if defined, otherwise default to 5000.
print('HI')
port = int(os.environ.get('PORT', 5000))
app.run(host='0.0.0.0', port=port)
這裏是我的requirements.txt
Flask==0.11.1
kik==1.1.0
gunicorn==19.6.0
這裏是我的runtime.txt
python-2.7.12
這裏是我的procfile
web: python bot.py
我將webhook變量設置爲heroku URL。當我在本地運行應用程序時,它似乎運行得很好。
任何幫助是極大的讚賞。
日誌說什麼? – lonewaft
@lonewaft我可以截圖日誌,[heroku日誌](http://i67.tinypic.com/be81z9.png)。看起來一切都很好。我只是希望有一種方法來調試它,或者看看爲什麼機器人本地不響應。 – Bob
這些只是部署的日誌,當它在服務器上運行時呢? – lonewaft