Google Sheet—เชื่อมต่อข้อมูลไปที่ Firebase Cloud Firestore x LINE Notify [ตอนจบ]

วันนี้เราจะมาต่อจากตอนแรกกันครับ ก่อนจะมาต่อกันในขั้นตอนท้ายเรามาทบทวน โจทย์กันก่อนครับ

โจทย์ มีข้อมูลใหม่จากผู้ใช้งาน –> บันทึกลง Google Sheet –> บันทึกลง Cloud Firestore หรือ Realtime Database –> แจ้งเตือนผ่าน LINE Notify

ในตอนแรกนั้นเราได้บันทึกข้อมูลจาก Google Sheet ลงใน Cloud Firestore หรือ Realtime Database เรียบร้อยแล้ว สำหรับขั้นตอนการแจ้งเตือนข้อมูลไปที่ LINE Notify จะใช้บริการอีกอันของ 🔥Firebase นั่นคือ Cloud Fucntions นั่นเอง โดย Cloud Functions จะทำตัวเป็นนักดักฟัง (Listener) และรอรับ Trigger [มีด้วยกัน 4 แบบคือ การเขียนข้อมูลครั้งแรก, การอัพเดทข้อมูล, การลบข้อมูล, การเขียน/การอัพเดท/การลบ] จาก Cloud Firestore หรือ Realtime Database ทันที และจะทำงานตามฟังก์ชันที่เราเขียนไว้นั่นคือ ส่งแจ้งเตือนผ่าน LINE Notify เมื่อมีการเขียนข้อมูลครั้งแรกนั่นเองครับ

รายละเอียดเพิ่มเติมสำหรับ Clound Functions ผมแนะนำให้เพื่อนอ่านบทความนี้ก่อนครับ

รู้จัก Cloud Functions for Firebase ตั้งแต่ Zero จนเป็น Hero

ซึ่งบทความอธิบายการติดตั้ง การใช้งาน Cloud Functions ไว้หมดแล้ว เมื่อเข้าใจแล้วก็มาลงมือทำกันเลยดีกว่าครับ

— จาก Project ที่ได้สร้างไว้ในตอนแรก และมีการรับข้อมูลจาก Google Sheet มาเก็บไว้ใน Database แล้ว ก็ต้องมาลงมือเขียน Cloud Functions เพื่อรองรับ Trigger เฉพาะการเขียนข้อมูลครั้งแรก และส่งแจ้งเตือนผ่าน LINE Notify โดยจะได้ Code ตามตัวอย่างด้านล่างครับ [ในส่วนการจัดการข้อมูลจาก Data Object นั้นขึ้นอยู่กับข้อมูลของเพื่อนๆ ได้เลยครับ] จะเห็นได้ว่าจุดแตกต่างกันอยู่ที่ Code บรรทัดที่ 35 ที่จะเรียกใช้งานและอ้างอิงถึงฐานข้อมูลตามที่เลือกไว้ตอนสร้างโปรเจคครับ

Code สำหรับใช้ Firestore

Code สำหรับใช้ Realtime Database

— ทำการเพิ่ม dependencies ให้ครบตามรูปครับ แล้วอย่าลืมทำการอัพเดท dependencies ทั้งหลายที่เราระบุใน package.json ผ่าน command line ด้วยน่ะครับ

— พร้อมแล้วก็ทำการ Deploy ด้วยคำสั่ง $ firebase deploy –only functions ได้เลยครับ ถ้า Code ไม่มี Error จะได้แบบนี้

— เมื่อไปที่ Firebase console ในเมนู Functions จะพบกับ Function ที่เราเขียนไว้ครับ

— ใน Firebase console สามารถดู Logs ต่างๆ ของ Functions ได้เลยครับ

— ทดสอบข้อความก็ส่งมาได้ถูกต้องตามปกติครับ 😀😀😀


ท้ายสุด เป็นอย่างไรบ้างครับ กับการใช้ 🔥Firebase เรียกว่าได้จบครบที่เดียวจริงๆ สะดวกสบายสุดๆ ไปเลย ก็หวังว่าเพื่อนๆ จะเกิดไอเดียในการเอาไปใช้งานกับโปรเจคที่ทำอยู่น่ะครับ สำหรับผมโปรเจคนี้ที่ทำให้เพื่อนก็จบลงแค่นี้ และได้ใช้งานจริงไปแล้วด้วยค่าตอบแทนแบบไหล่ทรุด 🤣🤣🤣 แต่ก็ได้มาลองใช้งาน Firebase ซะที…Happy learning…📚


อ้างอิง
https://firebase.google.com/docs/functions/firestore-events


โปรโมชั่น คูปองส่วนลด และดีล ที่ดีที่สุดของร้านค้าออนไลน์กว่า 300 แบรนด์พร้อมรับเงินคืนจาก ShopBack
🔗 https://bit.ly/3c4tlmV

Ruk-Com จดโดเมน-เช่าโฮสต์ ราคาประหยัด พร้อมให้บริการใน 1 นาที
🔗 http://bit.ly/36q8A12