ในเปิดโลกไอทีครั้งที่ 3 เมื่อวันที่ 16 ตุลาคม ที่ผ่านมา โดยไอที 24 ชั่วโมง ครอบครัวข่าว 3 ร่วมกับ TrueIDC, ETDA, กระทรวง ICT และ มหาวิทยาลัยขอนแก่น จัดขึ้นที่มหาวิทยาลัยขอนแก่น เวิร์กช็อปที่ 3 สำหรับ advance user และ developer ในหัวข้อเกี่ยวกับ การเขียน Google Apps script และการใช้ Google Apps API ได้รับความสนใจอย่างมากมายเหนือความคาดหมาย จากครูอาจารย์ และผู้สนใจทั่วภาคอีสาน
Workshop นี้ ดำเนินการอบรมโดย อาจารย์ โอ๋ วิทยา อัศวเสถียร จาก Google Developer Group Thailand (GDG Thailand) เน้นการเขียน code โดยเนื้อหาเน้นการใช้ Google Apps Script การเรียกใช้ Google Apps API การเขียน Add-on สำหรับ Google Apps
อาจารย์ โอ๋ ยังได้จัดทำ Slide ฝึกอบรมสำหรับการอบรมครั้งนี้เป็นพิเศษ และอนุญาตให้เผยแพร่ได้โดยไม่มีเงื่อนไข ซึ่งเราต้องขอขอบคุณอาจารย์เป็นอย่างยิ่ง
ผู้สนใจสามารถเข้าถึง slide นี้ได้ที่ >> http://wi.th/appsscript2015
การอบรมมีเนื้อหาโดยย่อดังนี้
Introduction
Google Apps Script โดยพื้นฐานคือ Javascript และ เพิ่มเติมด้วยคำสั่งต่างๆ เพื่อที่จะสามารถสั่งงานและเรียกใช้ function ต่างๆ ของ Google Apps 11 ตัว รวมทั้ง Google Translate และใช้งานร่วมกับ Google Cloud Platform
Google Apps Script เขียนได้ง่าย และ เหมาะสมที่สุดในการเขียน code ใช้งานร่วมกับ Google Apps การเขียนสามารถเขียนบน Browser ได้เลยโดยไม่ต้องลงโปรแกรมใดๆ และ Script จะถูก host และ run บน server ของ Google ดังนั้นจึงสามรถพัฒนาและใช้งานได้บนเครื่องคอมพิวเตอร์ทุกแบบ ไม่ว่าจะเป็น PC Mac Chromebook หรือแม้แต่บน Smartphone หรือ Tablet
Type of Script
Apps Script แบ่งเป็น 3 ประเภท คือ
Standalone Scripts
Script ที่อยู่เดี่ยวๆ ไม่ผูกกับ google apps (แต่สามารถเรียกใช้ Google Apps ได้) และจะปรากฎให้เห็นบน Google Drive เหมือนไฟล์อื่นๆ
Scripts Bound to Google Sheets, Docs, or Forms
Script ประเภทนี้จะสร้างขึ้นจากไฟล์ Google Apps อื่นเช่น Sheets, Forms และจะผูกอยู่กับไฟล์นั้นเป็นส่วนหนึ่งของไฟล์นั้น ดังนั้นเราจะไม่เห็นมันอยู่ใน Drive ของเรา
Web Apps and Google Sites Gadgets
ถ้าเราสร้าง User Interface ให้ Script ของเรา (เช่นด้วย html + css) เราก็สามารถ publish เป็น web apps ได้ โดย ผู้ใช้งานสามารถเรียกใช้งานได้โดยตรงผ่าน browser เช่นเดียวกับ web apps ทั่วไป
จากนั้นผู้เข้าร่วมอบรม ร่วมกันทำแบบฝึกหัดตามตัวอย่างของ Google เริ่มจาก
Sample Apps Script
** เพื่อป้องกันความผิดพลาดในการ run script แนะนำว่าควรเปลี่ยนภาษาการใช้งานของ google account เราเป็นภาษาอังกฤษก่อน
ตามธรรมเนียมแล้วก็ต้องเริ่มด้วย script Hello world กันก่อน scriptนี้จะสั่งให้สร้าง google doc ที่ชื่อ Hello, World! แล้วส่ง link ของไฟล์มาให้เราทาง e-mail
มีขั้นตอนการสร้างดังนี้
1. ไปที่ script.google.com (log in ด้วย google account)
2. คลิก Start Scripting
3. ปิด welcome screen
4. ลบ code ใน editor และ เขียน code ตัวอย่างด้านล่างนี้ลงไปแทน
function createAndSendDocument() { var doc = DocumentApp.create('Hello, world!'); doc.getBody().appendParagraph('This document was created by Google Apps Script.'); var url = doc.getUrl(); var email = Session.getActiveUser().getEmail(); var subject = doc.getName(); var body = 'Link to your doc: ' + url; GmailApp.sendEmail(email, subject, body); }
5. save file
6. click ► (run)
7. อนุญาติสิทธิ์ต่างๆให้กับ Script
เท่านี้ เราก็จะได้รับ mail แจ้ง link ของไฟล์ Doc ที่ถูกสร้างโดย Script ซึ่งจะอยู่ใน Drive เรานั่นเอง งานที่ดูจะซับซ้อนกลับเขียนได้ด้วย code แค่ 7 บรรทัดเท่านั้น สั้นและง่ายมากๆ
* รายละเอียดตัวอย่างนี้และวิดีโอสาธิต ดูได้ที่ https://developers.google.com/apps-script/overview
หลังจากนั้น อาจารย์โอ๋ให้คำอธิบายเพิ่มเติม และนำเข้าสู่ตัวอย่างที่ซับซ้อนขึ้นอีกมากมายหลายตัวอย่าง เช่นการสร้าง Add-on บน Google Docs, Sheets ที่จะมีการเพิ่มเมนู และ user interface เป็น sidebar เมื่อเรียกใช้งาน โดยใช้ html และ css อย่างการสร้าง add-on ให้ google docs เพื่อใช้แปลภาษาในไฟล์, การ Handling ข้อมูลที่ user กรอกบน Google Form แล้ว email แจ้งผู้กรอกและผู้สร้างฟอร์มอัตโนมัติ การเรียกใช้ Google Maps API , Google Calendar API เป็นต้น
รายละเอียดดูได้ใน slide ข้างต้น
การอบรมไปค่อนข้างเร็ว แต่ระหว่างการอบรมมีผู้ช่วยสอน (TA) หลายท่าน ซึ่งเป็นนักศึกษาด้านคอมพิวเตอร์จาก ม.ขอนแก่น คอยให้ความช่วยเหลือแนะนำผู้เข้าร่วมอบรมเมื่อติดขัดหรืออาจตามไม่ทันตลอดเวลา ทำให้การอบรมเป็นไปอย่างราบรื่น สลับกับการถามตอบปัญหาชิงรางวัลเล็กๆน้อยหลายรางวัลอย่างเป็นกันเองจากอาจารย์โอ๋ (ซึ่ง อ.กานดา ฝากมา เป็น เสื้อ และ ตุ๊กตาน่ารัก จาก Google) บรรยากาศจึงสนุกสนานไม่เครียด แม้เนื้อหาจะค่อนข้างลึกก็ตาม ท้ายสุดอาจารย์โอ๋ให้ผู้เข้าอบรมทำตัวอย่างที่มีปัญหาซ่อนอยู่ โดยไม่เฉลย ผู้ที่หาทางแก้ปัญหาทำให้ Script รันได้สมบูรณ์ก่อน จะได้รับรางวัลใหญ่เป็น Chromebook หนึ่งเครื่องเอาไปใช้เขียน Apps Script ต่อที่บ้านได้เลย ซึ่งหลายท่านก็สามารถแก้ปัญหาได้อย่างรวดเร็วมาก แต่สุดท้ายผู้ที่เฉือนเอาชนะได้ก่อน คือท่านผู้เข้าอบรมท่านนี้ เราขอแสดงความยินดีและชื่นชมในความสามารถของท่านด้วย
บทความอื่นเกี่ยวกับ Google Apps Script
เพิ่ม Function BAHTTEXT ให้ Google Sheet ง่ายๆด้วย Google Apps Script
ขอขอบคุณ True IDC , สำนักงานพัฒนาธุรกรรมทางอิเล็กทรอนิกส์ กระทรวงเทคโนโลยีสารสนเทศและการสื่อสาร และ มหาวิทยาลัยขอนแก่น