LoginSignup
9
3

More than 3 years have passed since last update.

【鈍器!?】LINEAPIが詰まりまくった、LINEAPI実践ガイドを読んでみた!

Posted at

LINEAPI実践ガイドとは?

LINE APIに対する深い理解や高い技術力があり、コミュニティに影響力を持つエンジニアとしてLINE株式会社が認定した「LINE API Expert」および「LINE Developer Community」の有志メンバーにより執筆された書籍であり、LINEAPIでできることが事細かく書かれていたり、実装に関する知見が豊富に書かれている本。

amazonで購入する※アフィリとかじゃないよ。

ということで、LINEAPIに関して専門的な知識と技術を持っておられるLINEAPIExpertのみなさんが書かれた最新の知見が詰まりまくった本を読んでみました。

この記事の対象者

・LINEAPIを使ったプロダクトを開発している方
・これからLINEAPIを使った事例が知りたい方
・LINEAPIの応用事例や開発知見が欲しい方

おことわり

本記事はこちらのイベントで抽選配布に当選し、景品としていただいた物を読んだレビュー記事です。
また、本記事の著者はLINEAPIをある程度理解しており、全くの初心者ではないことをご理解ください。ツイートを主にまとめながら書き進めていきます。

第1章

はじめてのLINEAPI
- さまざまなLINEのAPIを体験する

読んだ感想

LINEAPI未経験者を対象にAPIの紹介や実際に手を動かしながらLINEAPIを試せる構成となっていました。しかしこれが本気で試せるようになっていて、第一章だけでLINEBot/CLOVA/LIFF/LINEPayまでもを体験することができます。
あえて本文の実装については触れませんが、本当に一章だけで一気にAPIに関する理解が深まると思います。
flexメッセージやLIFFについての説明も詳しく書かれていました。

 リッチメニューを簡単に設定する(個人的おすすめ)

リッチメニューマネージャー
リッチメニューエディタ
リッチメニュー を自前で実装しようとすると、何度もAPIを叩く必要がありますが、これらのツールを利用することで簡単に実装することができます。

第2章

LINEログイン
- AWS Lambdaを使ったLINEログインの実装

ここからは高校三年生の(@shinbunbun_)のターン♪

読んだ感想

この章はお友達の@shinbunbun_が書いたAWSを使ってLINEログインを実装する章です。
様々なWebサービスを展開していく中で、アカウント登録というのはユーザーの離脱率を大きくあげるポイントとなってしまいます。沢山のユーザーがいる、LINEログインをサービスに実装することによって、気軽にサービスを利用することができます。ソースコードの解説も丁寧に書かれていますし、自分で手を動かしながら、試せるのはとても勉強になりますし、おすすめです。

第3章

LINEBot
- Microsoft Bot Framework Composerでローコード開発

読んだ感想

この章で取り上げられている、Microsoft Bot Frameworkは、C#やNodejs,Python,Javaなど幅広いSDKが用意されており、高度なボット開発ができます。さらに、Bot Framework Composerを使うことでほぼGUIだけで品質の高いボットを開発することができるという、誰もが活用できるサービスです。

この開発を行うには多少なりのgitコマンドなどは利用しなければなりません。しかし、全てのツールのインストールやAzureのアカウント作成の手順から紹介が始まります。コマンドも、専門知識も特にわからなくても本を読み進めるだけで、自分だけどBot開発を行うことができます。何か今直ぐにでも作りたいBotがある方にはおすすめかもしれません。
応答処理を全てGUIで開発することができるので、プログラミングをしたことがない方でも学習コストを押さえながら開発することができます。
また、このサービスで開発したBotはSlackやMicrosoft Teams,Skype,Facebook Messengerなどにも連携することができます。連携する際の形式は異なりますが、全てAzure内でよしなにやってくれるので一度作ってしまえば応用の幅も一気に広がると思います。
特にチャットボットなどは求められるシーンが様々なだけに、いろいろなサービスと連携できるというのはとても便利だと思います。

そして章の最後にはLINEbotのメッセージをテキストから写真に変えてみたり、スタンプに変えてみたりと、応用を学ぶことができます。他にも、ユーザーが送ってきた画像に対してどのような処理を行うのかといったことなどにも言及されており、LINEAPIの応答に関するヒントが盛り沢山です。

第4章

LIFF(LINE Front-end Framework)
- JavaScriptとC#で作るTodoアプリケーション

読んだ感想

この章ではC#でSPA開発ができるblazor webassemblyを利用し、LIFFアプリケーションを開発する章です。と思いきや、同じアプリをJavaScriptでも実装をしてみたという二本立てになっています。
それぞれフロントエンドもバックエンドも作り方が詳細に書かれており、非常にわかりやすい説明がされています。こちらの章はプログラミング初心者の方向けというよりは、ある程度の開発経験がある方向けといった内容です。
LIFFアプリケーション開発は今後どんどん盛り上がっていくであろうミニアプリの準備段階でもありますので、興味ある方は是非この章を読み、LIFFの知識を深める事をおすすめします。
LIFFやミニアプリに関してはデベロッパーグループで沢山イベントも開催されておりますので合わせてご覧ください。

