Open in
Gunakan ThunderPhone dengan n8n
Instal node ThunderPhone untuk n8n, hubungkan kunci API server, dan buat alur kerja yang berjalan setiap kali panggilan berakhir.
n8n adalah alat otomatisasi alur kerja. Paket ThunderPhone untuk n8n menambahkan dua node:
- ThunderPhone Trigger memulai alur kerja saat panggilan berakhir (Panggilan Selesai) atau proses penilaian panggilan selesai (Panggilan Dinilai).
- ThunderPhone melakukan panggilan keluar, menambahkan kontak ke kampanye dan memulainya, mengambil panggilan beserta transkrip dan rekamannya, serta mencantumkan agen dan nomor telepon Anda.
Ini adalah node komunitas terverifikasi, yang tercantum di ThunderPhone di n8n.
Instal node
Di editor n8n, klik + untuk membuka panel node lalu cari ThunderPhone. Pemilik instans mungkin perlu menyiapkan node terverifikasi sebelum pengguna lain dapat menambahkannya.
Pada n8n yang dihosting sendiri, Anda juga dapat menginstal berdasarkan nama paket: buka
Pengaturan > Node Komunitas lalu instal n8n-nodes-thunderphone. Periksa risiko node komunitas dan kebijakan instans Anda
sebelum menginstal.
Buat kunci API server
- Buka tab Kunci
Di ThunderPhone, buka Organisasi → Kunci lalu klik Buat kunci.
- Beri nama
Gunakan nama yang menunjukkan lokasi kunci, seperti "n8n".
- Salin sekarang
Rahasia
sk_live_...lengkap hanya ditampilkan sekali. Salin sebelum Anda menutup dialog.
Hanya admin atau pemilik yang dapat membuat kunci, dan ThunderPhone memperlakukan permintaan yang dibuat dengan kunci tersebut sebagai berasal dari orang itu. Trigger dan operasi kampanye mengharuskan orang tersebut tetap memiliki peran admin atau pemilik. Buat kunci API server membahas rotasi dan pencabutan.
Tambahkan kredensial di n8n
- Di n8n, buat kredensial bertipe ThunderPhone API.
- Tempelkan kunci ke Kunci API.
- Simpan lalu jalankan pengujian kredensial. Pengujian membaca satu panggilan dari
organisasi Anda dengan
GET /v1/calls?limit=1.
Buat workflow pertama
Workflow ini menambahkan satu baris ke Google Sheet setiap kali panggilan berakhir.
- Tambahkan pemicu
Tambahkan ThunderPhone Trigger, pilih kredensial API ThunderPhone Anda, dan tetapkan Event ke Panggilan Selesai.
- Dapatkan panggilan
Tambahkan node ThunderPhone. Tetapkan Sumber Daya ke Panggilan, Operasi ke Dapatkan, dan ID Panggilan ke ekspresi
{{ $json.data.call_id }}. Outputnya adalah catatan panggilan besertatranscriptsdanrecording_url, tautan berumur singkat yang bernilainullsaat panggilan tidak memiliki rekaman. - Tambahkan baris
Tambahkan node Google Sheets yang menambahkan satu baris, lalu petakan kolom yang Anda inginkan dari output Dapatkan Panggilan (lihat tabel di bawah).
- Aktifkan workflow
Simpan dan aktifkan. Pemicu mendaftarkan URL Produksinya sebagai endpoint webhook di organisasi ThunderPhone Anda. Menonaktifkan workflow akan menghapus endpoint tersebut.
- Uji
Buka agen di builder, klik Bicara, lalu akhiri panggilan. Panggilan pengujian builder dikirim sebagai
web.complete, salah satu dari dua event di balik Panggilan Selesai, sehingga workflow berjalan dan satu baris muncul.
Kolom yang berguna:
| Kolom | Ekspresi |
|---|---|
| ID Panggilan | {{ $json.call_id }} |
| Arah | {{ $json.direction }} |
| Dari | {{ $json.from_number }} |
| Ke | {{ $json.to_number }} |
| Dimulai | {{ $json.start_time }} |
| Durasi (d) | {{ $json.duration_seconds }} |
| Status | {{ $json.status }} |
| Alasan berakhir | {{ $json.end_reason }} |
| Tautan panggilan | https://app.thunderphone.com/dashboard/call-history/{{ $json.call_id }} |
Tautan panggilan membuka panggilan di dasbor ThunderPhone bagi anggota organisasi Anda, beserta transkrip dan rekamannya, sehingga sheet tidak perlu menyimpan keduanya.
Untuk tetap menambahkan transkrip, petakan
{{ $json.transcripts.filter(t => typeof t.content === 'string').map(t => t.role + ': ' + t.content).join('\n') }}.
URL rekaman akan kedaluwarsa, jadi simpan ID panggilan dan jalankan Dapatkan Panggilan lagi saat
Anda memerlukan tautan baru. Transkrip, ringkasan, dan rekaman panggilan dapat berisi
informasi pribadi atau kesehatan. Kirimkan hanya ke aplikasi yang diizinkan
organisasi Anda untuk menggunakan data tersebut, berdasarkan BAA jika informasi kesehatan
terlibat, dan simpan hanya kolom yang Anda perlukan.
Pemicu menghasilkan event lengkap: type, event_id, dan data. Lihat
telephony.complete / web.complete dan
call.graded untuk setiap kolom. Pengiriman terjadi setidaknya sekali,
dan event_id tetap sama di seluruh percobaan ulang untuk satu event, jadi periksa nilainya sebelum
langkah yang tidak boleh diulang.
Lakukan panggilan keluar dengan aman
Lakukan Panggilan Keluar (Resource Panggilan Keluar, Operation Lakukan) menerima:
| Bidang | Arti |
|---|---|
| Nama atau ID Agen | Agen yang disimpan. Menu dropdown menampilkan agen Anda. |
| Nama atau ID Nomor Telepon | Nomor asal. Menu dropdown hanya menampilkan nomor yang diaktifkan untuk panggilan keluar. |
| Nomor Tujuan | Tujuan dalam format E.164, misalnya +14155552671. |
| Variabel | Objek JSON berisi nilai untuk placeholder dalam Prompt agen. |
| Kunci Idempotensi | ID stabil dari rekaman atau peristiwa upstream. Wajib diisi. |
Petakan Kunci Idempotensi ke ID dari apa pun yang menyebabkan eksekusi, seperti
ID rekaman CRM atau event_id pemicu. Node mengirimkan
n8n:<node ID>:<your value>, sehingga:
- Percobaan ulang otomatis atau Coba ulang eksekusi mengirim kunci yang sama, dan
ThunderPhone mengembalikan panggilan asli dengan
idempotent_replay: truealih-alih melakukan panggilan lagi. - Dua node ThunderPhone yang menerima rekaman yang sama mengirim kunci yang berbeda.
- Nilai kosong gagal sebelum permintaan dikirim.
Hindari stempel waktu, nilai acak, serta ID eksekusi atau workflow n8n. Nilai baru saat percobaan ulang akan melakukan panggilan nyata kedua. Seluruh kunci dapat memiliki maksimum 128 karakter. Menggunakan kembali kunci dengan agen, nomor, atau variabel yang berbeda akan gagal karena konflik.
Kampanye. Tambahkan Kontak (Resource Kampanye) menambahkan kontak ke
kampanye draf. Tindakan ini menerima ID Kampanye dan array JSON kontak. Setiap kontak memerlukan phone_number; kunci lainnya
menjadi variabel panggilan. Node gagal saat semua kontak ditolak dan menetapkan
partial_success: true saat hanya sebagian yang ditolak. Mulai memerlukan kotak centang
yang mengonfirmasi bahwa kampanye melakukan panggilan nyata dan menggunakan kredit
ThunderPhone. Lihat Kampanye keluar.
Sebelum workflow memulai panggilan:
- Jika ThunderPhone meminta organisasi Anda mengonfirmasi bahwa panggilan keluarnya mematuhi TCPA dan undang-undang panggilan lainnya, admin harus terlebih dahulu mencatat konfirmasi tersebut di dashboard.
- Nomor asal harus diaktifkan untuk panggilan keluar. Nomor yang Anda bawa dari operator sendiri memenuhi syarat setelah diverifikasi. Nomor ThunderPhone pada awalnya hanya untuk panggilan masuk dan dapat disetujui untuk penggunaan keluar: admin memintanya dari halaman Nomor Telepon. Lihat Dapatkan nomor telepon.
- Organisasi Anda bertanggung jawab untuk memiliki persetujuan untuk menghubungi setiap nomor dan mematuhi undang-undang panggilan yang berlaku. Lihat Undang-undang panggilan keluar.
Contoh workflow
- Kontak CRM ke kampanye. Tambahkan kontak CRM ke kampanye ThunderPhone draf, lalu mulai kampanye setelah seseorang menyetujui daftar tersebut.
- Panggilan selesai ke rekaman pelanggan. Saat Panggilan Selesai, jalankan Dapatkan Panggilan dan simpan transkrip serta tautan rekaman ke rekaman pelanggan yang sesuai.
- Nilai rendah untuk ditinjau. Saat Panggilan Dinilai, filter berdasarkan
{{ $json.data.grade.score }}dan arahkan panggilan bernilai rendah ke antrean peninjauan dengan ID panggilan dan detail nilai. Panggilan dapat dinilai lebih dari sekali, dan setiap proses penilaian yang selesai memicu pemicu, jadi simpan hanyagraded_atterbaru untuk setiap ID panggilan.
Transkrip, ringkasan, dan rekaman panggilan dapat berisi informasi pribadi atau kesehatan. Kirimkan hanya ke aplikasi yang diizinkan digunakan oleh organisasi Anda untuk data tersebut, berdasarkan BAA jika melibatkan informasi kesehatan, dan simpan hanya bidang yang Anda perlukan.