Business Context dan Task Links
Dua jalur yang menghubungkan percakapan Custelio dengan sistem bisnis eksternal: business context menampilkan data order/invoice/pelanggan di samping percakapan, dan task links mengaitkan percakapan dengan task sistem luar (misalnya task workflow otomatisasi). Halaman ini menjelaskan alur kerja dan batas yang berlaku; kontrak payload ada di OpenAPI runtime, bukan di sini.
Tujuan
Agent melihat konteks bisnis yang relevan saat menangani percakapan, dan task eksternal dapat dikaitkan/dilepas dari percakapan dengan akurasi tenant yang terjaga — tanpa membiarkan gangguan sistem bisnis memblokir percakapan.
Untuk siapa
Business operator yang menjalankan alur berbasis task, serta developer/integrator yang menyambungkan Custelio ke sistem bisnis.
Prasyarat
- Untuk business context: service eksternal tersedia dan dikonfigurasi lewat environment (
BUSINESS_CONTEXT_BASE_URL,BUSINESS_CONTEXT_API_KEY,BUSINESS_CONTEXT_AUTH_TYPE, bawaanapi_key). Tanpa konfigurasi, endpoint mengembalikan501. - Untuk task links: API diakses dengan token tenant yang memiliki akses ke percakapan dan task terkait.
- Pahami konsep tenant dan status fitur; lihat Glosarium.
Business context
Business context mengambil record bisnis (customer, order, invoice, payment, inventory, shipment, booking, service) dari provider eksternal dan menormalkannya menjadi bentuk ringkas: referensi, status, ringkasan, jumlah, tanggal, dan item.
- Pastikan environment business context terisi; tanpa itu semua endpoint menjawab
501 integration not configured— selalu, bukan sesekali. - Ambil konteks percakapan: sediakan
conversation_iddancontact_idyang wajib; jenis record diambil dari daftar default dan dapat dipersempit. - Ambil satu record bisnis: gunakan jenis entitas yang didukung dan sertakan
conversation_iduntuk membatasi ke tenant; jenis entitas tak dikenal ditolak. - Perhatikan degradasi: gangguan provider tidak pernah memblokir percakapan — record yang gagal diambil dilewati, bukan menghentikan respons.
Keamanan: klien memvalidasi URL agar tidak mengarah ke IP privat (anti-SSRF), memakai timeout 10 detik, dan circuit breaker per provider. Provider yang menjawab non-2xx atau error jaringan menghasilkan kegagalan yang dicatat; jangan menganggap data konteks selalu hadir.
Task links
Task link memasangkan task eksternal dengan percakapan di dalam satu tenant.
- Buat link: kirim
task_iddanconversation_id; keduanya wajib. Respons201berisi link yang tercatat beserta pembuatnya. - Lihat link per percakapan: daftar task yang terkait percakapan; percakapan tanpa link mengembalikan daftar kosong, bukan error.
- Lihat percakapan per task: daftar percakapan yang terkait task eksternal.
- Lepas link: hapus pasangan task/percakapan; link yang tidak ada menghasilkan
404.
Semua operasi dibatasi ke akun pemanggil; jangan memakai task link untuk menembus akses lintas tenant.
Tanda berhasil
Konteks bisnis muncul saat provider terkonfigurasi dan sehat; link task dapat dibuat, didaftar per percakapan maupun per task, dan dilepas; semua respons konsisten dengan tenant pemanggil.
Jika terjadi masalah
501business context: konfigurasi environment belum ada; tambahkanBUSINESS_CONTEXT_BASE_URLdan kredensial, lalu mulai ulang service. Jangan membangun alur yang menganggap data konteks pasti tersedia.400: parameter wajib hilang (contact_id,conversation_id) atau jenis entitas tidak didukung.404: percakapan bukan milik tenant atau link task tidak ada.502: provider business context error; periksa service eksternal dan circuit breaker; percakapan tetap berjalan.- Task link gagal
500: periksa log dan identitas tenant; jangan mencoba lintas tenant.
Batasan
Business context configuration-required: tanpa provider, endpoint selalu 501; data direkam apa adanya dari provider eksternal dan bisa kosong saat gangguan. Task links hanya memetakan task ↔ percakapan — task itu sendiri dikelola sistem eksternal, bukan Custelio. Kontrak payload mengikuti OpenAPI runtime dan dapat berubah; halaman ini tidak menduplikasi skema endpoint.