> ## Documentation Index
> Fetch the complete documentation index at: https://docs.opteraone.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Otomatisasi Workflow

> Cara membuat dan mengelola aturan otomatisasi agar sistem dapat menjalankan aksi secara otomatis berdasarkan event dan kondisi tertentu di CMS OpteraOne.

# Otomatisasi Workflow

Otomatisasi Workflow adalah fitur yang memungkinkan Admin mendefinisikan aturan sehingga sistem dapat menjalankan aksi secara otomatis berdasarkan event dan kondisi tertentu — tanpa intervensi manual.

Dengan fitur ini, setiap kali sebuah event terjadi dan kondisinya terpenuhi, sistem akan langsung mengeksekusi aksi yang sudah dikonfigurasi secara konsisten, memastikan proses operasional berjalan sesuai aturan bisnis yang telah ditetapkan.

<Note>
  Fitur Otomatisasi Workflow hanya dapat diakses oleh pengguna dengan peran **Admin**. Pastikan hak akses sudah dikonfigurasi sebelum menggunakan fitur ini.
</Note>

***

## Konsep Dasar

Setiap workflow otomatisasi terdiri dari **tiga komponen inti** yang harus dikonfigurasi:

<CardGroup cols={3}>
  <Card title="Event" icon="bolt">
    Kejadian atau perubahan status yang memicu workflow berjalan. Contoh: tugas dibuat, tugas diperbarui, atau tugas dihapus.
  </Card>

  <Card title="Kondisi" icon="filter">
    Kriteria yang harus terpenuhi agar aksi dieksekusi. Kondisi dievaluasi setiap kali event terjadi.
  </Card>

  <Card title="Aksi" icon="play">
    Tindakan yang dijalankan sistem secara otomatis ketika event terjadi dan kondisi terpenuhi.
  </Card>
</CardGroup>

***

## Mengakses Halaman Otomatisasi Workflow

<Steps>
  <Step title="Buka Menu Pengaturan">
    Dari halaman mana pun di CMS, klik menu **Pengaturan** pada navigasi utama.
  </Step>

  <Step title="Pilih Otomatisasi Workflow">
    Di dalam menu Pengaturan, pilih **Otomatisasi Workflow**. Anda akan diarahkan ke halaman daftar workflow otomatisasi.
  </Step>
</Steps>

***

## Halaman Daftar Otomatisasi Workflow

Halaman ini menampilkan semua workflow otomatisasi yang sudah dibuat dalam sistem, lengkap dengan nama workflow, event yang dikonfigurasi, status aktif/nonaktif, serta aksi yang tersedia.

Halaman ini memiliki fungsi-fungsi utama berikut:

| #      | Fungsi                 | Keterangan                                        |
| ------ | ---------------------- | ------------------------------------------------- |
| **#1** | Buat Workflow          | Tombol untuk membuat workflow otomatisasi baru    |
| **#2** | Lihat Detail           | Klik nama workflow untuk membuka halaman detail   |
| **#3** | Ubah                   | Edit konfigurasi workflow yang sudah ada          |
| **#4** | Nonaktifkan / Aktifkan | Mengubah status aktif workflow tanpa menghapusnya |

***

## Membuat Workflow Otomatisasi Baru

