【初心者が10分で実践するIoT】 Gravioで取得したCO2センサーのデータを元に、LINEに換気を促すメッセージを送ってみた!

こんにちは。Gravio担当の原田です。
今回はGravioで取得したデータを、メッセージングアプリ「LINE」に通知を送れるようにしていきます。今まで利用できていたLINE Notifyは、2025年3月31日をもってサービス終了しています。新しい方法として、LINE公式アカウントのMessaging APIを使用した連携方法をご紹介します。
もちろん、Gravioをご契約のユーザー様にお貸し出しするGravioライトやLED Matrixを用いて、現場で数値を認識することも可能ですが、今回はその場にいない人にも、センサーが設置されている現場の異常が分かる仕組みを作っていきましょう。特にLINE通知は、離れた場所の状況が分かるだけでなく、メッセージとして指示内容を明確に記載することも可能な便利な機能です。
では、さっそく設定方法を解説していきます。
※ちなみにGravioでは、LINE以外にも、SlackやMicrosoft Teamsなどにもメッセージを通知することができます。
センサーデータを元にして、LINEにメッセージ通知を送ろう
イメージしやすいように、どのようにLINEに通知されるのかを初めにお見せします。
今回はCO2濃度が1,000ppmを超えた場合にLINEにメッセージ通知される画面です。

今回行うGravioとLINEの連携は、IT知識のほとんどない新卒1年目の私でも、ひとりで簡単に設定できてしまうので、一緒に設定していきましょう。
必要なもの
- Gravioアカウント
- Gravio Studio 6.0.3(macOS版/Windows版)
- Gravio HubKit 6.0.3(macOS版/Windows版)
- Windows 11もしくはmacOS10.15以降対応PC
- ペアリング済み無償貸出CO2センサー
- LINEを使用する端末
- LINE個人アカウント
- LINE公式アカウント
設定の手順
- LINE公式アカウントの開設
- Messaging APIの設定
- LINE Developersでチャネルアクセストークンの取得
- Gravioの設定
- 複数人への通知
- 応用編
の6項目になります。
難しい手順はないので、ぜひ最後までご覧ください。
以下の手順に入る前に、Gravioの初期設定やセンサーペアリングの手順についてはこちらをご覧ください。
1. LINE公式アカウントの開設
チャネルアクセストークンの取得に必要な手順の一つ目は、「LINE公式アカウント」の開設です。
まずは、こちらからLINE公式ビジネスアカウントを作成しましょう。
LINEの公式アカウントというと、有名人やお店がよく使っているもので、一般の方が運営しているイメージはないかと思いますが、センサーで取得したデータを、メッセージとして通知してくれるのが、今回作成した公式アカウントとなるわけです。
ではそのまま、作成した公式アカウントを、通知を受けたい自分のアカウントに友達追加しておきましょう。
IDはアカウント作成完了時にベーシックIDとして入手できます。

友達の追加方法は、作成した公式アカウントのIDを、ご自身の端末のLINEからID検索すると追加できます。

2. MessagingAPIの設定
さて、アカウントの開設ができましたら、次はAPIの設定です。
API設定などの、アカウントの詳細設定を利用する場合は、LINE Official Account Managerにログインしましょう。

ホーム画面右上にある「設定」を移動し、左側のサイドバーの「Messaging APIを利用する」をクリックします。

ここでは、後ほど使う「LINE Developers」に登録するための開発者情報を入力しましょう。
このLINE Developersから、公式アカウントのチャンネルIDやアクセストークンを発行できるので、ご自身の情報を登録してください。
続いて、プロバイダーの作成です。
ここでは、サービスを提供する開発者や企業の名前を設定します。今回は仮に「Gravio」と設定します。

最後に、任意のプライバシーポリシーと利用規約の登録があります。
APIの利用においてはどちらも空欄のままで進めることができますので、必要に応じて入力してください。

以上で、Messaging APIの設定は完了です。
さて、LINE側の設定の最後のステップ、チャネルアクセストークンの取得をしていきましょう。
アクセストークンを取得するには、先ほどのMessaging APIのページの下部にある「LINE Developersコンソール」ページにアクセスします。
3. LINE Developersでチャネルアクセストークンの取得
まずは、先ほど作成したチャネルを選択します。


「チャネル基本設定」のタブに移動し、ページ下部の「あなたのユーザーID」までスクロールします。
このIDは、後のGravioの設定で使うので、コピーして保存しておきましょう。

※「あなたのユーザーID」の欄が表示されない場合は、Business IDがLINEアカウントと連携されていない可能性があります。
その場合は、Business IDプロフィールから、通知の送信先となるLINE個人アカウントと連携すると表示されます。

次に、Messaging API設定に移動し、ページ下部のチャネルアクセストークン(長期)からトークンを発行します。

