さわらブログ

さわら(@xhiroga)の技術ブログ

久しぶりにfacebook messengerのチャットボット作って忘れてたこと

CIの勉強と便利ツール作成を兼ねて、久しぶりにチャットボットを作ってる。 構成はtoanado(pythonのwebアプリ用フレームワーク)+heroku

とりあえずおうむ返しまでできた。多分次回も忘れてることを書いておく。 f:id:hiroga_cc:20170917202951j:plain

便利コマンド

シェル

vi ~/.bash_profile (fb-バックエンド間の通信で使うtokenを設定する) source ~/.bash_profile

heroku

heroku login –app APPNAME heroku log -t –app APPNAME heroku config:set TOKEN_NAME=“token-no-nakami”

忘れていたこと

環境変数の設定周りがあやふやだった。

.bash_profileという、bashが起動時に勝手に読み込んでくれる、ユーザー単位の設定(中身はexportコマンドなど)が書かれたファイルを使う。 起動時に読み込むようにここに書いておく。書き込んだ直後は、source ~/.bash_profileとかで反映する。 sourceコマンドはファイルの中身を忠実に実行するコマンド。

heroku周りもあやふやだった。

pythonを動かすには、Procfileはじめ色々と設定ファイルが必要だった。 前回作ったのがなければまずかった。

facebook-heroku間のつなぎ込みもあやふやだった。

手順はこんな感じ。 facebook->バックエンドの通信のtokenの正解をバックエンド側に設定する。 facebookの開発者向けダッシュボードからWebhooks >> 設定。

それが終わったら、今度はバックエンドからfacebookに返事。 facebookの開発者向けダッシュボードでページのサブスクリプショントークンを取得し、 それをバックエンドに設定。それができたらメッセージを送信。 このフォーマットは面倒なので前に作ったやつを毎回パクってる。

CIについて

今やってるとこなんだけど…herokuとgitはすごく楽チンなんだけど、redmineのつなぎ込みがなんかうまくいかない。 難し〜。