<Steps>
  <Step title="Klik Tombol 'Buat Workflow'">
    Dari halaman Daftar Otomatisasi Workflow, klik tombol **"Buat Workflow"** di bagian kanan atas halaman.
  </Step>

  <Step title="Isi Informasi Umum">
    Pada bagian **Informasi Umum**, isi detail identitas workflow:

    | Field             | Keterangan                                                 | Wajib |
    | ----------------- | ---------------------------------------------------------- | ----- |
    | **Nama Workflow** | Nama deskriptif untuk mengidentifikasi workflow ini        | ✅ Ya  |
    | **Tipe**          | Kategori workflow sesuai modul yang dituju (contoh: Tugas) | ✅ Ya  |

    <Tip>
      Gunakan nama yang jelas dan spesifik, misalnya: **"Notifikasi Tugas Baru ke Agen"** atau **"Eskalasi Tugas Kritikal"**, agar mudah diidentifikasi saat daftar workflow semakin banyak.
    </Tip>
  </Step>

  <Step title="Pilih Event">
    Pada bagian **Event**, pilih kejadian yang akan memicu workflow ini berjalan.

    Event yang tersedia bergantung pada **Tipe** yang dipilih sebelumnya. Untuk tipe **Tugas**, event yang tersedia antara lain:

    | Event                | Keterangan                                                   |
    | -------------------- | ------------------------------------------------------------ |
    | **Tugas dibuat**     | Workflow berjalan setiap kali tugas baru dibuat di sistem    |
    | **Tugas diperbarui** | Workflow berjalan setiap kali data tugas mengalami perubahan |
    | **Tugas dihapus**    | Workflow berjalan ketika sebuah tugas dihapus dari sistem    |

    <Note>
      Setiap workflow hanya dapat dikonfigurasi untuk **satu event**. Jika Anda membutuhkan respons terhadap beberapa event berbeda, buat workflow terpisah untuk masing-masing event.
    </Note>
  </Step>

  <Step title="Tambahkan Kondisi">
    Pada bagian **Kondisi**, tentukan kriteria yang harus terpenuhi agar aksi dieksekusi.

    Setiap kondisi terdiri dari tiga elemen:

    | Elemen           | Keterangan                                                               |
    | ---------------- | ------------------------------------------------------------------------ |
    | **Nama Kondisi** | Field atau atribut yang dievaluasi (contoh: Prioritas, Status, Kategori) |
    | **Sama Dengan**  | Operator pembanding yang digunakan untuk evaluasi                        |
    | **Nilai**        | Nilai spesifik yang dijadikan acuan perbandingan                         |

    <AccordionGroup>
      <Accordion title="Menambahkan Kondisi Pertama" icon="plus">
        Klik tombol **"+ Tambah"** untuk menambahkan baris kondisi baru. Isi Nama Kondisi, pilih operator, dan tentukan nilainya.
      </Accordion>

      <Accordion title="Menambahkan Kondisi Tambahan (AND)" icon="layer-group">
        Untuk menambahkan kondisi kedua dan seterusnya, klik tombol **"+ Tambah"** kembali. Semua kondisi yang ditambahkan akan dievaluasi dengan logika **AND** — artinya **seluruh kondisi** harus terpenuhi agar aksi dieksekusi.
      </Accordion>

      <Accordion title="Menghapus Kondisi" icon="trash">
        Klik ikon **hapus (✕)** di sisi kanan baris kondisi untuk menghapus kondisi tertentu. Konfirmasi penghapusan akan muncul sebelum kondisi dihapus.

        <Warning>
          Setelah dikonfirmasi, kondisi yang dihapus tidak dapat dikembalikan. Pastikan kondisi yang akan dihapus sudah tidak diperlukan sebelum melanjutkan.
        </Warning>
      </Accordion>
    </AccordionGroup>

    <Note>
      Bagian kondisi bersifat **opsional**. Jika tidak ada kondisi yang ditambahkan, workflow akan langsung mengeksekusi aksi setiap kali event terjadi tanpa evaluasi tambahan.
    </Note>
  </Step>

  <Step title="Tambahkan Aksi">
    Pada bagian **Aksi**, tentukan tindakan apa yang akan dijalankan sistem secara otomatis ketika event terjadi dan kondisi terpenuhi.

    Setiap aksi terdiri dari:

    | Elemen         | Keterangan                                                                  |
    | -------------- | --------------------------------------------------------------------------- |
    | **Nama Aksi**  | Jenis tindakan yang akan dieksekusi (contoh: Kirim notifikasi, Ubah status) |
    | **Nilai Aksi** | Konfigurasi spesifik untuk aksi tersebut                                    |

    Untuk menambahkan lebih dari satu aksi, klik tombol **"+ Tambah"**. Semua aksi yang dikonfigurasi akan dieksekusi **secara berurutan** ketika workflow terpicu.

    <Tip>
      Anda dapat mengombinasikan beberapa aksi dalam satu workflow. Misalnya: kirim notifikasi ke agen **dan** ubah status tugas secara bersamaan dalam satu event yang sama.
    </Tip>
  </Step>

  <Step title="Simpan Workflow">
    Setelah semua konfigurasi selesai, klik tombol **"Simpan"** di bagian bawah kanan formulir.

    Sistem akan memvalidasi semua field yang wajib diisi. Jika ada field yang belum lengkap, sistem akan menampilkan pesan error pada field terkait.

    Setelah berhasil disimpan, workflow baru akan muncul di halaman Daftar Otomatisasi Workflow dengan status **Aktif**.
  </Step>
