Webhook: Chuyển dữ liệu tự động từ Request sang Workflow in

Sửa đổi trên: Sat, 27 Tháng 7, 2024 tại 9:54 SA


Trong trường hợp: khi tạo, xét duyệt hoặc từ chối một đề xuất trên Request tự động chuyển và tạo một nhiệm vụ mới sang Workflow.

Lưu ý: Người tạo đề xuất trong nhóm đề xuất có cài đặt Webhook là người được quyền tạo nhiệm vụ và là thành viên trong quy trình bên Workflow. 


Để thiết lập Webhook giữa hai ứng dụng Request và Workflow, bạn thao tác theo các bước sau: 


Bước 1: Thiết lập các trường dữ liệu tùy chỉnh

Thiết lập các trường dữ liệu tùy chỉnh của Request và Workflow giống nhau về:
- Loại dữ liệu (type)

- Mã key của trường dữ liệu (input key) 

- Trường dữ liệu bắt buộc (required) bên Workflow


Ví dụ: Khi chuyển dữ liệu từ đề xuất mua hàng (Request) sang nhiệm vụ cho luồng công việc Sản xuất - mua hàng (Workflow), Workflow có 3 trường thông tin “Tên thiết bị, Lý do đề xuất, Chi phí dự kiến” muốn lấy dữ liệu sang thì Request cần thiết lập các trường dữ liệu tương ứng và trùng mã key trên hệ thống.


Thiết lập các trường dữ liệu tùy chỉnh trên Workflow

Thiết lập các trường dữ liệu tùy chỉnh trên Request

Lưu ý: 

  • Với trường dữ liệu dạng bảng và danh sách tùy chọn, các thông tin của hai trường tùy chỉnh này ở Request và Wework cần được thiết lập giống nhau từng cột, hàng, thứ tự + số lượng các lựa chọn.         

  • Kiểm tra lại tên trường dữ liệu và input key của các trường dữ liệu của Request và Workflow phải trùng nhau thì mới có thể chuyển được dữ liệu tự động

  • Tránh chỉnh sửa input key nếu đã có dữ liệu, việc chỉnh sửa sẽ ảnh hưởng đến các dữ liệu đã được tạo ra và mẫu in. (Nếu inputkey không trùng nhau thì cài đặt transformer theo Bước 4)


Cách kiểm tra input key trong Request và Workflow:

Request 

Workflow

Bước 2: Copy API tạo của Quy trình bên Workflow 

Truy cập vào https://workflow.base.vn/, tại màn hình chính của quy trình >> Click vào icon "..." >> Quản lý webhooks của quy trình 

Copy đoạn “API tạo” trong Workflow.

Bước 3: Dán API tạo vào Quản lý Webhook của nhóm đề xuất bên Request

Truy cập https://request.base.vn/ >> Tùy chỉnh >> Tất cả nhóm đề xuất >> Chọn nhóm đề xuất cần cài đặt Webhook Tại tùy chỉnh của nhóm đề xuất này, chọn Chuyển tiếp & Webhook >> Chỉnh sửa

Dán “API tạo” ở Bước 2 vào một trong các mục bên dưới nếu muốn nhiệm vụ được chuyển từ các trạng thái của đề xuất đó.

  • requestCreated: khi đề xuất được tạo thì một nhiệm vụ mới sẽ được tạo tự động.
  • requestApproved: khi đề xuất được chấp thuận hoàn toàn thì một nhiệm vụ mới sẽ được tạo tự động
  • requestRejected: khi đề xuất bị từ chối thì một nhiệm vụ mới sẽ được tạo tự động

Sau khi thiết lập Webhook như trên, hệ thống sẽ tự động tạo ra 1 nhiệm vụ trên Workflow với các thông tin như sau: 

  • Tên nhiệm vụ: giữ nguyên theo tên đề xuất.

  • Người tạo nhiệm vụ: giữ nguyên là người tạo đề xuất.

  • Người thực thi nhiệm vụ: giữ nguyên là người tạo đề xuất.

  • Người theo dõi nhiệm vụ giữ nguyên là người theo dõi đề xuất

  • Trường hợp tạo trường dữ liệu theo bước 1, hệ thống sẽ chuyển cả các trường dữ liệu đó.

  • Các thông tin khác trong đề xuất sẽ không chuyển tự động sang Workflow.

