สร้างระบบจองห้องประชุมแบบง่ายๆ ด้วย Google Form และ Google Calendar

Photo by Dylan Gillis on Unsplash

จากการทำงานที่ผ่านๆ มาพบว่าการใช้งาน Google Form ที่สะดวก และแพร่หลายจะเป็นไปในรูปแบบงานสำรวจความคิดเห็นซะเป็นส่วนมาก เลยมาลองคิดว่าหาก Google Form ทำได้มากกว่านั้นล่ะ เช่น การจองห้องประชุม การสร้างนัดหมายงานต่างๆ การขอเข้าพื้นที่เพื่อทำงานล่วงหน้า ซึ่งรวมๆ ก็คือ ระบบจอง นั่นแหละ ก็เลยอยากลองสร้างระบบจองห้องประชุมแบบง่ายๆ ขึ้นมาครับ ทำได้อย่างไรมาดูกันเลยครับ


โดยมีหลักการการทำงานง่ายๆ ตามนี้ครับ

ผู้จอง → กรอกข้อมูลใน Google Form → บันทึกลง Google Sheets ไว้เป็นฐานข้อมูล → แสดงผลใน Google Calendar

พอจะได้หลักการการใช้งานคร่าวๆ ก็มาเริ่มลงมือกันเลยดีกว่าครับ

1. สร้างแบบฟอร์มการจองใน Google Form

โดยหัวข้อที่ต้องการให้ผู้ใช้งานกรอกข้อมูลก็จะมีประมาณนี้ครับ

  • ชื่อผู้จอง (Name)
  • เบอร์โทรติดต่อ (Phone Number)
  • ห้องประชุมที่ต้องการจอง (Rooms)
  • วัน-เวลา ที่เริ่มประชุม (Start Date and Time)
  • วัน-เวลา ที่เลิกประชุม (End Date and Time)

— เริ่มจากเข้าไปที่ Google Drive พร้อมสร้าง Folder เก็บไฟล์ และคลิ๊กขวาเลือกสร้าง Google Form ขึ้นมาเลยครับ

— สร้าง Form โดยตั้งชื่อ Form และกำหนดข้อมูลชื่อผู้จอง (Name) ก่อนครับ อย่าลืมตั้งค่าเป็น Required เพื่อให้ผู้ใช้งานต้องกรอกข้อมูลส่วนนี้น่ะครับ

— กำหนดข้อมูลเบอร์โทรติดต่อ (Phone Number) โดยจะกำหนดให้ผู้ใช้งานต้องกรอกเบอร์โทรศัพท์มือถือ [ Tips ใน Google Form สามารถกำหนด Response validation ให้ข้อมูลที่กรอกตรงตามรูปแบบที่ต้องการ และไม่สามารถกรอกข้อมูลที่นอกเหนือจากที่กำหนดไว้ได้ด้วยครับ ] ในที่นี่ผมกำหนดให้กรอกได้เฉพาะตัวเลข และต้องครบ 10 หลัก ดูการตั้งค่าเป็น Regular expression ตามตัวอย่างได้เลยครับ

— กำหนดข้อมูลห้องประชุมที่ต้องการจอง (Rooms) ก็เลือกเป็นแบบ Multiple choice แล้วใส่ข้อมูลห้องประชุมที่จะให้ผู้ใช้งานเลือกจองได้เลยครับ

— กำหนดข้อมูล วัน-เวลา ที่เริ่มประชุม (Start Date and Time) และวัน-เวลา ที่เลิกประชุม (End Date and Time) ให้เลือก Include time เข้าไปด้วยน่ะครับ

— ตั้งค่า Form เพิ่มอีกนิดหนึ่งด้วยข้อความตอบกลับหลังจากผู้ใช้งานกรอกข้อมูล และกดส่งข้อมูลแล้วเสร็จ

— สร้างไฟล์ Google Sheets สำหรับเก็บข้อมูลจาก Form ที่ผู้ใช้งานกรอกมา หลังจากได้ไฟล์มาแล้วเราจะใช้ข้อมูลที่บันทึกใน Google Sheets นี่แหละที่จะส่งข้อมูลไปสร้าง Event ที่ Google Calendar ครับ

— กดรูปตาด้านมุมขวาของ Form แล้วทดลองกรอกข้อมูลได้เลยครับ


2. ตรวจสอบข้อมูลที่ส่งจาก Form มาเก็บไว้ที่ Google Sheets

ตรวจอสอบว่าได้ตามที่ต้องการหรือเปล่า

— ข้อมูลที่ต้องเก็บไว้ใช้ในการใส่ข้อมูลใน App Scripts ก็คือ Google Sheets ID ซึ่งหาได้โดยให้ copy ด้านบนของ url ไฟล์ Google Sheets ได้เลยครับ (copy เฉพาะที่ขีดเส้นไว้ครับ)


3. สร้าง Google calendar

เพื่อใช้ให้ผู้ใช้งานดูและทำการจองห้องประชุมครับ ก็เลือก Create new calendar แล้วตั้งชื่อตามต้องการได้เลยครับ

