好奇心 x 探求心 = やじうまゴコロ

だって気になるんだから仕方ないじゃない!?

LINEのMessageing APIを使って図書館の図書を検索してくれるLINE Botを作った

f:id:drpoteco:20180520225805j:plain ちょっと訳あって1週間ほどいつもより2時間シフトして働いていました。
※始発じゃないけどチョー早起き

だから仕事が終わって家に帰ってきても夕飯前とかで時間に余裕が存分にできたので、前から気になっていて「時間がないから」と言い訳にして手をつけていなかったLINE Botを触ってみました。

ネットでLine Botのサンプルを見ると圧倒的に「おうむ返し」Botが多いので、ちょっと他のAPIを絡めて作られていたBotを真似して作ってみました(笑)
真似ることは悪いことではない!!

ボクのプログラミングスキル

一応、Botを作ったボクのプログラミングスキルを書いておきます。全くのプログラミング経験ゼロってわけではないので...
ただ、最近は仕事でプログラムを書くことは全くないです。もう10年以上書いていない。

使ってきた言語はIBM AS400でRPG(ロールプレイングゲームではない)をとっかかりにJavaがメインでした。ライトな作っていてワクワクするようなシステム開発なんかは一切なくて、基本的にはガチガチな基幹システムの開発がほとんど

プライベートではむかーしはC++やDelphaiでWinアプリを作ったりしてました。WEBで何か作る時はPHP一択でしたね。
だからRubyやPythonはやったことがない。けど、ソースは仕事でみたことある感じです。

データベースは色々使いました。
基幹システムの開発がメインなのでほとんどOracle
だからOracleは9iの頃に資格も会社のお金で取らしてもらったりしました。

あとはSQL ServerやSybase(まだあるのか?)なんかもやってました。

MySQLやPostgreSQLは趣味ですね。

結論から行くと今回役立つのは枯れた成熟したPHPの知識のみってところです。

作ったものは「図書館の図書検索」

f:id:drpoteco:20180520224934j:plain

うちの子、本当に本が好きなんです。
どのくらい好きかっていうと小学校でも1年間で本を借りたランキング上位にいるくらい好きなようです。

そして学校の図書館だけでは物足りなくて市の図書館にも借りに行ってしまいます。
毎回5冊くらい借りてきて2時間後には「全部読んだ」と。
誰に似たのでしょうか!?

そんなわが子は市の図書館に本を借りに行ったのに、お目当ての本がなくてガッカリなんてこともしばしば。
そんな子どものために事前に市内の図書館に読みたい本があるのかないのか調べることができるアプリをLINE Botを利用して作りました。

使い方

簡単にサラッと書きます。

友達登録

下のQRコードでLINEの友達登録してください。
50人までしかできないません。
f:id:drpoteco:20180520223711p:plain

https://line.me/R/ti/p/c38XzRQZPd

図書館設定

f:id:drpoteco:20180520224641j:plain
郵便番号を入力して検索対象とする図書館の市区町村を指定します。

図書検索

f:id:drpoteco:20180520224740j:plain 探したい本のタイトルの一部を入力して検索します。
※サーバの問題なのか、たまに動かない...

使用したAPI

今回使用したAPIは3つ。
カーリルAPIとAmazonAPIを使用するにはユーザ登録して専用のKEYを発行してもらう必要があります。
Google Maps Geocoding APIはV3からユーザ登録の必要がなくなったようですね。
確か以前は必要だったはず。

Google Maps Geocoding API

https://developers.google.com/maps/documentation/geocoding/intro?hl=ja

郵便番号から住所情報を取得するために使用します。

カーリルAPI

https://calil.jp/doc/api.html

図書検索した時に指定した市区町村の図書館に該当の図書があるかないかの情報を取得します。
またその図書館のHPにある貸し出し予約のページへのリンクも取得します。

チョー便利。

AmazonAPI

図書検索した本についてAmazonのリンクを取得します。
「探してみたけど図書館にないからAmazonで買うか!!」って人はここから買ってください。
アフィリエイト(笑)
とはいえ、ここから収入が得られるなんて微塵も思ってはいませんので。。。

最後に

LINE Botに関しては情報はネットにたくさん溢れているので迷いながらもゴールは見えてくる感じでした。
使用したAPIに関してもドキュメントがそろっているので特に使い方に迷うことはないと思いますが、カーリルAPIに関してはその他のAPIと比べると流石に情報は少なめです。

時間があったらどのようにAPIを使っているか追記して行こうと思います。
LINE Bot使ってみたいけどプログラムが...って人でも多分できるレベルだと思います。
真似して作ればOKですから。

Copyright© 好奇心 x 探求心 = やじうまゴコロ All Rights Reserved.