name_untitledのエッセイ

IT関係で知ったことなどを記事としてあげていきます。内容に不備や質問などあればぜひコメントをよせてください。

OpenShiftでFacebook bot作ってみた。(追記)

最近ボットが賑やかで、面白そうなのでOpenShiftでFacebook botを作ってみました。理由は単純でHeroku使ったことなかったから。

developers.facebook.com

まだ、JSのファイルの定数の切り方とか分からなかったので、ひどい有様ですが、とりあえず流れと、コードを展開します。

Facebook botの開発の流れは大まかに以下の通り

FacebookページとFacebookアプリを作る。②botサーバーを用意し、③Facebookアプリと連動させる。④FacebookアプリにFacebookページを購読させて、Facebookページ宛てに来たメッセージをFacebookアプリが受け取って、返事をするという構成。

 

Facebook上でFacebookページとFacebookアプリを作る。

これは特に説明なし。Facebookページが表に出て、Facebookアプリは裏で代筆するので、Facebookページ名はそれなりに考えた方がいいかも。

botサーバーを用意する。

ここではOpenShiftを使います。OpenShiftのカートリッジは20KBくらいまでらしく、プログラムで容量オーバーしちゃうので、カートリッジでの提供は出来ず、、、。下記のサイトを参考にNodeのカートリッジでアプリケーションを作成。MongoDBのカートリッジも追加しておく。

github.com

 

git clone ssh://XXXXXX  で、ローカルにプログラムをクローンする。

下記のレポジトリのpackage.json、server.js、/public、/config/default.jsがポイント。

default.jsで値をそれぞれ設定する。OpenShiftにpushする。

github.com

 

 Facebookアプリと連動させる。

FacebookアプリにMessengerを追加し、webHookを追加する。

URLはwebHook付で設定。 

FacebookアプリにFacebookページを購読させる

cURLコマンドまたは、Facebookアプリの設定画面より、Facebookページを購読させる。

  

エラーになったら、OpenShiftのログを確認する。

mike-neck.hatenadiary.com

 

Expressって何。

github.com

 

大きな流れはここを参考にしました。

www.slideshare.net

 

出来たらこんな感じ。

f:id:name_untitled:20160919010136p:plain