— ข้อมูลที่ต้องเก็บไว้ใช้ในการใส่ข้อมูลใน App Scripts อีกอันก็คือ Calendar Id หาได้โดยเลือก Setting and sharing แล้วเลื่อนลงไปจนเจอหัวข้อ Integrate calendar และ calendar ID ให้ทำการ copy เฉพาะที่ขีดเส้นไว้ครับ

ก่อนไปขั้นตอนการเขียน code ใน App Script มาดูก่อนว่าเราต้องมีอะไรบ้าง

  • Form สำหรับให้ผู้ใช้งานกรอก
  • ไฟล์ Google sheet ที่บันทึกข้อมูลจาก Form
  • google sheet ID
  • calendar ID

4. เขียนฟังก์ชั่นการทำงานให้นำข้อมูลการจองจาก Google Sheets ไปแสดงไว้ที่ Google calendar

— ที่ไฟล์ Google Sheets ให้เปิดเมนู Script editor ขึ้นมาได้เลยครับ

— ตั้งชื่อ Project ให้เรียบร้อย

— ทำการเขียน code ฟังก์ชั่นการทำงานขึ้นมาได้เลยครับ สามารถดูรายละเอียดคำสั่งต่างๆได้ ที่นี่ ครับ

— ทำการ code เพื่อเรียก Spread Sheet ที่จะใช้งานมาครับ พร้อมนำค่าแถวสุดท้าย และจำนวนคอลัมน์ของข้อมูลมาดูก่อนครับ และจะให้โชว์ข้อมูลใน Logs หลังจาก Run function (อย่าลืมแก้ค่า xxxxxx ใน code ให้เป็น Google Sheets ID ของตัวเองน่ะครับ)

— Run function เพื่อทดสอบว่าได้ข้อมูลมาถูกต้องจริงๆ

— หากมีการถาม Permission ก็อนุญาติให้ครบก่อนครับ

— หากไม่มี Error ก็มาเปิด Logs ว่าเราได้ค่าค่าแถวสุดท้าย และจำนวนคอลัมน์ของข้อมูลมาอย่างถูกต้องหรือเปล่าครับ

— ได้ค่าแถวสุดท้ายเป็นแถวที่ 2 (ข้อมูลที่ได้รับจาก Form ล่าสุด) และข้อมูลคอลัมน์จำนวน 6 คอลัมน์

— ทำการเพิ่ม code เพื่อกำหนดค่า และเตรียมข้อมูลเพื่อนำไปสร้าง Event บน Google calendar แล้วทำการ Run function และ Logs ข้อมูลมาดูก่อนว่ามีความถูกต้องตามต้องการหรือเปล่าครับ

— Log ข้อมูลมาดูแล้วถูกต้องก็ไปต่อได้เลยครับ

— ทำการเพิ่ม code เพื่อสร้าง Event บน Google Calendar ได้เลยครับ อย่าลืมแก้ไขค่า xxxxxxx = Google Sheet ID , yyyyyy = Calendar ID น่ะครับ

— ทำการ Run function หากไม่มี Error ก็จะได้ข้อมูลที่ได้รับจาก Form ไปแสดงบน Google calendar แล้วครับ

— แต่ก็คงจะไม่สนุกนักหากต้องมานั่งกด Run function ทุกๆ ครั้งที่ผู้ใช้งานกดจองห้องประชุมมา ก็เลยต้องมาทำให้ Function ทำงานแบบอัตโนมัติด้วยการตั้ง Trigger ให้ทำงานเมื่อผู้ใช้กดจองมาจาก Form ที่กำหนดไว้ครับ

— Add Trigger แล้วตั้งค่าตามรูปได้เลยครับ

— ทดสอบโดยการเปิด Form และทดลองกรอกข้อมูลการจองและดูว่ามี Event ขึ้นที่ Google calendar แบบอัตโนมัติหรือเปล่าครับ ส่วนใครที่ต้องการให้มีการแจ้งเตือนยืนยันข้อมูลกลับไปหาผู้ใช้งานผ่านทางอีเมล ก็ไปอ่านบทความต่อได้ที่บทความนี้เลย แจ้งอีเมลตอบกลับหลังจากผู้ใช้งานกด Submit ใน Google Forms


สุดท้าย การสร้างระบบการจองห้องประชุม แบบง่ายๆ ด้วย Google Form และ Google Calendar ก็ทำได้ตามที่คิดไว้ครับ ซึ่งทั้ง Google Form และ Google Calendar สามารถนำไปแปะไว้หน้า Website ที่ต้องการได้ด้วยครับ รวมถึงได้ Google Sheets ไว้เก็บข้อมูลการจองห้องประชุมไว้ตรวจสอบได้อีก ส่วนจะพัฒนาไปแนวทางไหนได้อีกบ้าง ก็อาจจะเพิ่มให้มีการแจ้งเตือนผ่าน Line ไปยังผู้ดูแลห้องประชุม หรือนำใช้ในการจองรูปแบบงานอื่นๆ แล้วแต่การ Create Form ที่จะใช้งานเลยครับ…Happy Coding !!!


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

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