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

# Panggilan suara

# `openclaw voicecall`

`voicecall` adalah perintah yang disediakan Plugin. Perintah ini hanya muncul ketika Plugin panggilan suara terinstal dan diaktifkan.

Ketika Gateway berjalan, perintah operasional (`call`, `start`, `continue`, `speak`, `dtmf`, `end`, `status`) dirutekan ke runtime panggilan suara Gateway tersebut. Jika tidak ada Gateway yang dapat dijangkau, perintah tersebut beralih ke runtime CLI mandiri.

## Subperintah

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw voicecall setup    [--json]
openclaw voicecall smoke    [-t <phone>] [--message <text>] [--mode <m>] [--yes] [--json]
openclaw voicecall call     -m <text> [-t <phone>] [--mode <m>]
openclaw voicecall start    --to <phone> [--message <text>] [--mode <m>]
openclaw voicecall continue --call-id <id> --message <text>
openclaw voicecall speak    --call-id <id> --message <text>
openclaw voicecall dtmf     --call-id <id> --digits <digits>
openclaw voicecall end      --call-id <id>
openclaw voicecall status   [--call-id <id>] [--json]
openclaw voicecall tail     [--file <path>] [--since <n>] [--poll <ms>]
openclaw voicecall latency  [--file <path>] [--last <n>]
openclaw voicecall expose   [--mode <m>] [--path <p>] [--port <port>] [--serve-path <p>]
```

| Subperintah | Deskripsi                                                                                |
| ----------- | ---------------------------------------------------------------------------------------- |
| `setup`     | Menampilkan pemeriksaan kesiapan penyedia dan Webhook.                                   |
| `smoke`     | Menjalankan pemeriksaan kesiapan; melakukan panggilan uji langsung hanya dengan `--yes`. |
| `call`      | Memulai panggilan suara keluar.                                                          |
| `start`     | Alias untuk `call` dengan `--to` wajib dan `--message` opsional.                         |
| `continue`  | Mengucapkan pesan dan menunggu respons berikutnya.                                       |
| `speak`     | Mengucapkan pesan tanpa menunggu respons.                                                |
| `dtmf`      | Mengirim digit DTMF ke panggilan aktif.                                                  |
| `end`       | Menutup panggilan aktif.                                                                 |
| `status`    | Memeriksa panggilan aktif (atau satu panggilan berdasarkan `--call-id`).                 |
| `tail`      | Memantau `calls.jsonl` (berguna selama pengujian penyedia).                              |
| `latency`   | Merangkum metrik latensi giliran dari `calls.jsonl`.                                     |
| `expose`    | Mengaktifkan atau menonaktifkan Tailscale serve/funnel untuk endpoint Webhook.           |

## Penyiapan dan smoke

### `setup`

Secara default mencetak pemeriksaan kesiapan yang mudah dibaca manusia. Gunakan `--json` untuk skrip.

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw voicecall setup
openclaw voicecall setup --json
```

### `smoke`

Menjalankan pemeriksaan kesiapan yang sama. Ini tidak akan melakukan panggilan telepon nyata kecuali `--to` dan `--yes` sama-sama ada.

| Flag               | Default                           | Deskripsi                                               |
| ------------------ | --------------------------------- | ------------------------------------------------------- |
| `-t, --to <phone>` | (tidak ada)                       | Nomor telepon yang akan dipanggil untuk smoke langsung. |
| `--message <text>` | `OpenClaw voice call smoke test.` | Pesan yang diucapkan selama panggilan smoke.            |
| `--mode <mode>`    | `notify`                          | Mode panggilan: `notify` atau `conversation`.           |
| `--yes`            | `false`                           | Benar-benar melakukan panggilan keluar langsung.        |
| `--json`           | `false`                           | Mencetak JSON yang dapat dibaca mesin.                  |

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw voicecall smoke
openclaw voicecall smoke --to "+15555550123"        # dry run
openclaw voicecall smoke --to "+15555550123" --yes  # live notify call
```

<Note>
  Untuk penyedia eksternal (`twilio`, `telnyx`, `plivo`), `setup` dan `smoke` memerlukan URL Webhook publik dari `publicUrl`, tunnel, atau eksposur Tailscale. Fallback loopback atau serve privat ditolak karena operator tidak dapat menjangkaunya.
</Note>

## Siklus hidup panggilan

### `call`

Memulai panggilan suara keluar.

| Flag                   | Wajib | Default           | Deskripsi                                                                           |
| ---------------------- | ----- | ----------------- | ----------------------------------------------------------------------------------- |
| `-m, --message <text>` | ya    | (tidak ada)       | Pesan yang diucapkan saat panggilan terhubung.                                      |
| `-t, --to <phone>`     | tidak | config `toNumber` | Nomor telepon E.164 yang akan dipanggil.                                            |
| `--mode <mode>`        | tidak | `conversation`    | Mode panggilan: `notify` (tutup setelah pesan) atau `conversation` (tetap terbuka). |

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw voicecall call --to "+15555550123" --message "Hello"
openclaw voicecall call -m "Heads up" --mode notify
```

### `start`

Alias untuk `call` dengan bentuk flag default yang berbeda.

| Flag               | Wajib | Default        | Deskripsi                                      |
| ------------------ | ----- | -------------- | ---------------------------------------------- |
| `--to <phone>`     | ya    | (tidak ada)    | Nomor telepon yang akan dipanggil.             |
| `--message <text>` | tidak | (tidak ada)    | Pesan yang diucapkan saat panggilan terhubung. |
| `--mode <mode>`    | tidak | `conversation` | Mode panggilan: `notify` atau `conversation`.  |

### `continue`

Mengucapkan pesan dan menunggu respons.

| Flag               | Wajib | Deskripsi             |
| ------------------ | ----- | --------------------- |
| `--call-id <id>`   | ya    | ID panggilan.         |
| `--message <text>` | ya    | Pesan yang diucapkan. |

### `speak`

Mengucapkan pesan tanpa menunggu respons.

| Flag               | Wajib | Deskripsi             |
| ------------------ | ----- | --------------------- |
| `--call-id <id>`   | ya    | ID panggilan.         |
| `--message <text>` | ya    | Pesan yang diucapkan. |

### `dtmf`

Mengirim digit DTMF ke panggilan aktif.

| Flag                | Wajib | Deskripsi                                 |
| ------------------- | ----- | ----------------------------------------- |
| `--call-id <id>`    | ya    | ID panggilan.                             |
| `--digits <digits>` | ya    | Digit DTMF (mis. `ww123456#` untuk jeda). |

### `end`

Menutup panggilan aktif.

| Flag             | Wajib | Deskripsi     |
| ---------------- | ----- | ------------- |
| `--call-id <id>` | ya    | ID panggilan. |

### `status`

Memeriksa panggilan aktif.

| Flag             | Default     | Deskripsi                              |
| ---------------- | ----------- | -------------------------------------- |
| `--call-id <id>` | (tidak ada) | Membatasi output ke satu panggilan.    |
| `--json`         | `false`     | Mencetak JSON yang dapat dibaca mesin. |

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw voicecall status
openclaw voicecall status --json
openclaw voicecall status --call-id <id>
```

## Log dan metrik

### `tail`

Memantau log JSONL panggilan suara. Mencetak `--since` baris terakhir saat mulai, lalu mengalirkan baris baru saat ditulis.

| Flag            | Default                        | Deskripsi                            |
| --------------- | ------------------------------ | ------------------------------------ |
| `--file <path>` | diselesaikan dari store Plugin | Path ke `calls.jsonl`.               |
| `--since <n>`   | `25`                           | Baris yang dicetak sebelum memantau. |
| `--poll <ms>`   | `250` (minimum 50)             | Interval polling dalam milidetik.    |

### `latency`

Merangkum metrik latensi giliran dan tunggu-dengar dari `calls.jsonl`. Output berupa JSON dengan ringkasan `recordsScanned`, `turnLatency`, dan `listenWait`.

| Flag            | Default                        | Deskripsi                                |
| --------------- | ------------------------------ | ---------------------------------------- |
| `--file <path>` | diselesaikan dari store Plugin | Path ke `calls.jsonl`.                   |
| `--last <n>`    | `200` (minimum 1)              | Jumlah catatan terbaru untuk dianalisis. |

## Mengekspos Webhook

### `expose`

Mengaktifkan, menonaktifkan, atau mengubah konfigurasi Tailscale serve/funnel untuk Webhook suara.

| Flag                  | Default                                     | Deskripsi                                         |
| --------------------- | ------------------------------------------- | ------------------------------------------------- |
| `--mode <mode>`       | `funnel`                                    | `off`, `serve` (tailnet), atau `funnel` (publik). |
| `--path <path>`       | config `tailscale.path` atau `--serve-path` | Path Tailscale yang akan diekspos.                |
| `--port <port>`       | config `serve.port` atau `3334`             | Port Webhook lokal.                               |
| `--serve-path <path>` | config `serve.path` atau `/voice/webhook`   | Path Webhook lokal.                               |

```bash theme={"theme":{"light":"min-light","dark":"min-dark"}}
openclaw voicecall expose --mode serve
openclaw voicecall expose --mode funnel
openclaw voicecall expose --mode off
```

<Warning>
  Ekspos endpoint Webhook hanya ke jaringan yang Anda percayai. Utamakan Tailscale Serve daripada Funnel jika memungkinkan.
</Warning>

## Terkait

* [Referensi CLI](/id/cli)
* [Plugin panggilan suara](/id/plugins/voice-call)
