FJCT_ニフクラ mobile backend(mBaaS)お役立ちブログ

スマホアプリ開発にニフクラ mobile backend(mBaaS)。アプリ開発に役立つ情報をおとどけ!

mBaaSとチャットボットを連携させてみよう

先日、Facebookの開発者向けイベントf8にてMessenger Platformが発表されました。これを使うことでFacebook Messenger向けにボットを開発できるようになります。

Facebook Messengerに対応したボットの開発については、個人的に開発したmoongift/FBBot-Prototype: Basically facebook bot. The bot send a message same you sent it.を参考にしてもらえれば誰でもすぐに試せるかと思います。今回はこのボットと、mBaaSを組み合わせることでどんな可能性が生まれるのか考えてみたいと思います。

APIコールが簡単にできる

ボットはユーザからメッセージを受けた際、自分たちの持っているデータから何かメッセージを返します。そうしないと常に同じメッセージを返すことになるからです。

その際のデータの出所としてmBaaSが利用できます。ボット開発者は自分たちのデータをmBaaSにアップロードしておけば良いだけです。そうすることで、ボットから呼び出されるWeb APIを開発する手間がなくなります。

会話パターンの管理する

会話のパターンを登録しておいても良いですし、紹介する商品を入れておいても良いと思います。位置情報検索も使えますので、ユーザから送られてきた住所を逆ジオコーディングして位置情報に変換し、その位置情報に合わせたコンテンツを返すこともできるでしょう。

クイズのようなボットを作成した場合、その質問と答えをmBaaS上で管理できます。そうすることでプログラムはあえて変更せず、データをメンテナンスできるようになります。

メッセージを保存する

ユーザとやり取りするメッセージをログとして保存しておく場所にmBaaSは最適です。セキュリティも考慮すると、ユーザを擬似的に作成し(IDとして送信してきたユーザIDが使えるでしょう)、そのユーザしか読めない状態でログを保存します。そうすればユーザとの会話の分析であったり、ユーザ自身にログを提供するといった使い方も考えられます。mBaaSでは写真も保存できるので、バイナリデータの保存場所としても最適です。

プッシュ通知を送ってもらう

一般的にボットはユーザと自動的に対話します。しかし相手がどんな状態でメッセージを送ってきているのか気になるのではないでしょうか。そこでユーザがメッセージを送ってきたら、プッシュ通知で受け取るといった仕組みが考えられます。


mBaaSを使えばデータをクラウドで管理しつつ、ユーザと対話できるボットが簡単に作れるようになります。自然な対話のためには自然言語解析を行うAPIや、逆ジオコーディングを行うAPIと組み合わせて使うのが良さそうです。

オリジナルボットを作る際にはぜひmBaaSと組み合わせてみてください。