Hubungkan Agen AI n8n
Langkah-langkah menghubungkan Agen AI n8n ke WhatsApp menggunakan Webhook & API Chakra
Menghubungkan Bot AI n8n ke WhatsApp
Dalam artikel ini, kita akan membahas cara menghubungkan Bot AI atau agen n8n ke WhatsApp. Untuk melakukannya, kita akan menggunakan API WhatsApp dan webhook yang disediakan oleh Chakra Chat.
Setelah mengikuti panduan ini, Anda seharusnya sudah dapat menggunakan agen chat n8n sepenuhnya untuk merespons pertanyaan pengguna di Nomor WhatsApp Anda yang Terhubung ke Cloud.
Prasyarat
A) Kami menganggap Anda sudah memiliki akun n8n cloud atau telah meng-host n8n di tempat yang dapat diakses melalui internet publik.
B) Anda juga perlu memiliki akun Chakra Chat dan sudah menghubungkan WhatsApp. Jika belum, ikuti langkah-langkah berikut:
Perlu diketahui juga bahwa bot ini dapat dibuat dengan akun Chakra Chat Gratis. 🎉
C) Anda juga memerlukan akun OpenAI dan kunci OpenAI karena kita akan menggunakan OpenAI sebagai penyedia AI. Anda dapat mendaftar untuk akun developer OpenAI dari halaman ini.
1. Siapkan pemicu webhook di n8n
1.1 Masuk ke akun n8n
Buat alur kerja baru dengan mengeklik tombol "Create Workflow" di sudut kanan atas dasbor utama n8n.

1.2 Tambahkan Langkah Pertama
Klik node "Add First Step" lalu pilih pemicu "On webhook call" .

1.3 Mengonfigurasi URL webhook pengujian
1.3.1 Halaman konfigurasi pemicu webhook seharusnya sudah terbuka. Klik URL webhook pengujian untuk menyalinnya ke clipboard.

Buka akun Chakra Chat Anda, lalu buka halaman WhatsApp Setup , kemudian klik tab More .

1.3.3 Gulir ke bawah, lalu klik tombol alih di bawah "Enable pass through webhook".

1.3.4 Tempel URL webhook pengujian n8n yang disalin ke kotak input di bawah "Pass through webhook url".

1.3.5 Klik tombol Simpan di pojok kanan atas halaman penyiapan WhatsApp untuk menyimpan konfigurasi.

1.4 Menguji Integrasi
1.4.1 Kembali ke n8n dan ubah HTTP Method pemicu menjadi POST dari halaman konfigurasi webhook.

1.4.2 Klik tombol "Listen for test event".

1.4.3 Kita perlu mengirim pesan ke nomor WhatsApp tersebut dari nomor WhatsApp pengguna akhir lain agar peristiwa webhook pengujian dibuat.

1.4.4 Di halaman konfigurasi pemicu n8n, Anda sekarang seharusnya melihat peristiwa webhook yang sesuai dengan pesan yang baru saja Anda kirim, seperti pada tangkapan layar berikut. Jika tidak melihat peristiwa apa pun, tinjau kembali semua langkah sebelumnya dan pastikan penyiapan Anda sudah benar.

1.4.5 Baik, sekarang kita siap mengonfigurasi AI Agent. Klik "Back to Canvas", lalu segera simpan semua progres alur kerja Anda sejauh ini.
2. Menyiapkan AI Agent
Sekarang kita akan menyiapkan AI Agent OpenAI di n8n.
2.1 Klik tombol plus di samping pemicu webhook di editor alur kerja n8n. Panel seharusnya terbuka di sebelah kanan dengan opsi node. Klik "AI" untuk menampilkan semua opsi AI Node.

2.2 Klik AI Agent untuk memilih dan menambahkan node AI Agent.

2.3 Halaman konfigurasi node AI Agent seharusnya sekarang terbuka.

2.4 Klik menu tarik-turun untuk "Source for Prompt (User Message)". Secara default, opsi ini dikonfigurasi untuk input chat, tetapi kita perlu menghubungkannya ke input pemicu webhook. Jadi, klik opsi "Define below".

2.5 Tab Input di sisi kiri menampilkan seluruh objek JSON yang dikirim melalui webhook. Temukan pesan yang Anda kirim pada input di sisi kiri, lalu klik dan seret ke kotak teks Prompt.

2.6 Sekarang mari kita konfigurasi model chat. Klik tombol Plus di bawah opsi "Chat Model" di bagian bawah halaman.

2.7 Submenu seharusnya terbuka di sebelah kanan dengan daftar Model AI yang tersedia. Cari OpenAI, lalu klik untuk memilihnya.

2.8 Halaman konfigurasi sub-node OpenAI seharusnya sekarang terbuka. Di sini kita perlu mengonfigurasi Kredensial OpenAI. Jika sudah tersedia, pilih kredensial tersebut. Jika belum, klik buat kredensial baru dan masukkan Kunci API OpenAI.


2.9 Sekarang kita dapat kembali ke halaman kanvas dengan mengeklik "Go back to canvas", lalu mengeklik "Execute Workflow" untuk menguji penyiapan kita sejauh ini. Alur kerja akan mulai mendengarkan peristiwa di webhook pengujian.

2.10 Buka akun WhatsApp pengguna akhir Anda, lalu kirim pesan ke nomor WhatsApp Anda yang terhubung. Anda tidak akan menerima balasan, tetapi seharusnya dapat melihat log respons OpenAI di node AI Agent. Node AI Agent juga seharusnya diberi garis tepi berwarna hijau yang menandakan proses berhasil dijalankan.
Jika proses tidak berhasil dijalankan, tinjau penyiapan Anda dengan mengulangi langkah-langkah sebelumnya.

