ความรู้แน่น ฟรีสำหรับชุมชน ArduinoAll ที่นี่เท่านั้น

ฟรีและดีที่สุด คอร์สอบรม Arduino + NodeMCU
ทำเพื่อแบ่งปัน ห้ามนำไปจำหน่าย หรือเก็บเงินค่าเรียน
  !!!


  


AllNewStep รับประกันคุณภาพทุกชิ้น วันจันทร์-ศุกร์แจ้งชำระสินค้าก่อน 14.00 จัดส่งทันทีวันนี้ค่ะ

กรุงเทพ /ภาคกลาง ได้พรุ่งนี้


*** สินค้าทุกชิ้น ถ้าสามารถทำรายการสั่งซื้อได้ แสดงว่ามีครบทุกรายการค่ะ *** 

พิมพ์ค้นหาบทความ หัวข้อกระทู้ และสินค้าในเว็บ AllNewStep ได้ที่นี่
QUOTE 

สอบถามโค้ทการทำงานครับ

ฤทธิชัย

ผมลองประยุกต์จากกดสวิทช์แล้วแจ้งเตือนผ่านไลน์ เป็นใช้หน้าสัมผัสของรีเลย์แทน แต่อยากจะเพิ่มฟังค์ชั่นให้คือตอนที่หน้าสัมผัสทำงานให้หน่วงเวลาไว้5นาทีก่อนค่อยส่งข้อความไปยังไลน์ และหากหน้าสัมผัสรีเลย์นั้นยังทำงานอยู่มันจะส่งข้อความไปทุกๆ 5 นาที จะต้องเขียนโค้ทคำสั่งแบบไหนครับ (ตอนนี้เพิ่มเริ่มศึกษา ใหม่มากๆครับ)       

void Line_Notify(String message) ;

 

#include <ESP8266WiFi.h>

#include <WiFiClientSecureAxTLS.h> // กรณีขึ้น Error ให้เอาบรรทัดนี้ออก

 

// Config connect WiFi

#define WIFI_SSID "YOUR WIFINAME"

#define WIFI_PASSWORD "YOUR WIFIPASSWORD"

 

// Line config

#define LINE_TOKEN "LINE ACCESS TOKEN"

 

#define SW D2

 

String message = "โดนกด"; // ArduinoIDE เวอร์ชั่นใหม่ ๆ ใส่ภาษาไทยลงไปได้เลย

 

void setup() {

  pinMode(SW, INPUT);

 

  Serial.begin(9600);

 

  WiFi.mode(WIFI_STA);

  // connect to wifi.

  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);

  Serial.print("connecting");

 

  while (WiFi.status() != WL_CONNECTED) {

    Serial.print(".");

    delay(500);

  }

  Serial.println();

  Serial.print("connected: ");

  Serial.println(WiFi.localIP());

}

 

void loop() {

  if (digitalRead(SW) == HIGH) {

    while(digitalRead(SW) == HIGH) delay(10000);

 

    Serial.println("Enter !");

    Line_Notify(message);

    // Serial.println();

  }

  delay(10);

}

 

void Line_Notify(String message) {

  axTLS::WiFiClientSecure client; // กรณีขึ้น Error ให้ลบ axTLS:: ข้างหน้าทิ้ง

 

  if (!client.connect("notify-api.line.me", 443)) {

    Serial.println("connection failed");

    return;   

  }

 

  String req = "";

  req += "POST /api/notify HTTP/1.1\r\n";

  req += "Host: notify-api.line.me\r\n";

  req += "Authorization: Bearer " + String(LINE_TOKEN) + "\r\n";

  req += "Cache-Control: no-cache\r\n";

  req += "User-Agent: ESP8266\r\n";

  req += "Connection: close\r\n";

  req += "Content-Type: application/x-www-form-urlencoded\r\n";

  req += "Content-Length: " + String(String("message=" + message).length()) + "\r\n";

  req += "\r\n";

  req += "message=" + message;

  // Serial.println(req);

  client.print(req);

    

  delay(20);

 

  // Serial.println("-------------");

  while(client.connected()) {

    String line = client.readStringUntil('\n');

    if (line == "\r") {

      break;

    }

    //Serial.println(line);

  }

  // Serial.println("-------------");

}

QUOTE 
ความคิดเห็นที่ #1
เจ้าของร้าน

ทำได้ไม่ยาก มีตัวอย่างโค้ดสอนแบบละเอียด ถ้าเพิ่งเริ่มให้ดูในคอร์ส Arduino Starter และจากนั้นมาเล่นในคอร์ส Arduino ESP8266 IoT ที่หน้าเว็บด้านบนซ้าย ก็จะทำได้ครับ

QUOTE 
ความคิดเห็นที่ #2
ฤทธิชัย

ครับ เดี๋ยวลองศึกษาดู ถ้าติดตรงไหนหรือไม่ได้อย่างไง ขอปรึกษาอีกนะครับ

QUOTE 
ความคิดเห็นที่ #3
เจ้าของร้าน

ยินดีครับ

แสดงความคิดเห็นที่ 1-3 จากทั้งหมด 3 ความคิดเห็น
ขาย ARDUINO
คุณภาพ อันดับ 1

ได้รับรางวัลร้านยอดเยี่ยม
ตั้งแต่ปี 2558
ขาย Arduino
วีดีโอสอน Arduino

สอน esp8266

สอน Arduino IoT
สอน Arduino แบบเร็ว

สอน NodeMCU

อุปกรณ์ Arduino

MEMBER ZONE

พูดคุย-สอบถาม