ไลบรารี LINE Messaging API สำหรับ ESP32 / ESP8266 ช่วยให้คุณสามารถส่งข้อความ, รูปภาพ, และสติ๊กเกอร์ ไปยัง LINE ได้อย่างง่ายดายผ่านโค้ด Arduino เพียงไม่กี่บรรทัด 🚀
- ✅ รองรับ ESP32 และ ESP8266
- 💬 ส่งข้อความ LINE ได้โดยตรงผ่าน HTTPS
- 🖼️ รองรับการส่งรูปภาพ (Image)
- 😄 รองรับการส่งสติ๊กเกอร์ (Sticker)
- 🔒 ใช้
WiFiClientSecureสำหรับ HTTPS (ตั้งค่าsetInsecure()เพื่อข้าม SSL verify) - ⚙️ เขียนโค้ดง่าย ใช้คลาสเดียว
LINEMessage
ESP-LineMessage/
├── LINEMessage.cpp
├── LINEMessage.h
└── examples/
└── ESP-LineMessage-example/
└── ESP-LineMessage-example.ino
⚠️ ต้องวางโฟลเดอร์ESP-LineMessageไว้ในDocuments/Arduino/libraries/เพื่อให้ Arduino IDE มองเห็น
- เปิดโฟลเดอร์
Documents/Arduino/libraries/ - คัดลอกโฟลเดอร์
ESP-LineMessageไปวางในนั้น - เปิด Arduino IDE → เมนู Sketch → Include Library → ESP-LineMessage ถ้ามีชื่อในรายการแสดงว่าติดตั้งสำเร็จ ✅
#include <Arduino.h>
#include "LINEMessage.h"
// ตั้งค่า WiFi และ LINE Token
const char* ssid = "YOUR_WIFI";
const char* password = "YOUR_PASS";
String LINE_ACCESS_TOKEN = "YOUR_LINE_ACCESS_TOKEN";
String USER_ID = "YOUR_LINE_USER_ID"; // หรือ Group ID
// สร้าง instance
LINEMessage line(LINE_ACCESS_TOKEN, USER_ID);
void setup() {
Serial.begin(115200);
// เชื่อมต่อ WiFi
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.print(".");
}
Serial.println("\nWiFi connected");
// ✅ ส่งข้อความ
line.sendMessage("Hello from ESP!");
// ✅ ส่งสติ๊กเกอร์ (packageId 446)
line.sendSticker("1988");
// ✅ ส่งภาพ
line.sendImage(
"https://example.com/original.jpg",
"https://example.com/original.jpg"
);
}
void loop() {
// โค้ดอื่น ๆ ของคุณ
}| ฟังก์ชัน | รายละเอียด |
|---|---|
LINEMessage(token, userId) |
สร้างอ็อบเจกต์ใหม่ด้วย Token และ User ID |
sendMessage("ข้อความ") |
ส่งข้อความตัวอักษร |
sendSticker("stickerId") |
ส่งสติ๊กเกอร์ (packageId 446) |
sendImage(url, preview) |
ส่งภาพจาก URL |
| (อัตโนมัติ) | ใช้ HTTPS (WiFiClientSecure) และมีการตรวจสอบสถานะ WiFi |
LINE มีสติ๊กเกอร์มากมาย ลองใช้ package 446 ที่เป็น default เช่น:
| Sticker ID | หมายถึง |
|---|---|
1988 |
Brown ยิ้ม |
1989 |
Brown หัวเราะ |
1990 |
Cony เขิน |
1991 |
Brown/Cony รักกัน ❤️ |
- เข้า https://account.line.biz/
- กด Create New → ตั้งชื่อ / ข้อมูล OA ของคุณ
- ไปที่ LINE Official Account Manager
- เข้าหน้า Messaging API
- คลิก Use Messaging API
- สร้าง Provider ใหม่ (ใส่ชื่ออะไรก็ได้)
- คลิก OK เพื่อยืนยัน
- จากนั้นไปที่ LINE Developers Console
-
เลือก Provider → เลือก Channel
-
ไปที่แท็บ Messaging API
-
กดปุ่ม Issue Channel Access Token
-
คัดลอก token ไปใส่ในโค้ด Arduino
String LINE_ACCESS_TOKEN = "YOUR_CHANNEL_ACCESS_TOKEN";
- ใช้เว็บ https://typedwebhook.tools/
- คัดลอกลิงก์ Webhook ไปใส่ใน LINE Developers → Webhook URL
- กด Save แล้วทดสอบส่งข้อความมาที่ OA
- กลับมาดูใน typedwebhook.tools → จะเห็น JSON
ดูในฟิลด์
source.userId
- เชิญ LINE OA ของคุณเข้ากลุ่ม
- ส่งข้อความในกลุ่ม
- กลับมาดูใน typedwebhook.tools → ดูฟิลด์
source.groupId
| กรณีใช้งาน | ตัวอย่าง |
|---|---|
| แจ้งเตือน Sensor | line.sendMessage("Temperature High!"); |
| แจ้งเตือนผ่านรูปภาพ | line.sendImage(url, preview); |
| แจ้งเตือนแบบอารมณ์ดี | line.sendSticker("1988"); |
- WiFi.h / ESP8266WiFi.h
- HTTPClient.h / ESP8266HTTPClient.h
- WiFiClientSecure.h
ติดตั้งโดยอัตโนมัติเมื่อใช้ Arduino Core for ESP32 / ESP8266
- ✅ ESP32
- ✅ ESP8266 (NodeMCU, Wemos, ฯลฯ)
MIT License © 2025 Created by Phoovadet (NoobDev) GitHub: @phoovadetnoobdev