Webhook: Chuyển dữ liệu tự động từ Request sang Wework in
Sửa đổi trên: Sat, 14 Tháng 9, 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 công việc mới sang Wework.
Lưu ý: Người tạo đề xuất cần có quyền tạo công việc trong dự án/phòng ban trên Wework.
Để thiết lập Webhook giữa hai ứng dụng Request và Wework, 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à Wework 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 Wework
Ví dụ: Khi chuyển dữ liệu từ đề xuất mua hàng (Request) sang công việc của Phòng mua hàng (Wework), Wework 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 Wework
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à Wework 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à Wework:
Request
WeWork
Bước 2: Copy API tạo của dự án/phòng ban bên Wework
Truy cập vào https://wework.base.vn/, tại màn hình chính của dự án/phòng ban >> Click vào icon "..." >> Quản lý webhooks
Copy đoạn “API tạo” trong Wework.
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 công việc được chuyển từ các trạng thái của đề xuất đó.
- requestCreated: khi đề xuất được tạo thì một công việc mới sẽ được tạo tự động.
- requestApproved: khi đề xuất được chấp thuận hoàn toàn thì một công việc mới sẽ được tạo tự động
- requestRejected: khi đề xuất bị từ chối thì một công việc 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 công việc trên WeWork với các thông tin như sau:
- Tên công việc: giữ nguyên theo tên đề xuất.
- Người tạo việc: giữ nguyên là người tạo đề xuất.
- Người nhận việc: 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 WeWork.
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 Wework
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 công việc, content: mô tả).
- Một số mã inputkey đặc biệt khi bắn webhook vào Wework để tạo công việc:
- tasklist_id: các công việc sẽ được tạo và nằm trong nhóm công việc có tasklist_id được setup
- deadline: giá trị thời hạn công việc theo ngày (20/09/2024)
- deadline_datetime: giá trị thời hạn công việc theo ngày giờ
- deadline_time: giá trị thời hạn công việc theo thời gian (20:09)
- start_time: giá trị ngày bắt đầu công việc (20/09/2024)
- tags: danh sách tag của công việc
Bài toán: Nhân viên tạo đề xuất Bổ sung vật liệu trên Request, phải nhập thông tin Thời gian dự kiến cấp chi phí mua vật liệu. Khi đề xuất Bổ sung được duyệt, sẽ tự động tạo 1 công việc với Thời hạn trùng với Thời gian cấp chi phí dự kiến.
- B1: Tạo trường tùy chỉnh Thời gian dự kiến ở Request ở dạng text/date/datetime
= > input-key của trường này là thoi_gian_du_kien
- B2: Viết cú pháp Transformer
Final key: deadline (biến của WeWork, lấy trong hướng dẫn này)
Original key: {custom_thoi_gian_du_kien} (cú pháp: {custom_key})
Lưu ý: Về loại dữ liệu của trường tùy chỉnh này bên Request
- Nếu chọn định dạng text/văn bản ngắn thì người tạo Request cần nhập thời gian ở định dạng dd/mm/yyyy
- Nếu chọn định dạng date/ngày thì thời hạn/deadline = 23h59 ngày đó
- Chuyển tên đề xuất của Request sang tên của công việc bên WeWork
- name - đại diện cho tên của công việc bên WeWork
- {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 công việc. (có thể tùy chỉnh)
- Tự động thêm phần miêu tả của công việc
- content là mô tả công việc trên Wework
- {name} là tên của đề xuất ở Request.
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 công việc. 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 công việc.
- creator_username" đại diện cho người tạo task ở Wework.
- "@minhdp" là username được chỉ định sẽ tạo công việc tự động.
- Tự động chỉ định cụ thể người được giao công việc
Nếu không sử dụng transformer này thì mặc định người tạo đề xuất là người được giao công việc.
- "username" đại diện cho người được giao công việc ở Wework
- "@chichile" là username của người được chỉ định được giao việc.
- Tự động thêm 1 người theo dõi công việc
Nếu không sử dụng transformer này thì mặc định người theo dõi đề xuất làm người theo dõi công việc
- "followers" là danh sách username người theo dõi công việc.
- "@minhdang” là người theo dõi được thêm vào công việc.
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à Wework đã 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 ở Wework
+ 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 công việc 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 Wework tại đây
Câu trả lời này có giúp ích cho bạn không? Yes No
Send feedback