> For the complete documentation index, see [llms.txt](https://docs.verge.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.verge.io/knowledge-base/vi/automation-api/automated-task-example-webhook.md).

# Ví dụ tác vụ tự động - Gửi cảnh báo đến kênh Slack và email khi có lỗi đồng bộ

## Gửi thông báo kênh Slack và cảnh báo email khi có lỗi đồng bộ

{% hint style="info" %}
**Các điểm chính**

* Tham số ***Công cụ tác vụ VergeOS*** cho phép bạn tự động hóa các thao tác, được kích hoạt bởi các điều kiện hệ thống cụ thể, sự kiện hoặc thời điểm đã lên lịch. Sử dụng các thành phần mô-đun, có thể tái sử dụng (tác vụ, sự kiện, lịch biểu và webhook), bạn có thể dễ dàng cấu hình tự động hóa phù hợp với môi trường của mình.
* Ví dụ sau minh họa cách các tác vụ, sự kiện và webhook phối hợp với nhau để tự động gửi đồng thời các cảnh báo (kênh Slack và email) khi có bất kỳ lỗi nào do một thao tác đồng bộ tạo ra.
  {% endhint %}

## Trường hợp sử dụng

Các quản trị viên của nhà cung cấp dịch vụ DR/BC cần được thông báo ngay lập tức nếu một công việc đồng bộ ban đêm gặp lỗi. Thông báo sớm cho họ thời gian để điều tra và thử khắc phục, tăng khả năng họ có thể khởi động lại việc đồng bộ và hoàn tất trong khoảng thời gian đồng bộ khả dụng.

Công ty sử dụng nhiều hệ thống cảnh báo dự phòng để thông báo cho quản trị viên về các sự cố nghiêm trọng: một hệ thống gửi cảnh báo qua email, trong khi hệ thống khác đăng tin nhắn lên một kênh Slack chuyên dụng.

Sử dụng các thành phần của VergeOS Task Engine, quản trị viên có thể ngay lập tức kích hoạt cảnh báo trên cả hai hệ thống bất cứ khi nào một công việc đồng bộ quan trọng báo lỗi. Tự động hóa này bao gồm một webhook, hai tác vụ và một sự kiện. Các bước bên dưới sẽ hướng dẫn bạn toàn bộ cấu hình:

{% hint style="info" %}
**1. Cấu hình Webhook**

Webhook xác định URL đích và phương thức xác thực mà hệ thống Slack bên ngoài yêu cầu.

***Hệ thống > Bảng điều khiển Tác vụ > Webhook mới***

<img src="/files/2fd4b40680444577d8d3b490649add7422aec38b" alt="Create webhook" data-size="original">
{% endhint %}

{% hint style="info" %}
**2. Tạo một Tác vụ để Gửi Email**

Tác vụ này xác định cảnh báo email sẽ được gửi.

***Hệ thống > Bảng điều khiển Tác vụ > Tác vụ mới***

<img src="/files/569e2fd70b32c46becac72cdb65d2078fcf3f146" alt="Create webhook" data-size="original">
{% endhint %}

{% hint style="info" %}
**3. Tạo một Tác vụ để Gửi Webhook**

Tác vụ này xác định phần nội dung thông điệp sẽ được gửi tới Slack thông qua webhook.

***Hệ thống > Bảng điều khiển Tác vụ > Tác vụ mới***

<img src="/files/417cfe13e1a7232ded16101e6002b7f29a87d478" alt="Create Slack webhook task" data-size="original">
{% endhint %}

{% hint style="info" %}
**4. Gán một Bộ kích hoạt Sự kiện cho&#x20;*****Send-slack-payload*****&#x20;Tác vụ**

Việc gán bộ kích hoạt sự kiện cho phép chúng ta chỉ định điều kiện (một lỗi đồng bộ) sẽ kích hoạt tác vụ.

Từ *Send-slack-payload* bảng điều khiển tác vụ: ***Bộ kích hoạt Sự kiện > Mới***

<img src="/files/bf0befbfd10cfa83d851d0d905b30ea1f0679ada" alt="Assign Event Trigger to Slack Task" data-size="original">
{% endhint %}

{% hint style="info" %}
**5. Gán một Bộ kích hoạt Sự kiện cho&#x20;*****'send-email-alert'*****&#x20;Tác vụ**

Chúng ta áp dụng cùng một bộ kích hoạt sự kiện cho tác vụ này để cảnh báo email cũng được gửi khi có lỗi đồng bộ.

***Hệ thống > Bảng điều khiển Tác vụ > Tác vụ >*** chọn *send-email-alert* tác vụ ***> Bộ kích hoạt Sự kiện > Mới***

<img src="/files/4ca7bcc996959af2fdc907747dc5fbdd29dbfa11" alt="Assign Event Trigger to Email Task" data-size="original">
{% endhint %}

Tự động hóa này đảm bảo rằng các quản trị viên được thông báo ngay lập tức khi một công việc đồng bộ gặp lỗi, cho phép họ hành động kịp thời, mang lại cơ hội tốt nhất để giải quyết sự cố trước khi cửa sổ đồng bộ kết thúc.

{% hint style="success" %}
**Kích hoạt dựa trên nhiều đối tượng**

Trong ví dụ này, bộ kích hoạt được gắn với một lần đồng bộ đi duy nhất. Nếu bạn muốn cùng một bộ kích hoạt áp dụng cho nhiều, hoặc thậm chí tất cả, các công việc đồng bộ đi, hãy gán một [Thẻ](/run-the-platform/system-administration/tags.md) dùng chung cho các lần đồng bộ đó. Sau đó, bạn có thể cấu hình bộ kích hoạt để kích hoạt bất cứ khi nào bất kỳ lần đồng bộ nào có thẻ đó tạo ra lỗi.
{% endhint %}

## Khắc phục sự cố

{% hint style="warning" %}
**Các sự cố thường gặp**

* **Webhook không được kích hoạt**: Xác minh rằng URL webhook là chính xác và dịch vụ bên ngoài (Slack) có thể truy cập từ môi trường VergeOS của bạn.
* **Không nhận được email**: Kiểm tra rằng các cài đặt SMTP đã được cấu hình đúng tại Hệ thống > Cài đặt > SMTP.
* **Bộ kích hoạt sự kiện không được kích hoạt**: Đảm bảo bộ kích hoạt được gán cho đúng đối tượng đồng bộ và loại sự kiện được đặt thành "Lỗi".
  {% endhint %}

## Tài nguyên bổ sung

* [Tổng quan về Task Engine](/automate-protect-and-extend/automation/task-engine.md)
* [Cấu hình Webhook](/automate-protect-and-extend/automation/webhooks.md)
* [Làm việc với Thẻ](/run-the-platform/system-administration/tags.md)
* [Cấu hình SMTP](/run-the-platform/system-administration/smtp.md)

## Phản hồi

{% hint style="info" %}
**Cần trợ giúp?**

Nếu bạn cần thêm hỗ trợ hoặc có bất kỳ câu hỏi nào về bài viết này, vui lòng đừng ngần ngại liên hệ với [Đội ngũ Hỗ trợ VergeOS](/support-and-services.md).
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.verge.io/knowledge-base/vi/automation-api/automated-task-example-webhook.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
