ガジェット通信 GetNews

見たことのないものを見に行こう

Bot開発のエキスパートに聞いた!プログラミング初心者こそChatbotを開発すべき理由とは?_[PR]

DATE:
  • ガジェット通信 GetNewsを≫

2017年、Chatbotイヤー到来!

※本企画はLINE株式会社の提供でお送りします。

こんにちは、池澤あやかです。

テクノロジーの流行りには積極的に乗っていくスタイルを貫いています。
というわけで、今回はChatbot(チャットボット)がテーマです。

2016年から今年にかけて、FacebookやLINE、MicrosoftなどのプラットフォーマーからChatbot APIがリリースされました。

2017年はChatbotイヤーといわれるくらい盛り上がってきましたね。

この機会にオリジナルのBotの作成に挑戦してみた方も多いのではないでしょうか。

もちろん、私もその一人です。公開されているAPIドキュメントやサンプルプログラムを見れば、シンプルなBotなら簡単に作ることができます。

今回お世話になるのは、LINE株式会社さん。

LINEからは、自分たちのサービスやプログラムとLINEトークルームを連携できる『Messaging API』がリリースされています。このAPIを利用すれば、個人でも簡単にLINE BOTを制作することができます。

LINE BOTは、テキストで返事をするだけでなく、画像やムービー、音声、地図を用いることができたり、入力インターフェースとして、ボタンやカルーセルなど便利なUIを用意していたりするのも特長です。

豊富UIで活用の幅も広がりますね。(公式サイトより引用)

Chatbotは本当に流行るのか?

「Chatbotこそ次世代のインターフェース」として、FacebookがMessengerに対応したAPIをリリースしたことがきっかけとなり、現在はブーム真っ只中ともいえるChatbot。

果たして、本当に新しいインターフェースとして社会に定着していくのでしょうか?


「そもそもなんですが、Chatbotは今後も流行ると思いますか?」


「コミュニケーションの中に新しい価値を作るというところで流行ると思います。Webは発信側と読者やユーザがハッキリしているんですが、チャットはコミュニケーションなのでユーザ同士の双方向のやりとりの中にいろいろな価値を持ち込めるのが面白いですよね。

僕自身、社員の出退勤を記録するためのBotから、グループチャットで社員同士の会話にちゃちゃをいれてくれるBotまで、いろいろと開発してきました」

増井雄一郎さん(株式会社トレタCTO)。『Titanium Mobile』の伝道師としての活躍や、「MobiRuby」「wri.pe」などの開発者として知られる。お風呂の中でゴリゴリプログラムを書く「風呂グラマー」としてもお馴染み。


「そもそもBotってどのように活用されている方が多いんですかね?」


「ぶっちゃけ、まだまだ模索している段階ではありますね。なので、我々としても『LINE BOT AWARDS』を開催して社外からもいろいろなアイディアと募る、といったような試みもしてみました」

長谷部良輔さん(LINE株式会社 エンジニア)。LINE GAME Platformやデータ収集基盤の開発に携わった後、LINE Notify、LINE カスタマーコネクトといったLINE BOTにまつわる開発担当している。


「ただ、Botに話しかけないと会話が始まらないものだと、ユーザーに忘れ去られてしまうものも多いんですよね。なので、うまくPush機能も活用して、Bot側からユーザに絡みにいってくれるものが増えてくれると嬉しいです」


「僕は何かしらのアンケートをするためにBotを利用するのも面白いかなと感じました」


「弊社にもインターン向けのBotがあるのですが、Button UIを利用してクイズを出したりと、面白く活用しています」


「企業の中で、一般の方にも活用されていると感じるBotはありますか?」


「僕の周りでは、ヤマト運輸さんのBotはかなり活用していただいています」


「ヤマト運輸さんのBotは私も使ってますね。荷物がいつ届くのか事前に知らせてくれるし、再配達のお願いも楽だし、すごく便利です」


「僕も使ってます。便利なだけじゃなくて、語尾に『にゃん』をつけて話しかけると、ちゃんとねこ語で反応してくれたり、愛嬌があっていいですよね」


ヤマト運輸のLINE公式アカウント


「Botって既存のUIと比較すると、想定外の入力が多そうなイメージがあります。そういうところにも柔軟に対応しなきゃいけないと思うと、大変なんじゃないですか」


「ヤマト運輸さんでもそうですが、リッチメニューを入力の代わりに使っていることは多いです。LINEカスタマーコネクトのような質問Botですと、AIを用いてうまく対応できるようにしています。それでも対応できないときは、オペレーターに切り替えています」

