私はkikのapiをherokuにデプロイしようとしていましたが、動作しません。私は自分のprocfile、requirements.txtファイル、私のruntime.txtファイルを設定しました。それは私のマシン上でうまく動作しているように見えます。しかし、電話でkikアプリを開いてボットにメッセージを送信しようとすると、メッセージは送信されず、メッセージが返されません。 Webhookとしてngrokを使うことで、ボットを動かしてメッセージをうまくエコーすることができました。しかし、私はherokuに展開しようとしたときに、まったく動作しませんでした。参考のため、KIKボットは、フラスコとKIK APIを使用して書かれている、ここに私のコードここkikボットを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
ここに私のプロファイルです
web: python bot.py
webhook変数をherokuのURLに設定しました。アプリケーションをローカルで実行すると、うまく動作しているようです。
すべてのヘルプは大歓迎です。
ログには何が表示されますか? – lonewaft
@lewewaftログ[heroku log](http://i67.tinypic.com/be81z9.png)をスクリーンショットすることができます。すべてがうまくいくように見えます。デバッグする方法や、ボットがローカルに応答していない理由を確認する方法があれば嬉しいです。 – Bob
これはデプロイメントのためのログに過ぎません。サーバーで実行している間はどうでしょうか? – lonewaft