More Related Content
More from Takuto Matsuu (8)
Twitterで食材をつぶやくとオススメ料理を紹介してくれるbot「recipetter」やってます
- 2. 会社概要
●
有限会社プラスワンデジタル
●
http://www.p1d.com/
●
東京都渋谷区幡ヶ谷
●
主な業務内容
– サイト企画・制作、プログラム制作
– サーバ管理・コンサルティング
– 原稿制作・編集 :
●
雑誌「日経PCビギナーズ」(日経BP)、
●
書籍「こんなにできるVideoStudio4公式ガイドブック」(MdN)、
●
書籍「ファイルの圧縮・解凍事典」「Windows印刷トラブル110番」
●
「日本のSEはこれからどうなるのか」
●
「これならわかる不正アクセス対策 入門の入門」(翔泳社)ほか、
●
各種マニュアル、商品紹介原稿、導入事例記事など
- 3. recipetterとは
●
Twitter上で動作する対話型bot
●
「@recipetter にんじん ごぼう」とメッセージを
recipetter宛に送信すると、その食材を使用したレ
シピのタイトルとURLを返答してくれる
●
URLをクリックすると詳細なレシピが表示される
●
2009/10/09現在
●
レシピ回答数 23,572
●
フォロワー数 5,570
- 5. recipetterを始めた理由
●
公開したのは2009年3月17日
●
Twitterが流行ってきているようだったので何かbot
を作ろう
●
Twitterは男性ユーザーの方が多そうだったので、
男女で知名度がかなり違うcookpadさんを使ってみ
ると面白いかも
●
単純にタイムライン上に「キャベツ」とか「ジャガイ
モ」とか、そういうものが並んでいると面白いだろう
- 6. recipetterの内部実装
● レシピ情報はcookpadさん(以下、敬称略)を利用させてい
ただいている
● cookpadで検索用APIは用意されていない
● 検索結果をスクレイピングで実装
● 利用規約的に問題なさそうだったので許可なくやっている
● ごめんなさい
● cookpadに負荷をかけないよう可能な限りキャッシュ
● 検索結果が複数ある場合、ランダムにレシピを表示する
● 同じ食材でも毎回異なるレシピを表示
● フォローされてもフォロー返しはしない
● つぶやき非公開の人からの問いかけは受け取れない
- 7. recipetterの特徴と利用者の反響1
●
レシピが見つからなかった場合、たまに辛口返答
●
「その組み合わせはどうかと思うよ・・・」→うけた
●
「ありがとう」などに反応するようにした
●
recipetterにお礼を言う人が多かったから
●
実装したのは公開から約1ヶ月後
●
他にも逐次機能を増やしていった
– 「recipetter」に対して「僕を食べちゃダメ!」など会話充実
– 検索数が多くなってきた食材をHOT食材として定期的につぶ
やく
– 1週間に1人しか検索しませんでした食材なども
- 8. recipetterの特徴と利用者の反響2
●
かわいいとの反響多数
●
擬人化された絵を頂いた→壁紙に設定
●
アイコン/口調が功を奏した
●
たまに「中の人」に操られて時事ネタを喋る
●
日食時は「太陽は食べられないんだって!」など
●
もともとはrecipetterがバグった際に、フォロワーの方か
らの指摘に対する返事として行ったもの
●
その後もTwitter検索などでrecipetterへの感想な
どを参考に機能を追加している
- 9. 開発について
●
食材を受け取ってレシピを返すだけの単純なやりと
りができる実装を数日で開発
●
サーバを借りてPerlで実装
●
Twitterとの通信にNet::Twitter::Liteを使用
●
スクレイピングにWeb::Scraperを使用
●
cronで2分毎にTwitterのreplyをチェック
– 未回答のreplyがあればcookpadで検索
●
recipetter、その他のbotを共通のPerlモジュールと
して実装している
- 10. その他作成したbot rerecipetter
●
recipetter のレシピな
ポストを淡々とRTする
●
Twitterの仕様変更で、
フォローしていない人へ
のつぶやきが見れなく
なったので作成した
●
他人のつぶやきを参考
にして料理を考えてい
るという意見を吸い上
げた
- 11. その他作成したbot currykutter
●
「@currykutter ○○で
××を食った」のように
して報告。
●
「@currykutter ○○で
××を食った。おいし
かった」のようにする
と、同様に感想を再ポ
ストする。
●
感想のみを再ポストす
るので何を食べたのか
気になる
- 14. その他作成したbot korekatter
●
「@korekatter ○○買っ
た」で○○を記憶する。
●
「@korekatter ○○買っ
た?」で過去に買った
か確認できる。
●
「見た」や「読んだ」、
「聞いた」などにも対
応。
- 17. botを作成して気づいたこと
●
何よりもまずアイデア
●
対話型で双方向のコミュニケーションをとると良し
●
口コミやRTによる紹介で一気に広がった
●
アイコンや口調で特徴付けが大事
●
キャラクター性を前面に出す
– んだけど、そこにこだわりすぎて使いにくく(または作りにくく)
なってはいけない
– と最近思ってます