</Steps>

***

## Detail Otomatisasi Workflow

Klik **nama workflow** pada tabel Daftar Otomatisasi Workflow untuk membuka halaman Detail.

Halaman Detail menampilkan semua informasi konfigurasi workflow secara lengkap:

* **Informasi Umum** — Nama workflow, tipe, dan status
* **Event** — Event yang dikonfigurasi sebagai pemicu
* **Kondisi** — Daftar semua kondisi yang harus terpenuhi
* **Aksi** — Daftar semua aksi yang akan dieksekusi
* **Riwayat Eksekusi Workflow** — Log daftar waktu dan hasil setiap kali workflow dieksekusi oleh sistem

### Riwayat Eksekusi Workflow

Di bagian bawah halaman Detail, terdapat tabel **Riwayat Eksekusi Workflow** yang mencatat setiap kali workflow ini berjalan.

| Kolom              | Keterangan                                 |
| ------------------ | ------------------------------------------ |
| **Waktu Eksekusi** | Tanggal dan jam ketika workflow dieksekusi |
| **Status**         | Hasil eksekusi: Sukses atau Gagal          |

<Note>
  Gunakan riwayat eksekusi untuk memverifikasi bahwa workflow berjalan sesuai ekspektasi, atau untuk mendiagnosis jika ada eksekusi yang gagal.
</Note>

***

## Mengubah Workflow Otomatisasi

Perubahan konfigurasi workflow dapat dilakukan melalui **dua cara**:

<Tabs>
  <Tab title="Via Ikon Edit di Daftar">
    Dari halaman Daftar Otomatisasi Workflow, klik ikon **Edit (✏️)** pada kolom Aksi di baris workflow yang ingin diubah.
  </Tab>

  <Tab title="Via Halaman Detail">
    Dari halaman Detail Otomatisasi Workflow, klik tombol **"Ubah Workflow"** di bagian kanan atas halaman.
  </Tab>
</Tabs>

Halaman Ubah Workflow menampilkan formulir yang sama dengan formulir pembuatan. Anda dapat mengubah semua bagian konfigurasi:

| Bagian             | Data yang Dapat Diubah                           |
| ------------------ | ------------------------------------------------ |
| **Informasi Umum** | Nama workflow dan tipe                           |
| **Event**          | Event pemicu workflow                            |
| **Kondisi**        | Tambah, ubah, atau hapus kondisi yang ada        |
| **Aksi**           | Tambah, ubah, atau hapus aksi yang dikonfigurasi |

<Steps>
  <Step title="Navigasi ke Workflow yang Ingin Diubah">
    Temukan workflow di halaman Daftar Otomatisasi Workflow, lalu akses formulir ubah melalui salah satu cara di atas.
  </Step>

  <Step title="Lakukan Perubahan">
    Ubah data yang diperlukan — Informasi Umum, Event, Kondisi, atau Aksi.
  </Step>

  <Step title="Simpan Perubahan">
    Klik **"Simpan"** untuk menyimpan perubahan. Sistem akan memvalidasi ulang semua field sebelum menyimpan.
  </Step>
</Steps>

<Warning>
  Mengubah konfigurasi **Event** atau **Kondisi** pada workflow yang sedang aktif akan langsung memengaruhi cara sistem mengevaluasi event berikutnya. Pastikan konfigurasi baru sudah benar sebelum disimpan.
</Warning>

***

## Menghapus Kondisi dari Workflow

Saat mengedit workflow, Anda dapat menghapus kondisi yang sudah ada melalui langkah berikut:

