Tổng quan: Google App Script là ngôn ngữ lập trình dựa trên JavaScript với trình biên tập, biên dịch, nơi lưu trữ file đều nằm trên mây (máy chủ của Google). Với công cụ này, bạn có thể lập trình để thao tác, can thiệp đến rất nhiều các dịch vụ của Google. Do chương trình nằm trên mây nên có thể được chạy một cách tự động theo những khoảng thời gian chọn trước hoặc có một sự kiện diễn ra.

Công cụ: để làm việc với Google App Script đơn giản chỉ là một máy tính có nối mạng và 1 tài khoản Gmail.

Giới thiệu:

Cách đây khoảng 2 năm, trong nỗ lực tìm kiếm một giải pháp tự động hóa một số khâu sổ sách tại công ty, tôi vô tình biết đến Google App Script. Tôi nhận thấy đây là một công cụ rất mạnh mẽ và có nhiều ưu điểm. Trên thực tế tôi đã sử dụng nó để tự động hóa rất nhiều khâu trong công ty của mình. Trong quá trình tìm hiểu, tôi nhận thấy rằng số lượng tài liệu và những “chuyên gia” trong lĩnh vực này tại Việt Nam khá ít ỏi. Vì vậy, bằng kinh nghiệm của mình, tôi sẽ làm một tutorial nhằm giới thiệu cho các bạn về khả năng, và một số bước đầu tiên tiếp cận với Google App Script.

Bạn nên đọc hết phần giới thiệu về Google App Script để biết công cụ này có thể làm được gì. Và nếu bạn thấy hứng thú với những khả năng của nó, hoặc vì nó có thể giải quyết được cho bạn một vấn đề gì đó trong cuộc sống của bạn, thì hãy đọc tiếp bài sau đó và làm theo; bạn sẽ có một khởi đầu nhanh chóng để tiếp cận công cụ này (hơn là tự mò mẫm như tôi ngày trước).

Tutorial gồm 2 bài:

  • Google App Script là gì và làm được gì?
  • Khởi đầu với Google App Script: tạo một chương trình trộn thư và gửi email khi có “lệnh”.

Phần 1: Google App Script là gì và làm được gì?

Google App Script là một ngôn ngữ lập trình theo kịch bản, dựa trên JavaScript, được sử dụng để thao tác với rất nhiều các dịch vụ của Google. Hiện nay (tháng 11 năm 2017),  Google App Scriptcơ bản đã có thể sử dụng để lập trình nhằm thao tác với các dịch vụ sau:

  • Calendar (Lịch)
  • Contacts (Danh bạ)
  • Documents (Tài liệu)
  • Drive (Lưu trữ đám mây)
  • Forms (Biểu mẫu)
  • Gmail (Email)
  • Group (Nhóm)
  • Language (Dịch)
  • Maps (Bản đồ)
  • Sites (Trang web)
  • Slides (Trình chiếu)
  • SpreadSheet (Bảng tính).

Nếu thiết lập Google App Script nâng cao thì bạn có thể lập trình để thao tác thêm với các dịch vụ sau:

  • Youtube (Video)
  • Adsense (Cho thuê quảng cáo)
  • Analytics (Phân tích website)
  • Google + (Mạng xã hội)
  • Và một số ứng dụng khác: Classroom, Mirror, URL Shortenner….

Ứng dụng của Google App Script:

  • Thêm Menu, hộp thoại, sidebar vào Google Docs, Sheets, and Forms. Các dịch vụ này đã có sẵn Menu, hộp thoại, sidebar cơ bản, nhưng bạn có thể dùng Google App Script để thêm vào các thành phần này những tính năng tùy biến của bản thân để tiện sử dụng sau này.
  • Tạo các hàm của chính mình để bổ sung vào SpreadSheet, những hàm mà trong Spreadsheet còn thiếu hay chưa phù hợp với bạn.
  • Tạo ra những ứng dụng web (web apps), nghĩa là một ứng dụng chạy trên nền web, một ứng dụng trên “mây”.
  • Tương tác với các dịch vụ khác như: AdSense, Analytics, Calendar, Drive, Gmail, and Maps…
  • Tạo một Add-ons để bổ sung tính năng cho Google Docs, Sheets, Slides, and Forms và phát hành trên cửa hàng Add-ons store.
  • Chuyển đổi một Android thành một Android add-on.

Một vài ví dụ về ứng dụng Google App Script:

  • Bạn có một bảng tính (SpreadSheet), người dùng sẽ thông qua một biểu mẫu (Forms) để bổ sung thêm thông tin vào bảng tính này. Vào một giờ nhất định trong ngày, chương trình sẽ tự động tổng kết, thống kê, tính toán… gì đó dựa trên bảng tính và gửi email kết quả tới những người có trách nhiệm liên quan. Mỗi người nhận có thẩm quyền khác nhau sẽ được nhận email với nội dung khác nhau phù hợp với thẩm quyền của người đó.
  • Bạn một danh sách những người nhận và những thông tin khác cùng một định dạng email mẫu. Đến một thời gian nào đó trong ngày, hoặc khi nhận được lệnh (ví dụ như thông qua 1 Forms) phần mềm sẽ điền những thông tin của người nhận vào email mẫu (trộn thư – merge mail), rồi tự động gửi email đến người nhận. (Một hình thức gửi email hàng loạt theo danh sách).
  • Tạo một danh sách hàng hóa ở SpreadSheet. Từ danh sách này tạo thành Forms đặt hàng cho khách hàng đặt hàng. Khi khách hàng đặt hàng thì ghi thông tin đặt hàng lại, tính tiền cho đơn hàng. Danh sách hàng hóa sẽ được gửi email đến bộ phận kho, còn thông tin về tiền hàng sẽ được gửi email đến bộ phận kế toán…
  • Bạn dùng một Forms để khảo sát thông tin. Khi một người nộp Forms sẽ gửi email cảm ơn họ theo một định dạng mà bạn chọn trước. Đến cuối ngày, phần mềm tự tổng kết kết quả khảo sát và gửi cho người có trách nhiệm.
  • Bạn chia sẻ file trong Drives của mình cho người khác theo giờ (đến giờ làm việc thì mở, hết giờ thì đóng chia sẻ).
  • Và rất nhiều các ứng dụng khác tùy theo nhu cầu của bạn….

