Facebook messenger botの作り方と作ってみた

46
facebook messenger bot ののののの ののののの Takaaki Kusumoto @kussuue BOT 祭祭LT 祭2016/05/13 @ 祭祭祭祭祭祭祭祭祭祭

Transcript of Facebook messenger botの作り方と作ってみた

Page 1: Facebook messenger botの作り方と作ってみた

facebook messenger bot の作り方と作ってみた

Takaaki Kusumoto@kussuue

BOT 祭り! LT 会! 2016/05/13 @ カラビナテクノロジー

Page 2: Facebook messenger botの作り方と作ってみた

自己紹介

Page 3: Facebook messenger botの作り方と作ってみた

Takaaki Kusumoto

フリーランスエンジニアBlog : http://kussuue.com/

twitter : @kussuue

1982 年生まれ。 Web サイト作ったり、 Android,iOS アプリ作ったりシステムいじったりする人。今年 3 月、東京→福岡へ移住 (U ターン ) しました。

Android , iOS アプリリリースしたりしています!アプリ名 : eigoApp

http://eigoapp-welcome.kussuue.com/

Page 4: Facebook messenger botの作り方と作ってみた

ところで

「 2016 年はチャット bot の年になる」引用: http://www.gizmodo.jp/2016/04/facebook_bot.html

とか言われてますが、、、

Page 5: Facebook messenger botの作り方と作ってみた

facebook bot ってどうやって作るの?

Page 6: Facebook messenger botの作り方と作ってみた

調べてみた。

Page 7: Facebook messenger botの作り方と作ってみた

まずは、

Page 8: Facebook messenger botの作り方と作ってみた

公式ドキュメント

Page 9: Facebook messenger botの作り方と作ってみた

➤ https://developers.facebook.com/docs/messenger-platform

Page 10: Facebook messenger botの作り方と作ってみた

公式ドキュメント読めばいいのはわかった!

けど面倒だから手取り早くざっくり流れを知りたい!

Page 11: Facebook messenger botの作り方と作ってみた

messenger bot の作り方

Page 12: Facebook messenger botの作り方と作ってみた

➤ 1,Facebook developer 登録➤ 2,Facebook ページ作成➤ 3,Facebook アプリ作成➤ 4,Messenger 有効化、アクセストークン取得➤ 5, サーバーを用意する➤ 6, プログラム&デプロイ➤ 7,Facebook Webhooks 設定➤ 8, アプリ登録➤ 9 ,完成

手順

Page 13: Facebook messenger botの作り方と作ってみた

➤ 1,Facebook developer 登録➤ 2,Facebook ページ作成➤ 3,Facebook アプリ作成➤ 4,Messenger 有効化、アクセストークン取得➤ 5, サーバーを用意する➤ 6, プログラム&デプロイ➤ 7,Facebook Webhooks 設定➤ 8, アプリ登録➤ 9 ,完成

Page 14: Facebook messenger botの作り方と作ってみた

➤ こちらのサイトから開発者登録します!          https://developers.facebook.com/

Page 15: Facebook messenger botの作り方と作ってみた

➤ 1,Facebook developer 登録➤ 2,Facebook ページ作成➤ 3,Facebook アプリ作成➤ 4,Messenger 有効化、アクセストークン取得➤ 5, サーバーを用意する➤ 6, プログラム&デプロイ➤ 7,Facebook Webhooks 設定➤ 8, アプリ登録➤ 9 ,完成

Page 16: Facebook messenger botの作り方と作ってみた

➤ facebook のアカウントメニューから「 facebook ページを作成」します。         

Page 17: Facebook messenger botの作り方と作ってみた

➤ 1,Facebook developer 登録➤ 2,Facebook ページ作成➤ 3,Facebook アプリ作成➤ 4,Messenger 有効化、アクセストークン取得➤ 5, サーバーを用意する➤ 6, プログラム&デプロイ➤ 7,Facebook Webhooks 設定➤ 8, アプリ登録➤ 9 ,完成

Page 18: Facebook messenger botの作り方と作ってみた

➤ facebook developer ページのアカウントメニューから「新しいアプリを追加」します。         

Page 19: Facebook messenger botの作り方と作ってみた

➤ 1,Facebook developer 登録➤ 2,Facebook ページ作成➤ 3,Facebook アプリ作成➤ 4,Messenger 有効化、アクセストークン取得➤ 5, サーバーを用意する➤ 6, プログラム&デプロイ➤ 7,Facebook Webhooks 設定➤ 8, アプリ登録➤ 9 ,完成

Page 20: Facebook messenger botの作り方と作ってみた

➤ facebook developer ページのアプリ設定画面で「 messenger 」を選択します。         

Page 21: Facebook messenger botの作り方と作ってみた

➤ Messenger プラットフォームウィザードに従い、進めます!        → Messenger 有効化されます

Page 22: Facebook messenger botの作り方と作ってみた

➤ さきほど作成した facebook ページを選択してページアクセストークンを取得します!

Page 23: Facebook messenger botの作り方と作ってみた

➤ 1,Facebook developer 登録➤ 2,Facebook ページ作成➤ 3,Facebook アプリ作成➤ 4,Messenger 有効化、アクセストークン取得➤ 5, サーバーを用意する➤ 6, プログラム&デプロイ➤ 7,Facebook Webhooks 設定➤ 8, アプリ登録➤ 9 ,完成

Page 24: Facebook messenger botの作り方と作ってみた

➤ Heroku とか AWS とか、、

Page 25: Facebook messenger botの作り方と作ってみた

➤ 1,Facebook developer 登録➤ 2,Facebook ページ作成➤ 3,Facebook アプリ作成➤ 4,Messenger 有効化、アクセストークン取得➤ 5, サーバーを用意する➤ 6, プログラム&デプロイ➤ 7,Facebook Webhooks 設定➤ 8, アプリ登録➤ 9 ,完成