とても個人的な感想ですが、LIFFアプリは毎月のペースで大きなアップデートが現在進行形で行われています。実際に本日も興味深いアップデートが公開されました。

先日行われたLINEDEVDAY2020のLIFFに関わるセッションでもv3に向けて開発が行われているとの事でしたので今後の進化から目が離せませんね。

第5章

LINECLOVA
- Azure functionsおよびTypeScript✖︎VS CodeによるCLOVAスキル開発

読んだ感想

この章は本当に知見の塊の章です。記事の内容はAzure functionsとC#で開発するCLOVAスキルの実装方法について書かれています。最後の方にはJSやTSでの実装方法についても書かれていますので、幅広い方が楽しめる内容になっています。この章では前述のCLOVAが登場する章よりもさらに細かく開発に使うメゾットであったり、専門用語であったりの説明が書かれています。CLOVAについて深い知見を求めている方には是非読んでいただきたい内容です。
また、個人的にとても面白かったのは「無限ループ」について言及されている事です。これは特に公式ドキュメントに書かれている訳でもなく、思いっきりハックした内容だと個人的に思っています。これを応用する事でスキルを対話としての応答ではなく、待機状態にし、好きなだけ喋らせるというのはとても興味深かったです。
「無限ループ」に関して、著者の@himarin269さんに直接聞いてみました↓


LINEAPIに関してはある程度の知見を持っていたはずでしたがこれに関しては私も初めて知りました。ただし、ストア公開するスキルには向いている実装とはとても言えないので注意が必要です。これぞ「実践ガイド」って気がしました。

第6章

LINE Beacon
- M5AtomをLINE Beacon化しよう

読んだ感想

LINEBeaconは実際に導入されている事例が身近にあると思います。具体的には「店内に入ると公式アカウントからクーポンが届いた」「近くに自動販売機があるよと通知がきた」「自販機とLINEでポイントが溜まった」などです。Beaconの範囲の中にいるユーザーに対してイベントを起こすことができます。以前までは、Beaconの範囲に入った時と出た時で2種類のイベントを取得することができたのですが、2020年末で、範囲を出た時のイベントは廃止されます

そんなBeaconとLINEbotを実際に連携してみる&メッセージを送ってみるといった実装を試すことができる章となっています。私も以前Beaconの実装を行ったことがありますが、比較的簡単に実装することができるのでとてもおすすめです。
範囲に入ったかどうかは取得できますが、そのユーザーが具体的にどの位置にいるかまではわからないのは実装を行う前に知っておかなければいけない事項です。それを踏まえた上で、実際にBeaconの近くにこないとできない事を実装したい場合は是非参考にしてみるといいのかなと思います。
MacOS・WinOSどちらの方法も記述されているので誰がみてもわかりやすい章となっていました。


LINENotifyで通知を送る方法についても書かれています。

第7章

ハードウェア連携
- ペットのトイレ管理デバイスおよびLINEPay対応ドリンクバーの開発

読んだ感想

この章はザ・事例という事で実際にLINEAPIを応用し、どのようなことができるのかといった事例をみるができます。
一つ目はIot✖︎LINEの事例で、センサーが反応したらLINEを送るといったことの実装事例をみることができます。
実際に家などに温度センサーや、モーター、カメラなどを置いて、それをLINEと連携するというのはとても活用の幅が広がると思います。また、ハードとセンサー類の開発は全てGUI(本書ではUIFlow)、ビジュアルプログラミングを用いた実装が紹介されており、プログラミングがよくわからない人でも、見よう見真似でブロックを積み上げることで開発することができます。
LINEとIoTを掛け合わせて何かをやってみたい方は是非参考にしてみる事をお勧めします。

二つ目の事例はLINEPAYとLINEBotとハードを掛け合わせたまたまた応用の事例です。著者である@sumihiro3が作られたLINEPAYドリンクバーの最新版の紹介がなされています。以前LTをされていた時の資料がごちら↓
https://speakerdeck.com/sumihiro3/line-clova-drink-bar-clova-sukirudedai-duo-ni-dorinkubawocao-zuo-suru

また、GCPの開発知見も豊富にあったのでとても参考になると思います。

まとめ

こんな感じでざっとLINEAPI実践ガイドに書かれている事をまとめる&私の感想を書いてみました。
少しお値段は高いものの、内容はそれ以上に濃縮された、とても読み応えのある一冊だなと思いました。
ただ、一つ思ったことは、「入門」ではなく「実践」だということです、"何も知らない"方向けに書かれている章ももちろんありましたが、"応用"や"開発tips"といったある程度開発経験のある人向けで書かれている章も多かったです。
それだけ幅広いみなさんに楽しんでもらえる一冊なのではないのかなと思いました。
LINEAPIを活用した知見が欲しい方、また、新たなプロダクトを考えておられる方は是非一度、近くの店頭もしくはamazonへ。電子書籍版も発売されていますので、そちらも合わせてご覧ください。

この記事はSGGアドベントカレンダー1日目の記事になります。

9
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
3