Thử trải nghiệm khả năng của Google App Script:

Ngay phía dưới đây tôi đã tích hợp sẵn một Google form vào bài viết.

Nếu bạn điền các thông tin vào, đặc biệt là địa chỉ email đúng, sau đó bấm Submit thì sau một khoảng thời gian ngắn, hệ thống sẽ gửi email về cho bạn. Nội dung email cho bạn biết một vài thông tin thú vị dựa vào những gì bạn đã nhập vào Form.

Trong email nhận được sẽ có đường link để bạn có thể thấy những thông tin của mình đã được ghi lại trên Google Speadsheet.

Xin cam đoan các đường link là hoàn toàn an toàn, và việc nhập email của bạn vào Form là để Google App Script có thể gửi email lại cho bạn, chứ không hề có mục đích thu thập email để sử dụng với bất kỳ mục đích nào khác.

Bạn đã thử chưa, rất tuyệt phải không? Form tạo giao diện, log dữ liệu vào Spreadsheet và gửi email thông báo cho những người có liên quan về những thông tin vừa được gửi.

App này tôi viết đơn giản, chỉ link Forms, Spreadsheet và Gmail. Trên thực tế Google App Script còn có thể liên kết hàng loạt các dịch vụ khác nữa (như đã kể trên), tha hồ mà bạn sáng tạo.

Nào, bạn có thể thử! Ngay dưới đây.

Ưu điểm của Google App Script:

  • Ứng dụng của Google App Script chạy trên máy chủ của Google (đều trên mây) nên có thể thực hiện các tác vụ được định thời một cách tự động (tới giờ thì tự làm) hoặc khi có một sự kiện nào đó (người dùng nộp form, có comment mới….)
  • Toàn bộ đều ở trên mây, có thể làm việc với Google App Script trên trình duyệt mà không cần phải cài thêm chương trình nào. Miễn có mạng thì có thể làm ở bất cứ kỳ đâu, bất cứ lúc nào.
  • Có thể chạy ứng dụng trên nhiều loại thiết bị: máy tính, tablet, điện thoại…
  • Không tốn tài nguyên trên máy tính của bạn.
  • Liên kết rất nhiều các dịch vụ của Google nên khả năng tùy biến rất cao.

Nhược điểm của Google App Script:

  • Google giới hạn về thời gian thực thi một chương trình. Bạn không thể viết một chương trình quá nặng rồi chiếm dụng luôn tài nguyên của máy chủ Google được.
  • Lâu lâu thì máy chủ của Google cũng gặp sự cố trong việc thực thi chương trình làm chương trình không chạy được. Tức là không phải xác suất gọi chạy thành công của chương trình là 100%.

Những công cụ chính nếu bạn muốn tự tìm hiểu về Google App Script:

  • Công cụ biên tập IDE của Google App Script là dựa trên trình duyệt Web. Có thể làm việc mọi lúc mọi nơi nếu có mạng Internet.
  • Trang web chính cho Google App Script bao gồm rất nhiều tài liệu và Tutorial, các ví dụ, các công cụ để tra cứu chức năng hàm… là ở đây. Có thể là hơi nhiều các vấn đề sẽ khiến cho bạn bị “khớp”. Nhưng đây là trang đầy đủ nhất, cập nhật nhất. Bạn nên ghé lại thường xuyên nếu có quan tâm đến Google App Script.
  • Nếu bạn có những trục trặc, thắc mắc mà tự mình không giải quyết được, hãy Google. Hãy dùng từ khóa tiếng Anh để mô tả vấn đề mà bạn gặp phải cùng với từ khóa “Google App Script” vào câu hỏi để có thể có được kết quả đúng nhất. Tất nhiên bạn cũng phải có khả năng đọc hiểu tiếng Anh chút chút để đọc các câu trả lời.
  • Cộng đồng trao đổi kỹ thuật về lập trình lớn nhất thế giới, trang StackOverFlow.com có thể sẽ là nơi chứa các câu trả lời cho những vướng mắc của bạn. Bạn có thể tìm thấy những câu trả lời chất lượng cho hầu hết các ngôn ngữ lập trình chứ không chỉ là Google App Script. Hãy Google vấn đề của bạn cộng thêm với từ khóa “StackOverFlow” để nhanh chóng tiếp cận các câu trả lời tốt nhất.

Ok, đến đây thì bạn cũng đã biết rõ về khả năng cũng như ưu nhược điểm của Google App Script. Nếu bạn thấy hứng thú, hãy theo dõi bài tiếp theo. Ở đó, tôi sẽ hướng dẫn cụ thể có hình ảnh để bạn làm môt chương trình Google App Script đầu tiên (chương trình có tương tác với Forms, SpeadSheet và Gmail).