先日、1万名先着で trial 公開された LINE BOT API が、巷でずいぶん楽しそうに盛り上がっていたので自分も試してみました。
画像検索ボットくん
画像検索ボットくんという BOT を作ってみました。
BOT に話しかけると、その言葉の画像を検索して返してくれます。
LINE BOTようやく動いた。SSLけちったせいでだいぶハマったなあ。。 pic.twitter.com/rHoZEXtu7A
— Ko Takagi (@ko31) 2016年4月11日
始めは画像を返すだけでしたが、そのうち相手の言葉も話せるように進化しましたw
少し言葉を覚えた。 pic.twitter.com/M63dI8srYY
— Ko Takagi (@ko31) 2016年4月11日
たったこれだけの機能ですが、動かしてると何だか止まらなくなってきて色々メッセージ送って遊んでしまいました。手作り BOT はかわいいですね。
ちなみに、画像検索には Bing Search API を使わせてもらってます。使いやすくてなかなか便利な API でした。
ソースコード&サンプル
画像検索ボットくんのソースは GitHub に置いてあります。
使い方はそんなに難しくないかと思うので、よろしければご自由にお使いください。
上記リポジトリから取得した LineBot.php
を配置して、同じ階層に次のような callback.php
を作ります。
<?php
require_once('LineBot.php');
// LINE:チャンネルID
$CHANNEL_ID = '[LINEのチャンネルID]';
// LINE:チャンネルシークレット
$CHANNEL_SECRET = '[LINEのチェンネルシークレット';
// LINE:MID
$CHANNEL_MID = '[LINEのMID]';
// Bingアカウントキー
$ACCOUNT_KEY = '[Bing Search APIのアカウントキー]';
$bot = new LineBot($CHANNEL_ID, $CHANNEL_SECRET, $CHANNEL_MID);
// テキスト送信
$bot->sendText('「%s」デスネ...');
// 画像送信
$bot->sendImage($ACCOUNT_KEY);
あとは、この callback.php
を Callback URL に指定すれば OK です。
画像検索いらねとか、Bing Search API の登録めんどくさいという方は以下のように書けば、テキスト送信部分だけでも使えます。(この場合、受け取った言葉を返すオウム返しBOTのような動きになります。)
<?php
require_once('LineBot.php');
// LINE:チャンネルID
$CHANNEL_ID = '[LINEのチャンネルID]';
// LINE:チャンネルシークレット
$CHANNEL_SECRET = '[LINEのチェンネルシークレット';
// LINE:MID
$CHANNEL_MID = '[LINEのMID]';
$bot = new LineBot($CHANNEL_ID, $CHANNEL_SECRET, $CHANNEL_MID);
// テキスト送信
$bot->sendText('「%s」デスネ...');
なお、BOT の作成には先人の方々の記事を色々参考にさせて頂きました。どうもありがとうございます!
- LINE BOT API Trialでできる全ての事を試してみた – Qiita
- LINE BOT APIを利用した地獄のミサワBOTの作り方 – Qiita
- LINE BOT APIを使ってPythonでLINE BOTを作ってみた – 初老のボケ防止日記
感想
LINE BOT は面白い!そして、普段全然 LINE 使ってない自分でもヤバイ!と思うくらい可能性があるツールだなと感じました。
ネット上のあちこちでもう囁かれてますが、近日 Facebook からも BOT API が発表されるそうですし、こんな簡単に対話側サービスが作れるなんて新しいビジネスの香りもプンプンしますし、BOT 界隈は今後要チェックかもしれませんね。
ちなみに、今回この BOT 動作させるまでに色々と苦労した点もあったので、また後日別の記事でまとめたいと思います。