nIcE
สิงหาคม 30, 2023, 4:38pm
1
ช่วยด้วยครับ มีปัญหากับการ ทำ โปรเจค PIR sensor เเจ้งเตือนผ่าน line มีปัญหา Connection failed
code มาจาก GPT
#include <ESP8266WiFi.h>
const char* ssid = "true_home2G_dKq";
const char* password = "30453829";
const int pirPin = D1; // กำหนดขาที่เชื่อม PIR sensor
void setup() {
Serial.begin(115200);
pinMode(pirPin, INPUT);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Connecting to WiFi...");
}
Serial.println("Connected to WiFi");
}
void loop() {
int pirState = digitalRead(pirPin);
if (pirState == HIGH) {
Serial.println("Motion detected!");
sendLineNotify("Motion detected!"); // เรียกใช้ฟังก์ชันส่งข้อความผ่าน Line
delay(5000); // หน่วงเวลา 5 วินาทีก่อนส่งข้อความอีกครั้ง
} else {
Serial.println("No motion");
}
delay(1000);
}
void sendLineNotify(String message) {
WiFiClientSecure client;
const char* host = "notify-api.line.me";
const int httpsPort = 443;
if (!client.connect(host, httpsPort)) {
Serial.println("Connection failed");
return;
}
String token = "WUYGkVUtC6nxunh8sO7HCHp6edQStOTx7fLP9uUdeCY"; // ใส่ Token ของคุณที่ได้จาก Line Notify
String headers =
"POST /api/notify HTTP/1.1\r\n"
"Host: notify-api.line.me\r\n"
"Authorization: Bearer " + token + "\r\n"
"Cache-Control: no-cache\r\n"
"User-Agent: ESP8266\r\n"
"Content-Type: application/x-www-form-urlencoded\r\n"
"Content-Length: " + String(message.length()) + "\r\n\r\n";
client.print(headers);
client.print(message);
delay(1000); // หน่วงเวลาเพื่อรอการส่งข้อมูล
Serial.println("Line Notify sent");
}
ผลที่ได้
Motion detected!
Connection failed
Remy_Martin
(Permpol Thanapunnamas)
กันยายน 2, 2023, 2:17pm
2
เปลี่ยนไปใช้ libraly ตามกระทู้นี้คับ
กระทู้นี้เป็นการเริ่มต้นสำหรับ การส่งการแจ้งเตือนผ่าน Line โดยเริ่มจากการต่ออุปกรณ์เบื้องต้นสำหรับการกดเพื่อส่งค่า On และ Off กันก่อน
[วงจรกดปุ่มแจ้งเตือนผ่าน line]
[Button_send_line_bb]
Button_send_line_bb.pdf (647.4 KB)
Button_send_line.ino (1.8 KB)
โค้ตที่ใช้
const int led = 5;
const int button = 16;
int temp = 0;
bool Lock = false;
void setup() {
Serial.begin(112500);
pinMode(led, OUTPUT);
pinMode(button, INPUT);
}
void loop() {
temp = digitalRead(button);
if (te…
nIcE
กันยายน 4, 2023, 8:35am
3
ลง ไลน์บารี ไปเเล้วครับ เเต่ arduino ide ไม่ เจอ จะร้องไห้เเล้วคับ
nIcE
กันยายน 4, 2023, 8:44am
4
C:\Users\nineg\AppData\Local\Temp\.arduinoIDE-unsaved202384-13692-8z74ft.cabqk\01.LineNotify\01.LineNotify.ino:9:10: fatal error: TridentTD_LineNotify.h: No such file or directory
9 | #include <TridentTD_LineNotify.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
exit status 1
Compilation error: TridentTD_LineNotify.h: No such file or directory
Remy_Martin
(Permpol Thanapunnamas)
กันยายน 4, 2023, 1:05pm
5
ต้องวางโค้ตที่ใช้มาด้วยครับ
nIcE
กันยายน 4, 2023, 1:17pm
6
#include <TridentTD_LineNotify.h>
#define SSID "true_home2G_dKq"
#define PASSWORD "30453829"
#define LINE_TOKEN "2sCa8SPNcDfnzPhbOXZ5TOFIUIiNfVCyyMzcm9l1QIL"
#define PIR_SENSOR_PIN 2 // ปรับเป็นขาที่ต่อ PIR Sensor กับ ESP8266/ESP32
#define LED_PIN D1 // ขาที่ต่อ LED
void setup() {
Serial.begin(115200);
Serial.println(LINE.getVersion());
WiFi.begin(SSID, PASSWORD);
Serial.printf("WiFi connecting to %s\n", SSID);
while (WiFi.status() != WL_CONNECTED) {
Serial.print(".");
delay(400);
}
Serial.printf("\nWiFi connected\nIP: ");
Serial.println(WiFi.localIP());
LINE.setToken(LINE_TOKEN);
pinMode(LED_PIN, OUTPUT); // กำหนดขา LED_PIN เป็น OUTPUT
digitalWrite(LED_PIN, LOW); // ปิด LED เริ่มต้น
}
void loop() {
int pirState = digitalRead(PIR_SENSOR_PIN);
if (pirState == HIGH) {
Serial.println("Motion detected!");
LINE.notify("mekunmaja");
digitalWrite(LED_PIN, HIGH); // เปิด LED เมื่อตรวจพบการเคลื่อนไหว
delay(10000); // รอ 10 วินาทีก่อนที่จะส่งการแจ้งเตือนอีกครั้ง (เพื่อหลีกเลี่ยงการส่งข้อความซ้ำ)
} else {
digitalWrite(LED_PIN, LOW); // ปิด LED เมื่อไม่ตรวจพบการเคลื่อนไหว
}
delay(1000); // รอ 1 วินาทีก่อนที่จะตรวจสอบอีกครั้ง
}
Remy_Martin
(Permpol Thanapunnamas)
กันยายน 5, 2023, 12:26pm
7
nIcE:
TridentTD_LineNotify
gเข้าไปดูโฟล์เดอร์ที่เก็บไฟล์นี้หน่อยมีรึป่าว ลง library นี้ด้วยวิธีอะไร