LoginSignup

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

obnizの距離センサーの値をLINEbotで返したい

obnizの距離センサーの値をLINEbotで返したい

 Node.jsで、obnizの距離センサーを使用しています。
 ターミナル上では結果が返ってくるようになったのですが、
 その結果をLINEbotで返すことがどうしてもできません。

コード

    // 距離センサーを呼び出す
    var hcsr04 = obniz.wired("HC-SR04", {gnd:8, echo:9, trigger:10, vcc:11});
    hcsr04.measure(function( distance ){{
    var height=2220-distance
    }
      console.log("距離は" + height + " mm")
      })

    await client.pushMessage(userId, {
     type: 'text',
     text: "距離は" + height + " mm",
   })
  }

 ターミナル上では

距離は703.8804953001832 mm

 と結果が返ってきますがLINE上では何も返ってこず

text: "距離は" + height + " mm",
                   ^
ReferenceError: height is not defined

 というように、エラーがターミナルで返ってきます。

 距離センサーの結果(値)がLINEで返ってくるようにしたいのですが、
 どなたか教えていただけませんでしょうか。

0

2Answer

コードを見る感じですと、
client.pushMessageが、書いてある場所が悪い気がします。

一応ですが、下記に直してみたコードを記載しておきます。

// 距離センサーを呼び出す
var hcsr04 = obniz.wired("HC-SR04", { gnd: 8, echo: 9, trigger: 10, vcc: 11 });

hcsr04.measure(
  function(distance){
    var height = 2220 - distance;
    console.log("距離は" + height + " mm");

    client.pushMessage(
      userId,
      {
        type: 'text',
        text: "距離は" + height + " mm",
      }
    );
  }
)
2

@Yamazin さん今回も助けていただいてありがとうございます!!
おっしゃる通りでした!位置を代えたらLINEで返ってきました!

感動です( ;∀;)感謝感謝です!!

0

Your answer might help someone💌