<Steps>
  <Step title="Buka Formulir Ubah Workflow">
    Akses halaman ubah workflow melalui ikon edit di daftar atau tombol ubah di halaman detail.
  </Step>

  <Step title="Klik Ikon Hapus pada Kondisi">
    Di bagian Kondisi, klik ikon **hapus (✕)** pada baris kondisi yang ingin dihapus. Dialog konfirmasi akan muncul.
  </Step>

  <Step title="Konfirmasi Penghapusan">
    Klik **"Hapus"** pada dialog konfirmasi untuk melanjutkan. Kondisi akan langsung dihapus dari formulir.

    Sistem menampilkan dua kemungkinan hasil:

    | Hasil                              | Keterangan                                                                               |
    | ---------------------------------- | ---------------------------------------------------------------------------------------- |
    | **Kondisi berhasil dihapus**       | Baris kondisi hilang dari formulir dan workflow dapat disimpan tanpa kondisi tersebut    |
    | **Kondisi tidak berhasil dihapus** | Sistem menampilkan pesan error — periksa apakah kondisi masih dirujuk oleh komponen lain |
  </Step>

  <Step title="Simpan Workflow">
    Setelah kondisi dihapus, klik **"Simpan"** untuk menyimpan perubahan pada workflow.
  </Step>
</Steps>

***

## Mengubah Event pada Workflow

Jika kebutuhan bisnis berubah, Anda dapat mengganti event pemicu workflow yang sudah ada:

<Steps>
  <Step title="Buka Formulir Ubah Workflow">
    Akses halaman ubah workflow melalui ikon edit di daftar atau tombol ubah di halaman detail.
  </Step>

  <Step title="Ubah Pilihan Event">
    Pada bagian **Event**, klik dropdown dan pilih event baru yang diinginkan. Dialog konfirmasi akan muncul menanyakan apakah Anda yakin ingin mengganti event.
  </Step>

  <Step title="Konfirmasi Perubahan Event">
    Klik **"Ubah"** untuk mengonfirmasi penggantian event. Sistem akan memperbarui pilihan event pada formulir.

    <Warning>
      Mengganti event dapat memengaruhi relevansi kondisi dan aksi yang sudah dikonfigurasi sebelumnya. Tinjau kembali bagian Kondisi dan Aksi setelah mengganti event untuk memastikan konfigurasi masih sesuai.
    </Warning>
  </Step>

  <Step title="Sesuaikan Kondisi dan Aksi (Jika Diperlukan)">
    Jika ada kondisi atau aksi yang tidak lagi relevan dengan event baru, hapus atau perbarui sesuai kebutuhan.
  </Step>

  <Step title="Simpan Workflow">
    Klik **"Simpan"** untuk menyimpan seluruh perubahan.
  </Step>
</Steps>

***

## Menonaktifkan dan Mengaktifkan Workflow

Workflow dapat dinonaktifkan sementara tanpa harus dihapus. Workflow yang nonaktif tidak akan memproses event apa pun hingga diaktifkan kembali.

<Tabs>
  <Tab title="Menonaktifkan Workflow">
    <Steps>
      <Step title="Klik Ikon Nonaktifkan">
        Dari halaman Daftar Otomatisasi Workflow, klik ikon **Nonaktifkan** pada kolom Aksi di baris workflow yang ingin dinonaktifkan.
      </Step>

      <Step title="Konfirmasi Aksi">
        Dialog konfirmasi akan muncul. Klik **"Nonaktifkan"** untuk melanjutkan.
      </Step>

      <Step title="Status Berubah">
        Status workflow berubah menjadi **Nonaktif**. Sistem tidak akan lagi memproses event untuk workflow ini hingga diaktifkan kembali.
      </Step>
    </Steps>
  </Tab>

  <Tab title="Mengaktifkan Kembali Workflow">
    <Steps>
      <Step title="Klik Ikon Aktifkan">
        Dari halaman Daftar Otomatisasi Workflow, klik ikon **Aktifkan** pada kolom Aksi di baris workflow yang ingin diaktifkan.
      </Step>

      <Step title="Konfirmasi Aksi">
        Dialog konfirmasi akan muncul. Klik **"Aktifkan"** untuk melanjutkan.
      </Step>

      <Step title="Status Berubah">
        Status workflow kembali menjadi **Aktif**. Sistem akan kembali memproses event dan mengevaluasi kondisi sesuai konfigurasi workflow.
      </Step>
    </Steps>
  </Tab>
