LINE BOT用サンプルコードをコピペして使っても、うまく動作しない!もう終了した「BOT API Trial Account」のコード使ってませんか?
Line Botを作ろうと思い、Google検索でひっかかるサンプルコード的なものをコピーしても、全く動作しないしどこがおかしいのかもわからない。(エラーも出ない)なんて事に遭遇していませんか?
私は、まさにそれにはまりましたので、その原因と対策を記載いたします。
まず、私がはまったのは、匿名チャットボットを作ろうとして、下記の記事をコピーしても、全く動作しないという事象です。
こちらの記事のサンプルコードを、HerokuでDeployした、index.phpとして動作させました。
事前に、別のサンプル的なコードは動作していましたので、Deployがうまくいっていないという事もなく、アクセストークンなども何度も確かめました。
結果、分かった事なのですが、どうもこのサンプルコードは、2016年11月16日に廃止された、「BOT API Trial Account」用のコードのようです。
詳細は、こちらをご覧ください。
つまり、この記事をかいている2017年6月11日時点では使えないという事です。
現在は、LINE BUSINESS CENTERの記事にも書かれている通り、新しく始まった「Messaging API」というサービスで、同様のものが作れそうですが、もしも、「BOT API Trial Account」用に書かれたサンプルコードにある機能を実装しようと思うと、コードはそれに合わせて書き換えなくちゃいけないようです。。。
何がどう変わっているかは、下記の記事にあります。
(これだけでコードの書き換えが完全にできるかどうかはわかりませんが。。。ひとつの目安として。。。)
もし今からLINE BOTを作ってみようという方で、まずはGoogleの記事にあるサンプルコードをコピペして使ってみようという方は、そのコードが、「BOT API Trial Account」時代のもの(2016年4月7日~2016年11月16日)でないか確認しましょう。
簡単に見分ける方法は、POSTの送信先が、https://trialbot-api.line.me/になっていたら、「BOT API Trial Account」時代のソースなので、今は使えません。
現在使える、「Messaging API」は、POSTの送信先が、https://api.line.me/になっています。
APIの使い方については、LINE BUSINNES CENTERに詳細があります。
https://devdocs.line.me/ja/#messaging-apidevdocs.line.me
ちなみになんですが、LINE BUSSINESS CENTERから、Messege APIの登録をしようとすると、「Developer Trailを始める」という選択肢がありますが、これは、Message APIのアカウントのタイプであって、「BOT API Trial Account」とは関係ありません。(私は、ここでもはまりました)