Tự Động Hóa Gửi Thông Báo Qua Slack Từ Google Sheets Bằng Apps Script

Trong môi trường doanh nghiệp, việc theo dõi và cập nhật thông tin liên tục là vô cùng quan trọng. Một trong những công cụ hữu ích giúp bạn thực hiện điều này là Slack, một nền tảng giao tiếp được sử dụng rộng rãi. Bài viết này sẽ hướng dẫn bạn cách tự động hóa việc gửi thông báo qua Slack khi có thay đổi trong Google Sheets bằng Google Apps Script.

1. Tạo một Webhook Incoming trên Slack

Để bắt đầu, bạn cần tạo một Webhook Incoming trên Slack, cho phép Google Sheets gửi dữ liệu trực tiếp đến một kênh Slack cụ thể.

  • Đăng nhập vào tài khoản Slack của bạn và truy cập vào Incoming Webhooks.
  • Nhấp vào Create New App và đặt tên cho ứng dụng của bạn.
  • Chọn workspace mà bạn muốn ứng dụng của mình kết nối đến, sau đó nhấn Create App.
  • Trong phần Incoming Webhooks, bật Webhooks và tạo một Webhook mới cho kênh bạn muốn gửi thông báo.
  • Sao chép URL của Webhook. Bạn sẽ cần nó trong phần sau.
Tự Động Hóa Gửi Thông Báo Qua Slack Từ Google Sheets Bằng Apps Script

2. Viết Mã Apps Script để Gửi Thông Báo

Mở Google Sheets, sau đó vào Extensions > Apps Script để mở trình soạn thảo mã. Dán đoạn mã dưới đây vào:

function sendSlackNotification(message) {
  var url = 'YOUR_WEBHOOK_URL'; // Thay thế bằng URL Webhook của bạn

  var payload = {
    "text": message,
    "username": "Google Sheets Bot", // Tên bot sẽ hiển thị trên Slack
    "icon_emoji": ":robot_face:" // Biểu tượng cho bot
  };

  var options = {
    "method": "post",
    "contentType": "application/json",
    "payload": JSON.stringify(payload)
  };

  UrlFetchApp.fetch(url, options);
}

function onEdit(e) {
  var sheet = e.source.getActiveSheet();
  var range = e.range;
  var newValue = range.getValue();

  var message = 'Dữ liệu mới đã được nhập vào ' + sheet.getName() + ' tại ô ' + range.getA1Notation() + ': ' + newValue;

  sendSlackNotification(message);
}

3. Cách Hoạt Động của Mã

  • sendSlackNotification: Hàm này chịu trách nhiệm gửi thông báo đến Slack. Nó sử dụng UrlFetchApp.fetch để gửi một HTTP POST request đến URL Webhook của bạn.
  • onEdit: Đây là một trigger tự động chạy khi bạn chỉnh sửa bất kỳ ô nào trong Google Sheets. Hàm này xác định ô nào đã được chỉnh sửa và giá trị mới của nó, sau đó gọi hàm sendSlackNotification để gửi thông báo.

4. Kích Hoạt Trigger

Để kích hoạt hàm onEdit, bạn không cần làm gì thêm vì đây là một trigger built-in của Apps Script. Mỗi khi có thay đổi trong Google Sheets, thông báo sẽ tự động được gửi đến kênh Slack mà bạn đã cấu hình.

5. Tận Dụng Ứng Dụng Trong Thực Tế

Việc tự động hóa này không chỉ giúp bạn tiết kiệm thời gian mà còn đảm bảo rằng bạn không bỏ lỡ bất kỳ thay đổi quan trọng nào trong dữ liệu. Bạn có thể mở rộng mã để gửi thông báo khi dữ liệu vượt quá một ngưỡng nhất định, hoặc khi có ai đó thêm một hàng mới.

Kết Luận

Google Apps Script là một công cụ mạnh mẽ giúp bạn tích hợp và tự động hóa công việc giữa các ứng dụng của Google và các dịch vụ bên ngoài như Slack. Bằng cách tận dụng Apps Script, bạn có thể dễ dàng theo dõi và quản lý thông tin mà không cần tốn nhiều công sức thủ công. Hãy thử áp dụng giải pháp này để nâng cao hiệu quả công việc của bạn ngay hôm nay!

Dịch vụ lập trình ứng dụng

🎯 Lập trình API, Python, Node JS, Telegram Bot, Automate Workflow, Power Apps and Apps Script.

📒 Nhận dạy Lập trình Apps Script, Power Apps từ cơ bản đến nâng cao.

📞 +84 78 600 5534 (Zalo, WhatsApp, Telegram)

💻 Github

🌏 appscript.online

Viết một bình luận