Nếu cần thiết lập nâng cao, cần thay đổi các thông tin này hay chuyển tự động sang các thông tin khác, bạn tham khảo bước 4. 

Bước 4: Thiết lập Transformer

Có 2 cột dữ liệu trong Transformer

- Final key (bên trái): mã của biến/trường dữ liệu bên Workflow

Cú pháp:

- Nếu là biến hệ thống: {key}

- Nếu là trường tùy chỉnh: {custom_inputkey}


- Original key (bên phải): nội dung hoặc mã của biến/trường dữ liệu bên Request

Cú pháp:

- Nếu là biến hệ thống: {key}

- Nếu là trường tùy chỉnh: {custom_inputkey}

Lưu ý: Các biến transformer cần viết in thường, không viết in hoa thì dữ liệu mới được bắn tự động.

Có 3 nhóm thông tin có thể chuyển được với Transformer của Webhook:

Trường hợp 1: Nhóm liên quan đến thông tin cơ bản (name: tên nhiệm vụ, content: mô tả)

  • Chuyển tên đề xuất của Request sang tên của nhiệm vụ bên Workflow

- name - đại diện cho tên của nhiệm ở Workflow

- {name} - sử dụng tên của đề xuất ở Request.

- [Chuyển từ Request] - phần nội dung cố định muốn chèn thêm vào tên nhiệm vụ. (có thể tùy chỉnh)

  • Tự động thêm phần miêu tả của nhiệm vụ 

- {name} là tên của đề xuất ở Request.

- content là mô tả nhiệm vụ trên Workflow

Trường hợp 2: Nhóm liên quan đến những người liên quan (username, creator_username, followers)

  • Tự động chỉ định cụ thể người tạo nhiệm vụ. Nếu không sử dụng transformer này thì mặc định người tạo đề xuất là người tạo nhiệm vụ.

- creator_username" đại diện cho người tạo jobs ở Workflow.

- "@minhdp" là username được chỉ định sẽ tạo nhiệm vụ tự động.

  • Tự động chỉ định cụ thể người thực thi nhiệm vụ

Nếu không sử dụng transformer này thì mặc định người tạo đề xuất là người thực thi nhiệm vụ.

- "username" đại diện cho người thực hiện nhiệm vụ ở Workflow

- "@chichile" là username của người được chỉ định thực thi nhiệm vụ. 

  •  Tự động thêm người theo dõi nhiệm vụ 

- "followers" là danh sách người theo dõi nhiệm vụ

- "@minhdang” là người theo dõi được thêm vào nhiệm vụ.

Các trường hợp khác tự động thêm người theo dõi công việc thì điền Original key là {key}
Ví dụ: 

- {owners}: danh sách người duyệt đề xuất 

- {followers}: danh sách người theo dõi đề xuất

- {username}: người tạo đề xuất


Trường hợp 3: Các trường dữ liệu tùy chỉnh (Customfields)

- Trường hợp Customfields ở Request và Workflow đã giống nhau như hướng dẫn bước 1 thì không cần sử dụng Transformer.

-  Với những trường tùy chỉnh ở hai bên không trùng mã mà vẫn muốn dữ liệu được chuyển sang, cần tạo thêm transformer với cú pháp:

+ Final key (bên trái): custom_inputkey ở Workflow 

+ Original key (bên phải): {custom_inputkey} ở Request

Ví dụ: Muốn lấy nội dung trong trường thông tin Số lượng thiết bị (inputkey là so_luong) trong Request thì sẽ điền {custom_so_luong}

Bước 5: Hoàn tất thiết lập 

Các thông tin của một nhiệm vụ mới được tự động tạo ra có thiết lập Transformer

* Tham khảo thêm các biến của Webhook Workflow tại đây


Câu trả lời này có giúp ích cho bạn không? Yes No

Send feedback
Rất tiếc là chúng tôi không giúp được nhiều. Hãy giúp chúng tôi cải thiện bài viết này bằng phản hồi của bạn.