SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

LINEで始めるアプリ開発

LINEでメッセージの送受信を行おう! Messaging APIの基本的な使い方から解説

LINEで始めるアプリ開発 第3回

  • X ポスト
  • このエントリーをはてなブックマークに追加

 今回は、LINEにおけるメッセージの送受信を行うMessaging APIの簡単な使い方について紹介していきます。

  • X ポスト
  • このエントリーをはてなブックマークに追加

Messaging APIの概要

 LINEでチャットメッセージの送受信をするためには、Messaging APIを使って行います。Messaging APIを利用したメッセージの送受信でのシステムとの関係は図1のようになります。

図1:LINE Messaging APIでの処理の流れ
図1:LINE Messaging APIでの処理の流れ

 Messaging APIではチャットメッセージだけではなく、LINEでの友だち登録や、ブロックをした際もメッセージを受信します。

 また、メッセージの送信ではテキストだけではなく、リンクやボタンなどを含んだメッセージ形式も可能です。そして、それらの操作イベントも同様にメッセージとして受信します。

 送信タイミングという観点では(1)のようなサービス側が任意のタイミングで送信する場合と、(2)のようにメッセージを受信したタイミングで返信する場合があり、これらでは利用するAPIが異なります。そして、利用料金にも関係しますので、この違いは必ず理解しシステムを作る必要があります。

LINEでメッセージを送信する際の利用料金について

 LINEでメッセージを送信する際には、表1のような料金プランに応じた送信料金がかかります。ただし、2023年6月1日に料金プランの改定を予定している旨の告知があるので、実際にサービスとして利用することを想定している方はご注意下さい。

表1:料金プラン(2023年2月20日現在)
プラン名 固定料金(月額) 無料メッセージ通数 追加メッセージ料金(税別)
フリープラン 0円 1,000通 不可
ライトプラン 5,000円 15,000通 5円
スタンダードプラン 15,000円 45,000通 〜3円

 メッセージ送信での1通とは宛先人数×メッセージ数になります。つまり、1000人の宛てにメッセージを1回だけ送信する場合でも1000通になります。従って、頻繁に販促メッセージなどを送る場合には送る対象の数と頻度などからプランを考える必要があります。

 ただし、送信するすべてのメッセージが料金としてカウントされるメッセージではありません。

 基本的な考え方としては、図2の(1)のようにサービス側から任意のタイミングで送信するメッセージ送信は料金がかかるメッセージとしてカウントされます。

 一方、(2)や(3)のように利用者からのメッセージ送信やアクションに応じて返信メッセージの送信では料金がかかるメッセージにはカウントされません。

図2:メッセージ通数にカウントされる場合とされない場合の基本的な考え方
図2:メッセージ通数にカウントされる場合とされない場合の基本的な考え方

 つまり、電子メールやPUSH通知のような利用者への喚起目的で送信するメッセージに対しては料金がかかりますが、チャットBotアプリのような操作系のメッセージでは料金がかからず構築が可能です。

必要なシステム情報と設定

 実装を始める前にLINE Developersコンソールから、図3の(1)のチャネルシークレットと(2)のチャネルアクセストークンをあらかじめメモをしておいてください。

 また、まだMessaging API用のチャネルを作成していない場合には、初回記事を参照し作成してください。

図3:Developersコンソール上で必要な情報
図3:Developersコンソール上で必要な情報

 また、(3)では受信するメッセージを受け取るサーバを指定します。設定する際には必ずhttpsになるのでご注意下さい。

メッセージを送信する

 サービス側での任意のタイミングでメッセージを送信する場合には表2のような方法があります。

表2:メッセージの送信方法
送信方法 説明
プッシュメッセージ 特定の1人に対してメッセージを送信
マルチキャストメッセージ 複数の指定したユーザに対してメッセージを送信
ナローキャストメッセージ 条件で対象を絞りこんでメッセージを送信
ブロードキャストメッセージ すべての友だちに対してメッセージを送信

 ただし、ナローキャストメッセージは、一定数以上の友だち登録がない場合には利用できません。そのため、ある程度、利用者数が多くなってから利用してください。

 また、事前に実際の送信数などが把握できないことからも利用するには少々難しいところがあります。連携しているシステム側でユーザ情報などを持っている場合には、それらの情報から対象を絞ってマルチキャストメッセージで送信することが、筆者の場合には多いです。

次のページ
ブロードキャストメッセージを送信する方法

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
LINEで始めるアプリ開発連載記事一覧

もっと読む

この記事の著者

WINGSプロジェクト 小林 昌弘(コバヤシ マサヒロ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/17654 2023/04/28 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング