IntermediateAutomation Engine v1

Flow nodes

Reference konseptual node yang dapat dirangkai di setiap state Declarative Flow.

input

js
nomor: {
  pesan: "Masukkan nomor HP:",
  input: {
    nama: "nomor",
    tipe: "nomor_hp",
    wajib: true,
    min: 10,
    max: 15
  },
  lanjut: "proses"
}

terima / receive

`terima` mencoba beberapa sumber pada event yang sama sebelum memutuskan perlu menunggu input berikutnya.

js
terima: {
  nama: "media",
  sumber: [
    "message.media",
    "message.quoted.media",
    "command.args"
  ],
  tipe: ["gambar", "video"],
  wajib: true,
  maxMb: 20,
  pesanJikaMenunggu: "Kirim/reply gambar atau video."
}

Default source bila tidak ditentukan: message.media, message.quoted.media, command.args, message.text, message.content, message.quoted.content. Sumber eksplisit maksimal 10.

aksi dan pipeline capability

js
aksi: {
  gunakan: "utility.text.uppercase",
  input: { text: "{command.args}" },
  simpan: "hasil"
}
js
pipeline: [
  { gunakan: "image.resize", input: { sumber: "{media}" }, simpan: "resized" },
  { gunakan: "media.sticker", input: { sumber: "{resized}" }, simpan: "sticker" }
]

Satu state maksimal 20 capability action/pipeline. Capability tertentu hanya tersedia jika plugin yang mendaftarkannya sudah loaded.

integration

js
integration: {
  nama: "SCAN_API",
  method: "GET",
  path: "/api/scan",
  query: { nomor: "{nomor}" },
  simpanHasil: "hasil",
  gagal: {
    pesan: "Layanan gagal.",
    ke: "$ulang"
  }
}

kondisi

js
kondisi: [
  {
    path: "hasil.metaData.code",
    samaDengan: 200,
    balas: "✅ Data ditemukan",
    ke: "$ulang"
  },
  {
    selainnya: true,
    balas: "❌ Data tidak ditemukan",
    ke: "$ulang"
  }
]

Operator: equals/sama, strict_equals, not_equals/tidaksama, contains/berisi, starts_with, ends_with, exists/ada, truthy/benar, falsy/salah, gt/gte/lt/lte.

kirim / send

js
kirim: {
  tipe: "sticker",
  sumber: "{hasil.sticker}"
}

Tipe output flow saat ini: text, image, video, audio, document, sticker, location. Maksimal 10 output kirim per state. `sumber` dapat berupa media ref `med_...`/object media ref atau HTTPS URL yang valid pada jalur yang mendukungnya.

pesan, balas, lanjut

`pesan/message` umumnya digunakan untuk prompt/state message. `balas/reply` mengirim response setelah operasi state. `lanjut/ke/next` melakukan transition setelah state selesai.