3: Mengirim respons AI kepada pengguna
Sekarang AI Agent kita dapat merespons pertanyaan chat yang masuk. Mari mulai mengirimkan respons tersebut kembali melalui WhatsApp.
3.1 Di editor alur kerja n8n, klik tombol + di sebelah kanan Node AI Agent. Menu pemilih node akan terbuka. Di bilah pencarian, ketik "HTTP request", lalu klik jenis node HTTP Request .

3.2 Konfigurasikan node HTTP Request untuk mengirim pesan melalui API pengiriman pesan WhatsApp.
Detail tentang API ini dapat ditemukan di Dokumentasi APIini. Konfigurasinya kurang lebih seperti berikut:
- Metode: POST
- URL:
https://api.chakrahq.com/v1/ext/plugin/whatsapp/{{chakraPluginId}}/api/v22.0/{{whatsappPhoneNumberId}}/messages

- Header:
Authorization: Bearer {{chakraAccessToken}}

- Isi: Harus berjenis JSON

- Isi: Seluruh objek JSON harus terlihat seperti ini

Input yang diperlukan untuk mengonfigurasi API di atas dapat ditemukan di akun Chakra Chat Anda. Berikut penjelasan singkatnya:
Menemukan chakraPluginId
Di halaman penyiapan Chakra Chat - WhatsApp, temukan ikon tiga titik di samping tombol simpan, di pojok kanan atas. Klik ikon tersebut, lalu klik tombol "Copy Plugin Id". ID plugin kini telah disalin dan dapat ditempelkan di tempat yang Anda perlukan.
Menemukan whatsappPhoneNumberId
Di halaman Chakra Chat - WhatsApp Setup, klik ikon roda gigi di samping "📞 WhatsApp Phone Numbers". Pada panel yang terbuka, Anda akan menemukan Meta ID setiap nomor telepon di kolom nomor telepon.
Mendapatkan chakraAccessToken
Agar dapat menggunakan API Chakra, Anda perlu membuat Kunci API untuk keperluan Anda terlebih dahulu dari bagian Chakra Chat - API Keys .
Buat Kunci API
Untuk membuat Kunci API, Anda perlu memberikan informasi berikut:
- Nama - Nama kunci. Gunakan nama yang jelas dan bermakna agar pengelolaan kunci lebih mudah.
- Deskripsi (opsional) - Deskripsi untuk Kunci API
- Peran Akses - Pilih
roleuntuk Kunci API baru. Kunci API akan mewarisi hak istimewa yang diberikan oleh peran yang ditetapkan dan dibatasi sesuai hak istimewa tersebut. Pastikan Kunci API yang dapat diakses publik menggunakan peran dengan hak istimewa paling terbatas yang tetap diperlukan untuk menyelesaikan tugas.
Setelah membuat Kunci API, Anda dapat menemukan chakraAccessToken di bagian "Access Tokens" pada Kunci API yang telah dibuat.
3.3 Setelah mengonfigurasi HTTP Request, kembali ke Canvas, lalu klik tombol execute step di atas node HTTP Request. Jika semuanya dikonfigurasi dengan benar, node seharusnya berhasil menjalankan langkah tersebut dan Anda akan menerima output OpenAI pengujian di akun WhatsApp pengguna akhir 🥳
4. Mempublikasikan alur kerja
4.1 Simpan alur kerja Anda dan tandai sebagai aktif.

4.2 Klik dua kali webhook, lalu klik Production URL di bawah webhook URLs. Kemudian klik URL yang sebenarnya untuk menyalinnya.

4.3 Sekarang buka akun Chakra Chat Anda, lalu buka halaman WhatsApp Setup. Kemudian klik tab more. Tempel URL webhook yang disalin ke kotak input di bawah "pass through webhook url".

4.4 Klik Simpan di pojok kanan atas halaman untuk menyimpan konfigurasi ini. Sekarang, peristiwa WhatsApp akan dikirim ke URL webhook produksi.
Kesimpulan
Selesai! Sekarang Anda dapat menguji bot, lalu memodifikasi agen untuk menangani kasus penggunaan yang lebih kompleks. AI Agent yang dijelaskan di atas masih cukup sederhana. Untuk kasus penggunaan praktis, Anda perlu menambahkan hal lain seperti memori atau pemrosesan gambar. Namun, prinsip dasarnya tetap sama.
Lampiran
A. Menambahkan kondisi if untuk menyaring peristiwa non-pesan
Webhook pass-through biasanya akan menerima banyak peristiwa dari WhatsApp; beberapa di antaranya adalah peristiwa pesan, sementara yang lain mungkin berupa peristiwa status atau penagihan. Idealnya, Anda perlu menambahkan node kondisi if setelah node Webhook untuk menyaring peristiwa non-pesan.
Setelah melakukan langkah di atas, pastikan untuk mengubah ekspresi prompt pengguna di node AI Agent agar memilih data webhook dengan benar. Tampilannya akan kurang lebih seperti berikut:
{{ $('Webhook').item.json.body.entry[0].changes[0].value.messages[0].text.body }}B. Menggunakan memori untuk melacak percakapan
Pada suatu saat, Anda mungkin ingin menggunakan memori untuk melacak percakapan dengan pengguna. Peristiwa pesan juga mencakup nomor telepon pengguna akhir Anda; nomor telepon ini dapat digunakan sebagai kunci untuk menggabungkan semua pesan ke dalam satu rangkaian percakapan.
C. Mengakses media yang dikirim oleh pengguna
Anda mungkin ingin memproses gambar atau dokumen yang dikirim oleh pengguna. Dalam kasus tersebut, peristiwa webhook WhatsApp umumnya akan menyertakan ID Media WhatsApp. Anda dapat mengambil media yang terkait dengan ID ini menggunakan API tampilkan media.