LINEに通知

目的

目次

LINE Notify を追加する

  1. LINE と IFTTT を連携するには、LINE にメールアドレスを登録して、LINE Notify を追加する必要があります。

    1. LINE にメールアドレスを登録しているかの確認方法

      1. スマホからLINEアプリを開きます。 ホーム -> 設定 -> アカウント を開きます。以下のように メールアドレス が表示されており、パスワード登録完了 になっていたら、LINE にメールアドレスが登録されています。

      2. 登録されている方は、他のサービス(IFTTT) との連携をするため、LINEの ホーム -> 設定 -> アカウント -> ログイン許可 をオンにします。

      3. 登録がまだの方は 2 に進み、登録されている方は 3 に進みます。

  2. LINE にメールアドレスを新規登録していない方 は、メールアドレス⋅パスワードの登録 を参考に新規登録してください。

    1. 他のサービス(IFTTT) との連携をするため、LINEの ホーム -> 設定 -> アカウント -> ログイン許可 をオンにします。
  3. LINE にメールアドレスを登録した方ログイン許可をオンにした方 は、LINE と IFTTT を連携するために、LINE Notify を追加する必要があります。

  4. LINE Notify を追加します。

    1. ここ をクリックして下にスクロールします。以下のように 友達に追加QR コード があります。QR コード を読み取るか、こちら からインストールします。

IFTTTのApplet生成

Trigger に Webhook を選択する

Trigger に Webhook を指定する を実施します。

Action に LINE を選択する

  1. + That をクリックします。

  2. LINE と入力して、表示された LINE を選択します。

  3. Connect をクリックします。

  4. メールアドレスパスワード を入力して、ログインをクリックします。

  5. 以下のような画面が表示されたら、同意して連携する をクリックします。

  6. 以下のような画面が表示されたら、Send message をクリックします。

  7. 1:1でLINE Notifyから通知 であることを確認します。 Message には下記をコピーします。

    温度 : {{Value1}}

    Create action をクリックします。

  8. 以下の画面が表示される事を確認してFinish をクリックします。

  9. 以下の画面が表示される事を確認します。

参照 - ESP32 Wifi経由でIFTTTへ接続しLINEへ通知

参照 - ESP32からIFTTTを使ってLINE Notifyで通知を送ってみた

BlynkアプリにWebhookURLを設定

  1. BlynkアプリにWebhookURLを設定 を参考にして、以下の作業を実施します。

温湿度を取得して、温度が30度以上になったら通知を飛ばすコードをコピー

#define BLYNK_PRINT Serial    // Blynkライブラリーのデバッグ情報出力先を指定
#define BLYNK_DEBUG           // Blynkデバッグ情報を出力
#include <BlynkSimpleEsp32.h> // BlynkSimpleEsp32.h をインクルード
#include <DHT.h>              // DHT.h をインクルード
#define DHTPIN 22             // DHTセンサーアウトプットピンの指定
#define DHTTYPE DHT11         // DHT型の指定
DHT dht(DHTPIN, DHTTYPE);     // DHTセンサーライブラリーを使うための設定

/***************************************/
/*** ここから 環境によって書き換える ***/
/***************************************/

//WiFi接続情報
const char* ssid     =  "your-ssid" ; 
const char* password =  "your-password";

//Blynk接続情報
const char* auth = "your-auth";

void setup()
{
    Serial.begin(115200);  //シリアル通信の速度を指定
    
    dht.begin(); //  DHT11の初期化
    
    // auth, ssid, pass を指定してBlynkの初期化
    Blynk.begin(auth, ssid, password);
}
void loop()
{
    Blynk.run(); //  Blynkの起動

    float temperature = dht.readTemperature(); // 温度読み取り
    float humidity = dht.readHumidity();   // 湿度読み取り
      
    // 読み取りに失敗しているかチェック
    // 失敗している場合はもう一度、温湿度の読み取りをする
    if (isnan(temperature) || isnan(humidity)) {
       Serial.println("Failed to read from DHT sensor!");
       return;
    }

    // シリアルモニターに表示
    Serial.print("湿度: ");
    Serial.print(humidity);
    Serial.print(" *C\t");
    Serial.print("温度: ");
    Serial.print(temperature);
    Serial.println(" % ");

    // 温度が30度以上かチェック
    // 30度以上の場合には Blynk サーバーのVirtual ピンにデータを送信
    if(temperature >= 30){
        // V0 ピンに対して温度の値を送信
        Blynk.virtualWrite(V0, temperature);
        // V1 ピンに対して温度の値を送信
        Blynk.virtualWrite(V1, humidity);
        // Blynk サーバーに送信したデータをシリアルモニターに表示
        Serial.print("温度が ");
        Serial.print(temperature);
        Serial.println(" で30度を超えました");               
    } 

    // 10秒間待ちます。
    delay(10000); 
}

参照 - Documentation

スケッチにコピーしたコードを張り付ける~結果をシリアルモニターに表示

温湿度センサー(DHT11) のアウトプットをBlynkアプリに表示(ESP -> Blynk) を参考にして、以下の作業を実施します。

温度が30度以上になったら通知がくるかテスト

  1. 設定した通知がくるかをテストするため、DHT11 の青い部分を触りつづけて温度を30度まで上げます。30度まで上げた後、以下の画面が表示されることを確認します。

  2. 以下のように、LINE にIFTTTから通知がきていたら成功です。

参照 - Blynk Example