このトークンも、後のGravioの設定で使うので、コピーして保存しておきましょう。
これで、LINE側の設定は完了です。
4. Gravioの設定
最後に、Gravioの設定をします。
まず、Gravio Studioを開いて、アクションとトリガーの設定をしていきましょう。
・アクションの設定
新規アクションの追加から、「LINE通知 CO2(1,000ppm以上)」など分かりやすいアクション名で追加しておきましょう。
以前にGravioライトなどでCO2濃度測定のアクションを作成している場合は、そちらを使うことも可能です。

アクション画面に移動しましたら、ステップの追加から「LINE Push」のコンポーネントを追加します。

「LINE Push」アクション設定内で入力する情報は以下の通りです。
- 全員に送信:チェックをつけると友達登録している全員に通知が送信されます。
- 送信先ID:LINE Developersで取得した「あなたのユーザーID」をペースト
- メッセージ種別:テキスト
- テキスト:LINEに通知されるメッセージ内容を入力
- トークン:LINE Developersで取得したトークンをペースト

ここで先ほどLINE側の設定でコピーしておいた2つを使います。
送信先ID欄にLINE Developersで取得した「あなたのユーザーID」をペーストします。
メッセージの種別は「テキスト」を選択し、メッセージ欄には実際にLINEに送信されるメッセージを入力します。
今回は「CO2濃度が1,000ppmを超えています。換気してください」などの警告文を入力しておきましょう。
そして、トークン欄にLINE Developersで取得したチャネルアクセストークン(長期)をペーストします。

これで、アクションの設定は完了です。続いて、このアクションを実行させるトリガーを作成していきましょう。
・トリガーの設定
こちらもアクションの作成と同じように、新規トリガーの追加から、「LINE通知 CO2(1,000ppm以上)」など分かりやすいトリガー名で追加しておきましょう。

先ほど作成したアクションを起こすトリガーの詳細は以下のように設定します。
今回は、「CO2濃度が1,000ppmを超えたら通知」という条件なので、「時間」のタブの設定はしなくて結構です。
「条件」のタブでは、キーレイヤーとして“CO2”、物理デバイスIDとして、あらかじめペアリングしておいたCO2センサーを選択します。
そして、不等号でCO2濃度を1,000ppm以上に設定することで、超えたときに通知させるトリガーにできます。

「アクション」タブは、先ほど作成したアクションを選択します。

最後にトリガーを保存して、有効化するためにスイッチをONにしたら、トリガー設定は完了です。

これで、全ての設定が完了しましたので、さっそくテストしてみましょう。
CO2濃度が1,000ppmを超えると...
LINEに設定したメッセージが通知されました!

5. 複数人への通知
上記の設定では、自分の端末にのみ通知を送る方法を紹介していますが、もちろん、複数人やトークグループへ通知を送ることも可能です。
複数人やトークグループに通知を送る場合の設定は、LINE Official Account Manager設定に戻ります。
「アカウント設定」から「機能の利用」のトークへの参加を「グループ・複数人トークへの参加を許可する」に変更すると、作成した公式アカウントをグループに追加することができるようになります。

6. 応用編
上記の設定では、「CO2濃度が1000ppmを超えました。」という定型文しか送ることしかできませんが、センサーが計測した値をそのまま流し込んで、“現在のCO2濃度は1,200ppmです”といったリアルタイムの数値を含む通知も可能です。
まずは、メッセージ種別を「ペイロード(テキスト)」に変更します。
そして、先ほど作成したアクションの「Pre Mappings」欄に、「どうアクションを実行させるか」を具体的に定義する以下の式を入力します。
Pre Mappings:
cp.Text = “現在のCO2濃度は”+tv.Data+”ppmです。換気してください。”

こちらも同様にテストしてみましょう。
先ほどのトリガー設定で、「CO2濃度が1,000ppm以上の場合アクション実行」と設定したので、このように1,000ppmを超えた場合のリアルタイムの数値データがLINEに通知されます。

まとめ
今回は、CO2濃度が1,000ppmを超えた場合に、自動的にLINEに通知を送る設定を行いました。いかがだったでしょうか。
- LINE公式アカウントの開設
- Messaging APIの設定
- Gravioの設定
の3ステップのみなので、どなたでも簡単に設定していただけたかと思います。
今回は例として、アクション実行時に、現在のCO2濃度が反映されたメッセージ通知を送りましたが、弊社で取り扱っている温湿度センサーなどと連携させて、通知を送っても便利です。
また、LINEでの通知以外にも、SlackやMicrosoftTeamsなどのメッセージサービスにも、同様に設定できます。
会議室や個室ブースなどの環境改善に、ぜひお役立てください。
最後までお読みいただき、ありがとうございました。