Bot開発は、プログラミング初心者にこそオススメ


「プログラミング初心者で『何から始めればいいですか?』という人に、昔は『自分のWebサイト作るのがいいんじゃないか』ってアドバイスしていたんですけど、最近は『初心者ならChatbot作りなよ』って言っています」


「そういえば、私がプログラミングを始めたのは6〜7年前なのですが、Webサイト作って勉強してましたね(遠い目)」


「初心者にBot開発を勧める理由はなんですか?」


「Bot開発は、チャットっていう多くの人にとって身近なものを使っているのに、アプリを開発するより難易度が低い。それに、APIも扱うし、Webアプリケーションと同じ言語で実装できるし、最終的には何かしらのサーバーの上で運用する必要があるから、プログラミングの基礎が詰まってるんだよね」


「最初は簡単な返答Botから始められるし、最終的にはどこまで人間に近づけるかってことになりそうだから、奥が深そう」


「あと、LINE BOTを用いて開発する場合は、テキストで返答するだけじゃなくて、他のUIにもチャレンジしてほしいです。あとはLINE BOTはビーコンにも対応しているので、これと組み合わせても面白いかも」


「ビーコンを使ったら何ができるんですか?」


「近づいたことを検知できるので、ユーザーが特定の場所に近づいたらメッセージをプッシュするという使い方ができます。例えば、とある衣料品チェーン店では店舗の近くに近づいたらクーポン情報等をLINEに送信してます」

LINE社内にも、KIRINと共同で展開するビーコンを使った自動販売機「Tapiness」が設置してあります。

Botを作るのが楽になる?!オススメの開発ツールを聞いてみた!


「私もときどきBotを作るのですが、みなさんがどんなツールやライブラリを使ってBot開発をされているのか気になります」


「例えば、私はBotを動かすために『Heroku』が便利でよく使ってるんですけど。サーバー構築せずに、簡単にアプリケーションを動かせるから」

Herokuは、数行コマンドを叩くだけ、もしくはGitHubと連携させるだけという、少ない手数でアプリケーションをデプロイできるのが特長。


「でも、修正するたびにアップロードするのがいちいち面倒くさかったり、デバックしづらかったりで困っています。ローカルで開発できたらなと」


「そういうときは、僕は『ngrok』を使いますね。このツールを使うと、仮のURLが発行されて、ローカル環境で立てたサーバーに外部からアクセスできるようになります


「ngrok便利ですよね。Messaging APIはhttpに対応していないので、https形式のURLを発行してくれるのも嬉しいところです」


「同じ理由でHerokuも便利ですよね。自分でSSL証明書を準備しなくていいから」


「一応、無料のSSL証明書『Let’s Encrypt』などにも対応しているので、ご自身で所持しているサーバーでも無料で使えるかとは思います」


「あとは、『RequestBin』も便利。実際にメッセージを受信した時に、サーバー側にどういうリクエストが来ているのかを確認することができる

RequestBinのトップページ。使い方は、まず「Create a RequestBin」というボタンを押して、ユニークなURLを発行する。 Botアカウントの「LINE Developers」ページのWebhook URLに先程のURLを設定。 BotにLINEでメッセージを送り、RequestBinの先程URLを発行したページをリロードすると、どんなリクエストが来たかを見ることができる。


「ここで挙がったツールは、Bot開発以外にも活用できそうですね!」

さあ、Botを作ってみよう!


「Bot開発は面白いですよ。自分の生活に密着したアプリを手軽に作れるし、簡単に友達にシェアしてフィードバックもらえますから。Botを作ったことがない人は、ぜひ一度挑戦してみてほしいです」


「API自体まだ公開されてから日が浅いので、日々、ユーザの方からの反応を受けて改善しています。皆さんからの意見をどんどん反映したいと思っているので、ぜひLINEの公式Twitterまでご意見ください。質問であれば、GitHubのQ&A用レポジトリにissueを立てていただいても!」

次回は、なんと、私、池澤の書いたChatbotプログラムを増井さんがコードレビュー!?

どうしたらシンプルなBotをより面白く活用できるプログラムが書けるのかについて考えていきたいと思います。

増井さん、長谷部さん、ありがとうございました。

カテゴリー : デジタル・IT タグ :
CodeIQ MAGAZINEの記事一覧をみる ▶
  • 誤字を発見した方はこちらからご連絡ください。
  • ガジェット通信編集部への情報提供はこちらから
  • 記事内の筆者見解は明示のない限りガジェット通信を代表するものではありません。