Materi 10: Memberi Notifikasi ke Tim (Discord Node)

Di langkah ini, Kita akan belajar cara mengirim pesan ke channel Discord menggunakan Discord Node. Ini akan menyelesaikan cabang "false" (pesanan 'booked') dari alur kerja Nathan.

Setelah langkah ini, alur kerja Kita akan memiliki node baru di akhir cabang "false":

Diagram alur kerja: Cabang 'false' sekarang mengarah ke Code Node, lalu ke Discord Node.

Cabang "false" (booked) sekarang terhubung ke Discord.

Node Komunikasi Lainnya
Tentu saja, Kita bisa mengganti node Discord dengan aplikasi komunikasi lain. n8n juga memiliki node yang hebat untuk Slack dan Mattermost. Konsepnya akan sangat mirip.

Langkah 1: Prasyarat - Bergabung dengan Discord n8n

Untuk alur kerja ini, kita akan mengirim pesan ke server Discord n8n resmi, di channel khusus kursus.

Sebelum melanjutkan, pastikan Kita telah bergabung dengan server Discord n8n dan bisa mengakses channel #course-level-1.

Channel #course-level-1 di dalam server Discord n8n.

Pastikan Kita bisa melihat dan mengirim pesan di channel ini.

Langkah 2: Menambahkan Node Discord

Kembali ke alur kerja n8n Kita. Kita akan menyambungkan node baru ke output dari Code Node.

  1. Klik ikon + pada output dari Code Node.
  2. Cari node Discord.
Mencari 'Discord' di panel pencarian node n8n.

Mencari node Discord.

Di bawah "Message Actions", pilih Send a message. Node Discord akan ditambahkan dan jendela konfigurasinya akan terbuka.

Memilih aksi 'Send a message' dari node Discord.

Kita memilih aksi 'Send a message'.

Langkah 3: Mengonfigurasi Node Discord

Di jendela node Discord, kita perlu mengonfigurasi beberapa parameter:

3.1: Connection Type & Kredensial

  • Connection Type: Pilih Webhook.
Memilih 'Webhook' sebagai Connection Type.

Kita akan terhubung menggunakan Webhook URL, bukan akun Bot.

  • Credential for Discord Webhook: Pilih - Create New Credential -.
  • Sebuah popup akan muncul. Di sini kita membutuhkan Webhook URL dari email yang Kita dapatkan di Materi 5.
Email dari n8n yang menunjukkan Webhook URL.

Salin 'Webhook URL' dari email kredensial Kita.

  • Webhook URL: Tempelkan (paste) URL tersebut ke bidang ini.
  • Name: Beri nama kredensial ini, misal: Discord Webhook Kursus.
Jendela popup kredensial Discord Webhook di n8n.

Membuat kredensial baru dengan menempelkan Webhook URL.

Klik Save untuk menyimpan kredensial.

3.2: Operation & Message (Expression)

  • Operation: Pastikan Send a Message terpilih.
  • Message: Ini adalah bagian terpenting. Kita perlu menggunakan Expression untuk menggabungkan teks statis dengan data dinamis.

Klik tab Expression di sebelah kanan bidang "Message", lalu buka Expression Editor.

Membuka Expression Editor untuk bidang Message.

Kita akan menggunakan Expression Editor untuk membuat pesan kustom.

Salin dan tempel teks di bawah ini ke dalam Expression Editor:

This week we've {{$json["totalBooked"]}} booked orders with a total value of {{$json["bookedSum"]}}. My Unique ID: {{ $('HTTP Request').params["headerParameters"]["parameters"][0]["value"] }}
Menganalisis Expression Ini:
Perhatikan betapa kuatnya ini!
  • {{$json["totalBooked"]}}
    Mengambil data totalBooked dari node sebelumnya (Code Node).
  • {{$json["bookedSum"]}}
    Mengambil data bookedSum dari node sebelumnya (Code Node).
  • {{ $('HTTP Request')...["value"] }}
    Ini adalah sulapnya! Kita menggunakan sintaks $('NAMA_NODE') untuk "melompat mundur" melewati Code Node dan IF Node, dan mengambil data unique_id Kita langsung dari HTTP Request Node di awal alur kerja.

Langkah 4: Mengeksekusi & Memverifikasi

Tutup Expression Editor. Sekarang, klik Execute step di node Discord.

Jika semua berfungsi dengan baik, n8n akan menunjukkan output yang berhasil:

Output node Discord di n8n, menunjukkan eksekusi berhasil.

Output di n8n menunjukkan "Execute success".

Sekarang, periksa channel #course-level-1 di Discord. Pesan Kita akan muncul di sana, lengkap dengan data yang sudah dihitung!

Pesan yang sudah jadi muncul di channel Discord.

Sukses! Pesan kita, lengkap dengan data dinamis, terkirim ke Discord.

Langkah Selanjutnya

Kedua cabang alur kerja Kita (Processing dan Booked) sekarang sudah selesai!

Nathan 🙋:

Luar biasa, Kita telah menghemat waktu saya berjam-jam! Sekarang saya bisa menjalankan alur kerja ini kapan pun saya membutuhkannya. Saya hanya perlu ingat untuk menjalankannya setiap Senin pagi jam 9.

Kita 🤵🏻:

Jangan khawatir tentang itu, Kita sebenarnya bisa menjadwalkan alur kerja ini untuk berjalan pada hari, waktu, atau interval tertentu secara otomatis. Saya akan mengaturnya di langkah selanjutnya.