Page 26: Facebook messenger botの作り方と作ってみた

プログラム作って、サーバーにデプロイします

Page 27: Facebook messenger botの作り方と作ってみた

➤ 1,Facebook developer 登録➤ 2,Facebook ページ作成➤ 3,Facebook アプリ作成➤ 4,Messenger 有効化、アクセストークン取得➤ 5, サーバーを用意する➤ 6, プログラム&デプロイ➤ 7,Facebook Webhooks 設定➤ 8, アプリ登録➤ 9 ,完成

Page 28: Facebook messenger botの作り方と作ってみた

➤ デプロイ後に facebook developer ページから Webhooks を設定します

Page 29: Facebook messenger botの作り方と作ってみた

➤ 情報を入力しますコールバック URL : https://<APP NAME>.herokuapp.com/callback

トークンを確認 : 自分で文字列を設定フォロー入力欄 : messages にチェック

Page 30: Facebook messenger botの作り方と作ってみた

➤ 1,Facebook developer 登録➤ 2,Facebook ページ作成➤ 3,Facebook アプリ作成➤ 4,Messenger 有効化、アクセストークン取得➤ 5, サーバーを用意する➤ 6, プログラム&デプロイ➤ 7,Facebook Webhooks 設定➤ 8, アプリ登録➤ 9 ,完成

Page 31: Facebook messenger botの作り方と作ってみた

➤ ターミナルを立ち上げて、以下コマンドを実行します

<Mac の場合 >curl -ik -X POST “https://graph.facebook.com/v2.6/me/subscribed_apps?access_token=< PAGE_ACCESS_TOKEN >”<Windows の場合 >curl.exe -ik -X POST "https://graph.facebook.com/v2.6/me/subscribed_apps?access_token= < PAGE_ACCESS_TOKEN > "

Page 32: Facebook messenger botの作り方と作ってみた

➤ 1,Facebook developer 登録➤ 2,Facebook ページ作成➤ 3,Facebook アプリ作成➤ 4,Messenger 有効化、アクセストークン取得➤ 5, サーバーを用意する➤ 6, プログラム&デプロイ➤ 7,Facebook Webhooks 設定➤ 8, アプリ登録➤ 9 ,完成

Page 33: Facebook messenger botの作り方と作ってみた

作ってみた

Page 34: Facebook messenger botの作り方と作ってみた

➤ YouTube 動画を検索する bot

Page 35: Facebook messenger botの作り方と作ってみた

➤ 開発環境➤ サーバー: heroku

➤ 言語: php

➤ API : YouTube Data API (v3)

Page 36: Facebook messenger botの作り方と作ってみた

ソースコード

Page 37: Facebook messenger botの作り方と作ってみた

時間の都合上、割愛 www

Page 38: Facebook messenger botの作り方と作ってみた

➤ demo

Page 39: Facebook messenger botの作り方と作ってみた

作った bot を一般公開するには・・・

Page 40: Facebook messenger botの作り方と作ってみた

➤ facebook による審査が必要 ポリシーに準拠しているもののみ承認される

➤ 個人的に楽しむ bot ならば気軽に作って遊べる!➤ 一般公開予定ならば公式ドキュメントのポリシーなどをチェックしてから作成したほうがいいかも。

これ!

< 公式ドキュメント >

https://developers.facebook.com/docs/messenger-platform/app-review

Page 41: Facebook messenger botの作り方と作ってみた

作ってみて感じた事など

Page 42: Facebook messenger botの作り方と作ってみた

・ Generic Message template の利用テンプレートを使ったほうが見た目も操作性もいい。

・ Button の利用

・フレンドリーな会話、対話bot だからこそ、人間味のあるフレンドリーなメッセージ文がいい。何気ない会話のやり取りもできるといい。

< テンプレートあり >< テンプレートなし >

← これ

Page 43: Facebook messenger botの作り方と作ってみた

・ facebook ボットエンジンの利用facebook ボットエンジン * を利用して bot の話す内容を教育する。送受信 API と併用可。※ 現在 β 版http://venturebeat.com/2016/04/12/facebooks-bot-engine-lets-you-teach-chatbots-what-to-say-with-ai/

・定期的なメッセージ送信定期的に bot からメッセージを送り、そこからユーザーのアクションを期待したほうがいいかもしれない。 ( アクティブユーザー獲得 )

e.x.) web サイトにアクセスする。買い物する。 etc…

Page 44: Facebook messenger botの作り方と作ってみた

参考サイト

Page 45: Facebook messenger botの作り方と作ってみた

・公式ドキュメントhttps://developers.facebook.com/docs/messenger-platform

・ Facebook が、開発者向けの年次カンファレンス「 F8 」で発表した新サービス・新機能を一挙紹介http://thebridge.jp/2016/04/everything-facebook-announced-at-f8-2016-so-far

・ジャスト 30 分! FB メッセンジャー bot をとりあえず作ってみる手順まとめ - BITA デジマラボhttps://bita.jp/dml/facebookbot_exp

・ Facebook Messenger Bot を使って地震情報を取得する Bot を作成https://www.sho-yamane.me/entry/2016/04/21/180049

・ Facebook Messenger Platform で画像検索 BOT を作ってみた | ITANDI Blog

http://tech.itandi.co.jp/2016/04/facebook-bot/

・ Facebook Messenger BOT の作り方 - 【 metabirds 公式】 metabirds (Botbird/SLMaMe) HELP

http://helpblog.slmame.com/e1578731.html

Page 46: Facebook messenger botの作り方と作ってみた

ありがとうございました。