</Tabs>

***

## Contoh Kasus Penggunaan

Berikut adalah contoh konfigurasi workflow yang umum digunakan:

<AccordionGroup>
  <Accordion title="Notifikasi otomatis saat tugas baru dibuat" icon="bell">
    **Skenario:** Admin ingin memastikan agen selalu mendapatkan pemberitahuan segera saat tugas baru dengan prioritas kritikal dibuat.

    | Komponen    | Konfigurasi                              |
    | ----------- | ---------------------------------------- |
    | **Event**   | Tugas dibuat                             |
    | **Kondisi** | Prioritas sama dengan Kritikal           |
    | **Aksi**    | Kirim notifikasi ke agen yang ditugaskan |
  </Accordion>

  <Accordion title="Eskalasi tugas yang melewati deadline" icon="triangle-exclamation">
    **Skenario:** Sistem secara otomatis mengubah status atau mengirim peringatan ketika tugas melewati tanggal berakhir tanpa diselesaikan.

    | Komponen    | Konfigurasi                                                            |
    | ----------- | ---------------------------------------------------------------------- |
    | **Event**   | Tugas diperbarui                                                       |
    | **Kondisi** | Status sama dengan Aktif **DAN** Tanggal Berakhir sama dengan hari ini |
    | **Aksi**    | Kirim notifikasi eskalasi ke supervisor                                |
  </Accordion>

  <Accordion title="Konfirmasi otomatis saat tugas selesai" icon="circle-check">
    **Skenario:** Admin ingin sistem secara otomatis mencatat dan memberi tahu tim manajemen setiap kali tugas dinyatakan selesai.

    | Komponen    | Konfigurasi                             |
    | ----------- | --------------------------------------- |
    | **Event**   | Tugas diperbarui                        |
    | **Kondisi** | Status sama dengan Selesai              |
    | **Aksi**    | Kirim notifikasi ke manajer operasional |
  </Accordion>
</AccordionGroup>

***

## Pertanyaan yang Sering Diajukan

<AccordionGroup>
  <Accordion title="Apakah satu workflow bisa memiliki lebih dari satu aksi?" icon="circle-question">
    Ya. Anda dapat menambahkan beberapa aksi dalam satu workflow. Semua aksi akan dieksekusi secara berurutan setiap kali event terjadi dan kondisi terpenuhi.
  </Accordion>

  <Accordion title="Apa yang terjadi jika workflow tidak memiliki kondisi?" icon="circle-question">
    Jika tidak ada kondisi yang dikonfigurasi, workflow akan langsung mengeksekusi aksi setiap kali event yang ditentukan terjadi — tanpa evaluasi tambahan.
  </Accordion>

  <Accordion title="Apakah workflow yang dinonaktifkan dapat dihapus permanen?" icon="circle-question">
    Saat ini sistem menyediakan opsi nonaktifkan untuk menghentikan sementara workflow tanpa menghapus konfigurasinya. Untuk penghapusan permanen, hubungi tim Administrator sistem Anda.
  </Accordion>

  <Accordion title="Bagaimana cara memeriksa apakah workflow sudah berjalan dengan benar?" icon="circle-question">
    Buka halaman **Detail Otomatisasi Workflow** dan periksa bagian **Riwayat Eksekusi Workflow** di bagian bawah halaman. Tabel ini mencatat setiap kali workflow dieksekusi beserta statusnya (Sukses atau Gagal).
  </Accordion>
</AccordionGroup>

***

## Langkah Selanjutnya

<CardGroup cols={2}>
  <Card title="Manajemen Tugas" icon="clipboard-list" href="/manajemen-tugas">
    Pelajari cara membuat dan mengelola tugas lapangan yang menjadi objek utama workflow otomatisasi.
  </Card>

  <Card title="Manajemen Hak Akses" icon="shield-check" href="/manajemen-hak-akses">
    Pastikan hak akses pengguna sudah dikonfigurasi dengan benar agar workflow berjalan sesuai hierarki tim Anda.
  </Card>
</CardGroup>
