Process REST API คือรายการของ REST API ซึ่งใช้เพื่อนําทางโฟลว์กระบวนการตั้งแต่ต้นจนจบ และเพื่อสื่อสารกันโหนดอื่นๆ ผ่านโฟลว์กระบวนการ การถ่ายโอนข้อมูลเกิดขึ้นผ่านเครือข่ายซึ่งสื่อสารผ่านโปรโตคอล HTTP / HTTPS
ตารางด้านล่างแสดงรายการวิธีการ REST API ที่ให้ไว้เพื่อควบคุมการไหลของกระบวนการ สําหรับรายละเอียดเพิ่มเติม โปรดดู คู่มือ API
Request
Description
HTTP Method
1. /BPMREST/service/runtime/process/start
เมื่อต้องการเริ่มโฟลว์
POST
2. /BPMREST/service/runtime/process/[Process Name]/start
API เก่าเพื่อเริ่มโฟลว์ ไม่แนะนํา
POST
3. /BPMREST/service/runtime/tasks/[Task ID]/claim?user=[User Name]
พื่ออ้างสิทธิ์งานโดยผู้ใช้
POST
4. /BPMREST/service/runtime/tasks/[Task ID]/complete?user=[User Name]
เพื่อให้กระบวนการโดยผู้ใช้เสร็จสมบูรณ์
POST
5. /BPMREST/service/runtime/instance/[Instance ID]/tasks
เมื่อต้องการรับงานตาม instance ID
GET
6. /BPMREST/service/runtime/tasks?[group/role/user]=[User Name/Role Name/Group Name]
เมื่อต้องการรับงานตาม user หรือ role หรือ group name
GET
7. /BPMREST/service/runtime/tasks/[Task ID]/variables
เมื่อต้องการรับ Task variables
POST
8. /BPMREST/service/runtime/tasks/[Task ID]/assign?user=[User Name]&user=[User Name1]..&user=[User Name n]
เมื่อต้องการมอบหมายงานให้กับ user/users
POST
9. /BPMREST/service/runtime/instance/[Instance ID]/tasks/assign?user=[User Name]
เมื่อต้องการกําหนดอินสแตนซ์ให้กับผู้ใช้
POST
10. /BPMREST/service/runtime/refreshCache
เมื่อต้องการรีเฟรชแคชสําหรับกระบวนการทั้งหมด
POST
11. /BPMREST/service/runtime/classAction
เมื่อต้องการรีเฟรชแคชสําหรับกระบวนการเฉพาะ
POST
Custom App เป็นแอพพลิเคชันภายนอกตามธุรกิจของ บริษัท ซึ่งได้รับการพัฒนานอกแพลตฟอร์ม ONEWEB สามารถเรียก Process Runtime โดยใช้ Process REST API เพื่อควบคุมกระบวนการ
ดังนั้นจากแอพที่กําหนดเองนักพัฒนาสามารถใช้ Ajax เพื่อเรียก Rest Services ตัวอย่างวิธีใช้ API แสดงไว้ด้านล่าง
ตัวอย่าง method control process ภาพด้านล่างนี้เป็นกระบวนการสําหรับ "Booking Room" มันเริ่มต้นขั้นตอนด้วยการเลือกห้องแล้วตรวจสอบสถานะการจอง หากจองห้องพักแล้วให้กลับไปเลือกห้องใหม่ มิฉะนั้นหากไม่ได้จองห้องพักให้เพิ่มรายละเอียดของลูกค้าลงในนั้นแล้วบันทึกลงในฐานข้อมูลและอัปเดตสถานะห้อง
ขั้นตอนที่ 1 เริ่มโฟลว์ ส่ง parameter object เพื่อเริ่มโฟลว์ ในกรณีนี้คือ RoomObject และ CustomerInfo
เมื่อเริ่มต้นโฟลว์แล้ว ระบบจะส่งคืน instance id เพื่อควบคุมขั้นตอนต่อไปของกระบวนการ ในกรณีนี้ instance id คือ "122056879-85735849-0b71-4299-9cd2-165f5b31c12e"
ขั้นตอนที่ 2 รับงานตาม instance id ตอนนี้นักพัฒนาสามารถรับ task name โดยใช้ instance id ตั้งแต่ขั้นตอนแรก
สําหรับขั้นตอนที่ 2 ระบบจะส่งคืน task name, task id และอื่น ๆ โปรดดูภาพด้านบน
ขั้นตอนที่ 3 มอบหมายงาน (ตามผู้ใช้) ตอนนี้นักพัฒนาสามารถมอบหมายงานโดยใช้ task id จากขั้นตอนที่ 2 ด้วย URL นี้ด้านล่าง http://192.168.0.213:8080/BPMREST/service/runtime/tasks/122056910-494baede-088f-46bb-8a24-77b049ef996c/assign?user=origcmr4"
หลังจากมอบหมายงานข้อมูลจะปรากฏในรายการสิ่งที่ต้องทําของผู้ใช้ (Origcmr4) (ดูภาพด้านล่าง)
หมายเหตุ: นักพัฒนาซอฟต์แวร์ยังสามารถมอบหมายงานได้โดยใช้ instance id จากขั้นตอนแรกโดย URL นี้ด้านล่าง "http://192.168.0.213:8080/BPMREST/service/runtime/instance/122056879-85735849-0b71-4299-9cd2-165f5b31c12e/tasks/assign?user=origcmr4"
ขั้นตอนที่ 4 Claim/Unclaim/Complete Task ให้เสร็จสมบูรณ์ในที่สุด Origcmr4 สามารถอ้างสิทธิ์/ยกเลิกการอ้างสิทธิ์หรือทํางานให้เสร็จโดย URL นี้ด้านล่าง
Claim: http://192.168.0.213:8080/BPMREST/service/runtime/tasks/122056910-494baede-088f-46bb-8a24-77b049ef996c/claim?user=origcmr4 Unclaim: http://192.168.0.213:8080/BPMREST/service/runtime/tasks/122056910-494baede-088f-46bb-8a24-77b049ef996c/claim?user= Complete: http://192.168.0.213:8080/BPMREST/service/runtime/tasks/122056910-494baede-088f-46bb-8a24-77b049ef996c/complete?user=origcmr4
หลังจากเสร็จสิ้นภารกิจกระบวนการจะไปที่โหนดถัดไป ดังนั้นมันจะดําเนินการต่อด้วยกระบวนการตามการกําหนดค่าของกิจกรรมกระบวนการถัดไปจนกว่างานสุดท้าย