すっごい前にこんなメールがLINEからきました。
いつもLINEをご利用いただきありがとうございます。
このメールは、LINE BOT API Trial Accountをご利用いただいている皆様へお送りしています。〜 中略 〜
つきましては、旧API トライアルアカウント「BOT API Trial Account」をお使いの皆さまには、
新しいトライアルアカウント「Developer Trial」のご利用をお願い致します。
「Developer Trial」アカウントはLINE Business Centerからお申込みいただけます。
LINE Business Center : https://business.line.me/〜 中略 〜
なお、ただ今ご提供させていただいている「BOT API Trial Account」につきましては、
11月16日にアカウントの完全削除を予定しております。〜 中略 〜
ムムム、こ、これは僕のcoutry-botが削除されてしまう。
あの、僕と妻の2人しか友達のいないcoutry-botがぁっ!! … 今すぐ救済せねばぁぁ!!
と、思ったのは去年の話で既にcoutry-botは動かなくなっていました。
それでもいいかなぁなんて思っていたのですが、ちょっと腰を上げれば動かせる事が出来るのに、それをやらないのもアレじゃないですか。
というわけで、せっかく作ったbotなので新しく作り直してみることにしました。
※ ちなみに前作ったのは これ です
そして、前回と同じじゃつまらないということで以下を使って書きました。
- Lumen – PHP Micro-Framework By Laravel
- LumenはHelloWorldしかやってなかったのでよい勉強になりました
- Lumenのバージョンは
Lumen (5.3.2) (Laravel Components 5.3.*)
- Messaging API SDK (LINE提供のSDK)
- LINE API Reference
- リファレンスはこちらです
作ったもの
以下2つの機能をメインに持っています。
国名を探ねられたら答えます
- 日本語で国の名前をつぶやかれたら以下の情報を返します
- 国旗
- 首都名
- Wikipediaへのリンク
- Google Mapsへのリンク
クイズ出来ます
- クイズと言われるとクイズ(4択)を出します
- quiz でも反応します
- クイズに正解すると以下を表示し、
- 首都名
- Wikipediaへのリンク
- Google Mapsへのリンク
- もう一度行うかどうかのConfirmを表示します
- はいを選択するともう一度クイズがはじまります
おまけ
おまけとして、君の名は か、 who とつぶやかれるとプロフィール情報を表示します。
大体こんな感じで、以前の機能 + クイズ という構成になっています。
自分の息子(幼稚園年長)にやらせた所、かなりハマっていたので子供は楽しめると思います。
フレンズになってよ
ソース
ソースはGitHubで公開しています。
shimabox/line_country_bot: Sample using the LINE of Messaging API
実際に動かすには、Line Developer Trial アカウント への登録とSSLサーバが必要になりますが、そこはいい記事がたくさんあると思いますので適宜ググってください。
おわりに
とりあえず、せっかく作るのだったら子供が楽しめるものを基準に考えて作りました。
クイズ正解の後にもう一度やるかの選択ボタン(Confirm)を出したのはかなり効いたようで、長男は連続でやり続けています。
(このAPI、フリーアカウントだがな!!)
- 親がクイズと入力する
- クイズが始まる
- テキスト入力は閉じてあげる
- 子供に渡す
はい。これでよいです。
2017/02/27追記
リッチメニューを使ってみました
リッチメニューというものが使えるみたいだったので、導入してみました。
※ メニューに色々な選択肢を増やすことが出来るまさに書いたとおりのリッチメニュー
2017/02/27追記 ここまで
課題としてはここらへんがあるかなと個人的には思っています。
- クイズが完全にランダムなので、色とかそのへんで国旗を覚えていると簡単に答えられてしまう
- 国旗が似ているグループを作ったりしたほうがよいかも
- 国旗だけだと飽きるかも
- 首都名から国名を答えるクイズとかよいかも
まぁ、課題はあるにせよ、最初に子供が楽しめるものを作るという目標に対しては、家に帰ったらすぐ 国旗クイズ!国旗クイズ! と長男に急かされる事を考えるとその目標は果たせたのかなと思います。
作って良かったです。
参考にさせて頂きました
- LINE Messaging API を試してみた / Push Message で 絵文字を送る
- 絵文字をメッセージで送る処理を参考にさせて頂きました