Webhook adalah salah satu metode yang sangat efektif untuk mengirim data dari satu aplikasi ke aplikasi lain secara real-time. Salah satu ca...
Webhook adalah salah satu metode yang sangat efektif untuk mengirim data dari satu aplikasi ke aplikasi lain secara real-time. Salah satu cara yang populer untuk memanfaatkan webhook adalah menghubungkannya dengan Google Apps Script. Google Apps Script memungkinkan Anda untuk mengotomatiskan berbagai fungsi Google Workspace seperti Google Sheets, Gmail, dan Google Drive.
Dalam tutorial ini, kita akan membahas cara menghubungkan webhook dengan Google Apps Script. Kami juga akan membuat Google Apps Script yang menerima data dari webhook dan menyimpannya ke Google Sheets.
Langkah-langkah Tutorial:
- Membuat Google Spreadsheet
- Membuat Google Apps Script
- Membuat Endpoint Webhook di Google Apps Script
- Menghubungkan Webhook dengan Aplikasi Node.js
- Mengintegrasikan dengan WhatsApp Bot
1. Membuat Google Spreadsheet
Pertama, kita akan membuat Google Spreadsheet sebagai tempat penyimpanan data yang diterima dari webhook.
- Buka Google Sheets dan buat spreadsheet baru.
- Beri nama spreadsheet tersebut, misalnya "Webhook Data".
- Buat beberapa kolom di baris pertama, seperti berikut:
- Timestamp
- Sender
- Message
Ini adalah tempat di mana data dari webhook akan disimpan.
2. Membuat Google Apps Script
Sekarang, kita akan membuat Google Apps Script untuk menerima data dari webhook.
- Di dalam Google Sheets yang sudah dibuat, buka menu Extensions > Apps Script.
- Di editor Google Apps Script, hapus semua kode yang ada, lalu tambahkan kode berikut:
function doPost(e) { // Ambil data dari request POST webhook var data = JSON.parse(e.postData.contents); // Buka spreadsheet var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); // Masukkan data ke baris baru sheet.appendRow([new Date(), data.sender, data.message]); // Mengirim respons return ContentService.createTextOutput("Data berhasil disimpan");}
Penjelasan kode di atas:
doPost(e)
adalah fungsi yang akan dieksekusi setiap kali data dikirim ke webhook.- Fungsi ini akan mengekstrak data yang diterima dari request POST, kemudian memasukkan data tersebut ke dalam spreadsheet di baris baru.
ContentService.createTextOutput
digunakan untuk mengirimkan respons setelah data berhasil disimpan.Simpan kode ini dan beri nama proyek Apps Script, misalnya "Webhook Receiver".
3. Membuat Endpoint Webhook di Google Apps Script
Untuk menggunakan Google Apps Script sebagai webhook, Anda perlu mempublikasikan Apps Script sebagai web app.
- Klik Deploy > Test deployments.
- Pilih Deploy as Web App.
- Pada bagian Who has access to the app, pilih Anyone.
- Setelah deploy, Anda akan mendapatkan URL Web App. Ini adalah URL webhook Anda.
Contoh URL Web App:
https://script.google.com/macros/s/your-webhook-url/exec
Pastikan untuk menyimpan URL ini, karena Anda akan menggunakannya untuk menerima data dari aplikasi lain.
4. Menghubungkan Webhook dengan Aplikasi Node.js
Sekarang mari kita hubungkan webhook ini dengan aplikasi Node.js. Pada tutorial WhatsApp bot di blog syahdandev, Anda dapat menambahkan integrasi webhook ini sebagai berikut.
Tambahkan potongan kode berikut pada bot WhatsApp Node.js untuk mengirim pesan yang diterima ke Google Apps Script webhook:
const axios = require('axios');// Saat menerima pesansock.ev.on('messages.upsert', async (messageUpdate) => { if (messageUpdate.type === 'notify') { for (const msg of messageUpdate.messages) { if (!msg.key.fromMe) { const text = msg.message?.conversation || msg.message?.extendedTextMessage?.text || ''; // Data untuk dikirim ke Google Apps Script Webhook const data = { sender: msg.key.remoteJid, message: text }; // Mengirim data ke Google Apps Script Webhook try { await axios.post('https://script.google.com/macros/s/your-webhook-url/exec', data); console.log('Pesan diteruskan ke Google Apps Script'); } catch (error) { console.error('Gagal mengirim data ke webhook', error); } } } }});
Pada kode di atas:
- Data pesan WhatsApp diteruskan ke Google Apps Script webhook setiap kali pesan diterima.
axios.post
digunakan untuk mengirim datasender
danmessage
ke Google Apps Script URL.
5. Mengintegrasikan dengan WhatsApp Bot
Jika Anda sudah mengikuti tutorial di syahdandev, Anda sekarang bisa mengintegrasikan Google Apps Script webhook ini ke bot WhatsApp Anda.
Dengan menambahkan potongan kode di atas ke bot WhatsApp, Anda akan dapat menyimpan semua pesan WhatsApp yang diterima secara otomatis ke dalam Google Spreadsheet melalui webhook.
Penjelasan Akhir
Webhook memberikan cara yang fleksibel dan mudah untuk menghubungkan berbagai aplikasi dengan Google Apps Script. Dalam contoh ini, kami menggunakan webhook untuk menyimpan pesan WhatsApp ke Google Sheets secara otomatis. Dengan menggunakan pendekatan ini, Anda bisa mengotomatisasi berbagai tugas seperti analisis pesan, pelaporan, atau notifikasi menggunakan Google Workspace dan aplikasi eksternal.
Semoga tutorial ini membantu Anda memahami cara menghubungkan webhook dengan Google Apps Script dan memanfaatkannya dalam proyek Anda!
COMMENTS