噂されていたFacebook MessengerのBotに関する情報がf8で公開されました。
Messenger Platform Betaといいます。すでに公開されており、Facebook Messenger上で動くBotを実装することが可能です。
このポストでは、大体5分ぐらいでFacebook Messenger Platformの概要がわかることを目指します。また、Linebotとも比較できればと思います。
#Facebook Messenger Platformとは
Messenger上でBotを作るAPIや、Botを見つけられるようにするための概念です。
サラッとしか見ていませんが、Linebotを作るのと同じ程度の労力で作成できそうです。
Facebook Messenger PlatformはSend/Receive APIを提供し、そのAPIを使うことによってBotの実装をすることになります。
メッセージを送信する場合はSend APIを使い、
ユーザのメッセージを受信するにはWebhookを使います。LinebotではCallbackと呼んでいますね。
#Messenger Platformが送信できるもの
Messenger PlatformのBotが送信できるのは、単なるテキストだけではなく、
画像や、テンプレートを作成してそのフォーマットでメッセージを送れるようです。これはLinebotもそうですね。
また、送信するメッセージにはボタンを追加できます。
また、例えば検索結果の一覧はこのようなカルーセルのようにメッセージを表示できるようです。
すでにこれらのBotが動いているようなので、実際につかってみてはどうでしょうか。
#Messenger Platformのユーザの入力
ユーザは、
- Text入力
- 提供されたボタンでの入力
の2つの方法でBotに命令を伝えられるようです。
よって、ユーザはすべての情報を自然言語で伝えなくてもいいし、Bot提供者は、想定している反応に対してボタンを提供することができます。(上の画像のView DetailがボタンUI)
Messenger PlatformのBotは、CLIのようなコマンドで命令を出す、というようなコンセプトではなく、このようなボタンUIを活用してスムーズにコミュニケーションをできるようにすることを進めているようです。
#Messenger Platform事例
##SPRING
EC。カルーセルの例の写真に写っている画面がSPRINGのBot。スニーカーを買ったりできるらしい。
##Poncho
面白い方法で天気を教えてくれるBot。会話を楽しんだりもできるらしい。
##CNN
ユーザの履歴から推薦するニュースを選定して、カルーセルで表示。また、"Get a summary"で概要を見たりできる。
#ユーザコントロール
ユーザはBotをブロックできるようです。
ブロックされないように無駄な情報を送るべきではないとのことでしょうか。
去年のf8から、Messengerチームの方が頻繁にSPAMメールの話をしているので、そういうことなのでしょうきっと。
#Botストアはどこへ?
Botストアなるものもできると言われていましたが、そのような発表はありませんでした。
しかし、下記のような方法でユーザにBotの存在を知らせることができます。
###Facebook Pageにリンクをおく
Facebook PageにBotを関連付けることによって、Botをコンタクトリストに追加を促せるようです。
###Messengerアプリ内検索
Botの名前で検索がかけられるように成るようです。
###Webに配置できるボタン
ボタンをWebに配置して、Botをコンタクトリストに追加を促せるようです。
また、その際にユーザのコンテキストなど情報を付加してバックエンドに伝えることができるようです。
###Messenger Link
ボットを追加するURLを生成できるようです。
#重要なポイント
Botはユーザがオプトインしないとユーザと会話はできないようになっているようです。当然といえば当然ですね。
また、プロモーションや広告をユーザに送ることは禁止されているようです。
#まとめ
ざっくりかつ情報が偏っているかもしれませんが、Facebook Messenger PlatformのBotに関してまとめました。
もうすでに(betaだが)一般公開されているので、Botを作り始めることができます!やってみましょう!
実装面についてもまとめられたらと思います。