Hallo mas, terimakasih banyak atas tutorialnya. Keren banget, saya dari kemarin coba coba tutorial lain pada pusing, cuman ini yg mudah di pahami. Kalau boleh request : 1. untuk si bot nya bisa nyimpen data ke sheet Nya cuman Di dalam group 2. dan group yg bisa cuman yg terdaftar group id nya di coding apps script. Biar lebih personal 3. Untuk format, bisa dengan format: No Tanggal Pemasukan Pengeluaran Keterangan Bukti link ------- Kalau mas nya ada saweria atau trakteer nanti sesudahnya saya giv 😁 Terimakasih banyak mas 🔥🔥🔥
dulu sy pernah ikutin caranya dari awal ampe selesai, tapi pas akhirnya gagal gak ada replynya,,trus sy lanjutin beljar yg versi telegram Alhamdulillah berhasil,,dua hari ini sy coba lagi yg versi WhatsApp Alhamdulillah berhasil bisa input dari reply ke spreadsheets dari wa Alhamdulillah,, terimakasih ya bg,,berkat tutorialnya yg mantap punya,,dan tentunya sy udah subscribe
Sama-sama. Terima kasih sudah menonton. Kalau ada kritik/masukan agar ke depan bisa lebih baik lagi, boleh banget dikirimkan ke email saya. :) Wa fiikum barakallah.
Untuk menghilangkan 1 karakter di bagian belakang, kalau pakai .slice(0,-1) bisa? Misal seperti ini "RUclips".slice(0,-1) maka hasilnya adalah: "Youtub"
pak, kalau saya ingin membuat Tanda Pagar nya menjadi dua itu bagai mana ya, contoh nya #Nama# #Alamat# #Nomer telfon# Tolong di bantu Pak, Sebelum nya terimakasih sudah membagikan Informasi Semoga sukses Selalu
Luar biasa mas untuk orang awam di dunia per-kodingan seperti saya. kebetulan saya lagi ada ide untuk buat sedikit inovasi di kantor, pas cari2 cara untuk mewujudkan inovasi saya, ketemu video mas ini. Ijin saya pakai untuk keperluan inovasi saya boleh mas ?
mantep bro.. lanjutkan ini kan penginputannya 1x langsung semua ya, dengan delimeter #. kalau misalnya dibuat pertanyaan per kolom bisa ga? Misalnya: Q: Input Nama Lengkap Anda A: Gede Bayu Q: input instansi A: SDN 011 Q: Jabatan A: Kepala Sekolah Kalau bgini bisa ga ya? soalnya daerah pinggirian kadang banyak yang tidak paham dan banyak kesalahan, apalagi kalau kolom yang harus diisi banyak
Alhamdulillah...setelah beberapa kali percobaan akhirnya berhasil.... oh iya, sy coba ngulik sendiri menambah jumlah kolom untuk insert datanya tapi ga bisa...terkunci untuk 3 kolom aja....gimana cara nambahnya ya gan
nice mas. thankyou somuch. langsugn subscribe. banyakin konten tentang integrasi bot wa/tele dengan form mas. atau cara buat approval dll untuk memudahkan pekerjaan. thankyou
Untuk pengambilan data yang telah diinput ke google sheet melalui whatsapp sudah bisa dilihat di video yang baru saja diupload. Ini linknya ruclips.net/video/WPNbvc6lj3U/видео.html
Mohon maaf, baru respon. Beberapa pekan yang lalu saya mengerjakan project bot telegram, termasuk di antara fiturnya yakni input data ke google sheet. Insya Allah nanti kalau ada kesempatan saya buat tutorialnya.
Insya Allah bisa. Pada saat pembuatan rule di aplikasi auto reply ada pengaturan "Reply to" di situ ada opsi: Individual, Group, dan Both. Silakan disesuaikan dengan kebutuhan.
Kak... apakah kita bisa tahu, kalau pesan tersebut telah dibaca atau tidak, dan mendapatkan feedback dari wa tersebut, feedback tersebut bisa masuk ke salah satu kolom di dalam googlesheet, sehingga kalau pesan tersebut belum sampai, maka googlesheet akan mengirimkan pertanyaan yang sama, namun jika pesan sudah sampai atau sudah dibaca, maka googlesheet akan mengirimkan pesan baru, misalnya untuk meminta jawaban dari penerima wa. terima kasih
penjelasan yang detail... tanya dong bang, bagaimana kalo modelnya pake enter,,,misalnya spt ini Daftar Nama: Whatsapp: Alamat: terimakasih untuk jawabannya
Pesannya bisa di-split berdasarkan karakter " " kemudian di split lagi berdasarkan nama field. Sepertinya sudah beberapa kali ditanyakan di kolom komentar dan saya jawab kode lengkapnya. Coba scroll-scroll lagi ya. hehe
Sama-sama. Jika ingin menginput data saja, tanpa ada balasan, maka cukup hapus baris kode berikut: // Respon let response = { data: [ { message: `Terima kasih, ananda ${nama} berhasil terdaftar dengan ID ${idPendaftar}.` } ] }; return ContentService.createTextOutput(JSON.stringify(response));
terimakasih sangat membantu sekali apakah ada tutorial juga untuk auto reply nya supaya bisa disimpan di file hosting ya? jadi ponsel tidak selalu nyala terus
Bang, untuk mendata nomor WA yang melakukan input data, Bagaimana? Apakah ada tambahan Script yang bisa ditambahkan pada Script Abang tersebut? Mohon pencerahannya. Terimakasih.
Bisa menggunakan "senderName". Akan tetapi kalau nomor orang yang wa belum disimpan di dalam kontak kita, nomor tersebut akan muncul. Tapi kalau sudah disimpan, maka value yang muncul adalah namanya.
mf bang mau nanya, kalau misalnya yang mau diinput itu paragraph bisa ga bang?..sya udah coba..tapi muncul "n" sebagai pengganti enter..mhon bantuannya bang
terimakasih banyak atas ilmu yang sangat bermanfaat mas 😊, saya ada pertanyaan mas, kalau untuk data input dari whatsapp formatnya seperti ini gimana mas? Nama : Tanggal : dst. dst. kalau dari penjelasan diatas misal datanya hanya dipisah pakai "#" aja, terimakasih
Terima kasih sudah menonton videonya. Kurang lebih bisa dengan cara begini: 1. Membelah pesan yang muncul ke dalam beberapa bagian, berdasarkan karakter enter/new line yang disimbolkan dengan " " Misal: const contents = JSON.parse(e["postData"]["contents"]); const senderMessage = contents["senderMessage"]; const splittedMessage = senderMessage.split(" "); 2. Untuk mengambil data nama, bisa dengan cara memfilter elemen yang ada pada array splittedMessage, kemudian membaca tulisan yang ada di sebelah kanan tanda titik dua. const nama = splittedMessage.filter(el => el.includes("Nama :")).toString().split(":")[1].trim();
Makasih bang atas ilmunya, saya coba maniru cuma tidak Berhadil. Indikasinya kemungkinan di baris 22 : prefixIdPendaftar (punya saya warna merah) mungkin ada solusi dari abangnya
kalau mau tambah (Nama Tanggal Lahir Alamat Telp JK) tambahnya gmn ya , sudah di tambah di bagian // Mengurai isi pesan tapi hanya sampai alamat saja mohon bantuannya
Sama-sama. Terima kasih kembali sudah menonton. Untuk pengiriman data ke form input yang ada di google form berarti harus menggunakan link yang ada "prefill" nya, begitu?
Sama-sama. Terima kasih sudah mampir nonton. Untuk menampilkan layar hp nggak pakai emulator, tapi pakai aplikasi untuk mirroring dari layae hp ke laptop. Nama aplikasinya "scrcpy"
mnatabs mas,, membantu UMKM banget tutronya,, ini saya terapkan untuk order produk mas, misal kita tambah kolom status pengiriman, terus costumer pingin ngecek melalui WA dengan kirim *status**#iDpelanggan* biar bisa dapat balasan otomatis terkait status pengiriman yang sudah ada di kolom spreadsheet gimana ya mas,, mohon tutornya,,🙏
Haii.. video tutorial untuk mengecek data google sheet lewat WA sudah tayang di channel mending ngoding. :) Silakan dicek ruclips.net/video/WPNbvc6lj3U/видео.html
terima kasih tutorialnya, kalo di appscript bisa ga ya nerima pesan file seperti pdf dan image? lalu disimpan di google drive dan linknya di google sheet misalnya
Ada beberapa kemungkinan penyebab nomor WA dibanned, beberapa di antaranya: 1. Dilaporkan/report sebagai spam oleh penerima pesan 2. Jarak pengiriman pesan antara satu pesan dengan pesan lainnya terlalu rapat dalam jumlah yang banyak Kalau tidak salah akan ada tombol untuk mengajukan peninjauan ulang kepada pihak WhatsApp/Meta. Coba diklik kemudian ditunggu beberapa jam.
Bisa seperti ini: let nomorPengirim = reqJson["postData"]["contents"]["senderName"].replace(/[ +-]/g, ''); sheet.getRange(`E${row}`).setValue(nomorPengirim); Catatan: Prinsip kerja ARCB ini adalah membaca notifikasi, ketika nomor si pengirim pesan belum tersimpan ke dalam kontak ponsel kita, yang terbaca adalah nomornya. Akan tetapi kalau nomor si pengirim pesan sudah tersimpan di dalam kontak kita, maka yang terbaca/muncul adalah namanya.
Biasanya kalau di hape saya MIUI itu karena fitur MIUI battery optimizationnya aktif. Coba fitur tersebut dinonaktifkan khusus untuk aplikasi auto reply-nya
tutorialnya mantab bang, lalu cara agar bisa menerima pesan berupa image bgmn bang? mis : gambar KTA/ KTP. Kemudian bgmn cara mencegah data ganda atau data yg sama terinput ulang? tengkyu bang..
Sayangnya untuk pesan dalam bentuk gambar belum didukung oleh autoreply chat bot. Berikutnya untuk data ganda dapat diakali dengan cara melakukan pengecekan sebelum data tersebut diinput ke google sheet. Caranya mirip dengan yang ada di video terbaru @mending.ngoding.
Halo! Kalau format pesannya seperti itu, maka untuk pengambilan datanya bisa dengan cara: 1. Split pesan yang diterima berdasarkan karakter enter, yang disimbolkan dengan " ", sehingga menjadi sebuah array 2. Buat variabel sesuai dengan data yang diperlukan 3. Kemudian lakukan looping pada setiap elemen yang ada di array tersebut. Tiap kali looping, yang dilakukan adalah: a. Cari kata yang mengandung nama kolom, misal: "Nama :" b. Jika ditemukan, maka split baris tersebut dengan tanda titik dua ":" lalu ambil elemen dengan index 1. c. Isi variabel yang telah dibuat pada langkah ke-2 dengan value pada poin 3b 4. Jika mau mengambil nilai dari variabel tadi, cukup dipanggil nama variabelnya saja seperti biasa. Berikut saya lampirkan contoh kodenya: function test() { // pesan diterima const message = `Pesanan Nama : Afin Produk : MacBook Pro M2 Pro 14 inch Jumlah : 1`; // variabel data let nama, produk, jumlah; // split pesan const splitted = message.split(' '); // cek isi pesan splitted.forEach(el => { nama = el.includes('Nama :') ? el.split(':')[1].trim() : nama; produk = el.includes('Produk :') ? el.split(':')[1].trim() : produk; jumlah = el.includes('Jumlah :') ? parseInt(el.split(':')[1].trim()) : jumlah; }); // cek isi konstanta dan variabel console.log(splitted); console.log(nama); console.log(produk); console.log(jumlah); }
Kak Miftah , ini saya contek ikutin dari awal ampe akhir video nya koq ga bisa ya. waktu kirim wa koq ga masuk di google sheet nya ya dan ga ada jawaban auto reply nya. mohon pencerahan nya miss nya di mana ? ini Code nya saya contek persis dari gitfhub function doPost(e) { // Buka sheet let sheetUrl = "docs.google.com/spreadsheets/d/1BanY0Yd_vfoRKVnqc112kvEK_4-M8-2VwQKFoI0MSJ0/edit#gid=0"; let file = SpreadsheetApp.openByUrl(sheetUrl); let sheet = file.getSheetByName("Sheet1"); // Rapikan data let req = JSON.stringify(e).replace(/\\/g, "").replace("}\"", "}").replace("\"{", "{"); let reqJson = JSON.parse(req); let senderMessage = JSON.stringify(reqJson["postData"]["contents"]["senderMessage"]); // Mengurai isi pesan let parsedMessage = senderMessage.split("#"); // ['"daftar', 'afin', '17/08/1945', 'Indonesia'] let nama = parsedMessage[1].trim(); let tanggalLahir = parsedMessage[2].trim(); let alamat = parsedMessage[3].trim().slice(0, -1); // Membuat ID let row = sheet.getLastRow() + 1; let prefixIdPendaftar = 220000; let idPendaftar = `A-${prefixIdPendaftar + row - 1}`; // Insert data sheet.getRange(`A${row}`).setValue(idPendaftar); sheet.getRange(`B${row}`).setValue(nama); sheet.getRange(`C${row}`).setValue(tanggalLahir); sheet.getRange(`D${row}`).setValue(alamat); // Respon let response = { data: [ { message: `Terima kasih, ananda ${nama} berhasil terdaftar dengan ID ${idPendaftar}.` } ] }; return ContentService.createTextOutput(JSON.stringify(response)); }
Sudah bisa Kak Miftah , ternyata di setelan hp nya untuk notifikasi harus di on kan. Kak Miftah , Klau google sheet nya saya close , aplikasi nya ga jalan kak , jd google sheet nya harus terbuka terus ya Kak ? Terima Kasih
Pesannya bisa di-split berdasarkan karakter " " kemudian di split lagi berdasarkan nama field. Sepertinya sudah beberapa kali ditanyakan di kolom komentar dan saya jawab kode lengkapnya. Coba scroll-scroll lagi ya. hehe
Kurang lebih bisa dengan cara seperti berikut: 1. Membelah pesan yang muncul ke dalam beberapa bagian, berdasarkan karakter enter/new line yang disimbolkan dengan " " Misal: const contents = JSON.parse(e["postData"]["contents"]); const senderMessage = contents["senderMessage"]; const splittedMessage = senderMessage.split(" "); 2. Untuk mengambil data nama, bisa dengan cara memfilter elemen yang ada pada array splittedMessage, kemudian membaca tulisan yang ada di sebelah kanan tanda titik dua. const nama = splittedMessage.filter(el => el.includes("Nama :")).toString().split(":")[1].trim(); Tinggal dilanjutkan untuk mengambil data lainnya
@@mending.ngoding function doPost(e) { // Buka sheet let sheetUrl = "docs.google.com/spreadsheets/d/1l_hmTxY2qsfTPCB0b4PlMDunxiShtsUU6TZH3w-dSGg/edit#gid=0"; let file = SpreadsheetApp.openByUrl(sheetUrl); let sheet = file.getSheetByName("Telekonsul"); // Rapikan data let contents = JSON.parse(e["postData"]["contents"]); let senderMessage = contents["senderMessage"]; let splittedMessage = senderMessage.split(" "); let d = new Date(); let currentTime = d.toLocaleString("pt-BR", { timeZone: "Asia/Jakarta"}); // Mengurai isi pesan let nik = splittedMessage.filter(el => el.includes("NIK :")).toString().split(":")[1].trim(); let bpjs = splittedMessage.filter(el => el.includes("Nomor BPJS (Jika Ada) :")).toString().split(":")[2].trim(); let nama = splittedMessage.filter(el => el.includes("Nama Lengkap :")).toString().split(":")[3].trim(); let kk = splittedMessage.filter(el => el.includes("Kepala Keluarga :")).toString().split(":")[4].trim(); let ttl = splittedMessage.filter(el => el.includes("Tanggal Lahir :")).toString().split(":")[5].trim(); let alamat = splittedMessage.filter(el => el.includes("Alamat Lengkap :")).toString().split(":")[6].trim(); let nomor = splittedMessage.filter(el => el.includes("Nomor Telepon :")).toString().split(":")[7].trim(); let kelamin = splittedMessage.filter(el => el.includes("Jenis Kelamin :")).toString().split(":")[8].trim(); let pekerjaan = splittedMessage.filter(el => el.includes("Pekerjaan :")).toString().split(":")[9].trim(); // Membuat ID let row = sheet.getLastRow() + 1; let prefixIdPendaftar = 0; let idPendaftar = `Z-${prefixIdPendaftar + row - 1}`; // Insert data
sheet.getRange(`A${row}`).setValue(currentTime); sheet.getRange(`B${row}`).setValue(idPendaftar); sheet.getRange(`C${row}`).setValue(nik); sheet.getRange(`D${row}`).setValue(bpjs); sheet.getRange(`E${row}`).setValue(nama); sheet.getRange(`F${row}`).setValue(kk); sheet.getRange(`G${row}`).setValue(ttl); sheet.getRange(`H${row}`).setValue(alamat); sheet.getRange(`I${row}`).setValue(nomor); sheet.getRange(`J${row}`).setValue(kelamin); sheet.getRange(`K${row}`).setValue(pekerjaan); // Respon let response = { data: [ { message: `Terima kasih, pasien atas nama ${nama} berhasil terdaftar dengan nomor antrian ${idPendaftar}. Mohon menunggu hingga dokter menghubungi kembali.🙏🙏` } ] }; return ContentService.createTextOutput(JSON.stringify(response)); }
Coba untuk baris kode: let req = JSON.stringify(e).replace(/\\/g, "").replace("}\"", "}").replace("\"{", "{"); let reqJson = JSON.parse(req); let senderMessage = JSON.stringify(reqJson["postData"]["contents"]["senderMessage"]); Diganti dengan: let contents = JSON.parse(e['postData']['contents']); let senderMessage = contents['senderMessage'];
Hallo mas, terimakasih banyak atas tutorialnya. Keren banget, saya dari kemarin coba coba tutorial lain pada pusing, cuman ini yg mudah di pahami.
Kalau boleh request :
1. untuk si bot nya bisa nyimpen data ke sheet Nya cuman Di dalam group
2. dan group yg bisa cuman yg terdaftar group id nya di coding apps script. Biar lebih personal
3. Untuk format, bisa dengan format:
No
Tanggal
Pemasukan
Pengeluaran
Keterangan
Bukti link
-------
Kalau mas nya ada saweria atau trakteer nanti sesudahnya saya giv 😁
Terimakasih banyak mas 🔥🔥🔥
Dulu banget pernah liat ini fan sekarang baru mau nyoba srmoga berhasil. Btw terima kasih ilmunya, jazaakumullohu Khoiron.
dulu sy pernah ikutin caranya dari awal ampe selesai, tapi pas akhirnya gagal gak ada replynya,,trus sy lanjutin beljar yg versi telegram Alhamdulillah berhasil,,dua hari ini sy coba lagi yg versi WhatsApp Alhamdulillah berhasil bisa input dari reply ke spreadsheets dari wa Alhamdulillah,, terimakasih ya bg,,berkat tutorialnya yg mantap punya,,dan tentunya sy udah subscribe
Alhamdulillah.. nanti insya Allah yang di github akan saya update.
@@mending.ngodingbang ko bagian line 10 sheet.getRange(a2:J${last row} error code trus ya
Penjelasan jelas dan bisa dipraktekkan dengan sukses
Suka dengan caranya menjelaskan, pelan-pelan dan clear banget. Terimakasih banyak, barokallooh :)
Sama-sama. Terima kasih sudah menonton.
Kalau ada kritik/masukan agar ke depan bisa lebih baik lagi, boleh banget dikirimkan ke email saya. :)
Wa fiikum barakallah.
matur suwun share ilmunya .. barokallah
Penjelasan sgt clear.. mulai dr app slide yg rapi dan enak dilihat 😮 👍
Terima kasih atas apresiasinya. Di video yang baru dipublish, mengenai pembuatan bot telegram dengan apps script, juga dilengkapi slide2 sederhana :)
Terimakasih banyak ilmunya mas.. semoga tuhan membalas dengan rahmat yg melimpah.. aamiin
Sama-sama.. aamiin 🤲🏻
Terimakasih banyak mas, ilmunya sangat bermanfaat
Mantep ini broh...ini yg sdg sya cari cari
alhamdulillah berhasil
Barokallah atas ilmunya. Aamiin Jazakallah
Aamiin.. wa fiikum barakallah
Tutorial yg sangat keren..
Penjelasannya Sangat jelas
Semoga bermanfaat
Penjelasannya bagus, bisa dipahami, step by step, di tunggu update terbarunya brow.
Halo! Hari ini ada video baru loh, tentang pembuatan bot telegram dengan apps script.
al-hamdulillah Bisa bang.... keren banget tutornya....
ditunggu Ilmu2 ngodingnya yang selanjutnya
Kalau .replace() nya dilihangkan apakah masih ada error?
punya saya kok tidak bisa jalan ya bang
Iya bang aku coba pas ke replace(e). Error
@@mending.ngoding dihilangkan semua ?
Barakallah mas, mksh banyak ilmunya
Wa fiikum barakallah
Crystal clear penjelasannya... Terima kasih banyak utk sharing ilmunya
Terima kasih kembali
mantab kalau jelasin sangat detail
Terimakasih bang infonya .
Bisa dicoba nih .
Mantab
Jazakumullah khairan katsiran
Aamiin. Wa jazaakumullahu khairan
Keren bermanfaat, thank you ya
Macam mana kalau saye nak hilangkan n dekat belakang..sebab selepas saye space die akan keluar n dekat belakang
Untuk menghilangkan 1 karakter di bagian belakang, kalau pakai .slice(0,-1) bisa?
Misal seperti ini
"RUclips".slice(0,-1)
maka hasilnya adalah: "Youtub"
TERIMA KASIH UNTUK ILMUNYA BANG BRO
terimakasih untuk inspirasinya
pak, kalau saya ingin membuat Tanda Pagar nya menjadi dua itu bagai mana ya, contoh nya #Nama# #Alamat# #Nomer telfon# Tolong di bantu Pak, Sebelum nya terimakasih sudah membagikan Informasi Semoga sukses Selalu
Terima kasih bro.. sangat bermanfaat bro
Sebenarnya saya kemarin langsung praktekan pak, tapi masih belum berhasil.. haha
Bagus mas banyakain konten kayak gini mas, tutorial yg lain
Siap... Barangkali ada ide topik, monggo bisa disampaikan. :)
Luar biasa mas untuk orang awam di dunia per-kodingan seperti saya. kebetulan saya lagi ada ide untuk buat sedikit inovasi di kantor, pas cari2 cara untuk mewujudkan inovasi saya, ketemu video mas ini. Ijin saya pakai untuk keperluan inovasi saya boleh mas ?
Boleh, silakan. Semoga bermanfaat.
Terima kasih mudah dipahami Dan dipelajari.
mantep bro.. lanjutkan
ini kan penginputannya 1x langsung semua ya, dengan delimeter #. kalau misalnya dibuat pertanyaan per kolom bisa ga?
Misalnya:
Q: Input Nama Lengkap Anda
A: Gede Bayu
Q: input instansi
A: SDN 011
Q: Jabatan
A: Kepala Sekolah
Kalau bgini bisa ga ya? soalnya daerah pinggirian kadang banyak yang tidak paham dan banyak kesalahan, apalagi kalau kolom yang harus diisi banyak
Saya coba pelajari dulu, ya. Thanks udah kasih masukan. 👍👍👍
Nah saya juga cari yg seperti ini. Mohon fibuatkan tutorialnya
@@mending.ngoding ninggal.jejak.juga mas
Alhamdulillah...setelah beberapa kali percobaan akhirnya berhasil....
oh iya, sy coba ngulik sendiri menambah jumlah kolom untuk insert datanya tapi ga bisa...terkunci untuk 3 kolom aja....gimana cara nambahnya ya gan
trimakasih sangat membantu
👍
Mantabbbb boooosss langsung saya sukribe
Makasih banyak ya
@@mending.ngoding selain input data ke google sheet bagaimana caranya membuat auto reply dengan google sheet?
nice mas. thankyou somuch. langsugn subscribe. banyakin konten tentang integrasi bot wa/tele dengan form mas. atau cara buat approval dll untuk memudahkan pekerjaan. thankyou
Ok ditunggu ya
Terima kasih ilmunya bang
Mantap om, request buat validasi dikode yg sama tidak bisa menyimpan
Bisa dicoba di-mix dengan kode yang ada di video berikut ruclips.net/video/WPNbvc6lj3U/видео.html
Maksud saya tidak bisa menyimpan dengan primary key yg sama? 🙏
wahh mntapp hey gan, sudah bisa input data via whatsapp ke gsheet, kalo cara ngambil data yang di input dari sheet ke whatsapp bagamna gan?
Untuk pengambilan data yang telah diinput ke google sheet melalui whatsapp sudah bisa dilihat di video yang baru saja diupload. Ini linknya ruclips.net/video/WPNbvc6lj3U/видео.html
thx bang mantap
Pak sistem ini bisa di bantu agar bisa menentukan kolom spreadsheet yang terisi di atur berdasarkan pengirim data
Halo Gan, kalau mau ambil semua chat yg masuk dengan NO WAnya (Tanpa diketik oleh User) gmn caranya Gan?
terimakasih bg, sangat membantu
Sama-sama, Pak. :)
Boleh di coba
Terima kasih banyak bang
Buat tutorial Dari Telegram ke save Otomatis ke Gsheet bang. Terima kasih🙏
ruclips.net/video/qYZ0qEjMZ_U/видео.html
Mohon maaf, baru respon. Beberapa pekan yang lalu saya mengerjakan project bot telegram, termasuk di antara fiturnya yakni input data ke google sheet.
Insya Allah nanti kalau ada kesempatan saya buat tutorialnya.
Keren ini bang
Terimakasih sudah berbagi ilmunya..joss..langsung subcribe.mas..untuk whatsapp group bisa diterapkan
Insya Allah bisa. Pada saat pembuatan rule di aplikasi auto reply ada pengaturan "Reply to" di situ ada opsi: Individual, Group, dan Both. Silakan disesuaikan dengan kebutuhan.
Kak... apakah kita bisa tahu, kalau pesan tersebut telah dibaca atau tidak, dan mendapatkan feedback dari wa tersebut, feedback tersebut bisa masuk ke salah satu kolom di dalam googlesheet, sehingga kalau pesan tersebut belum sampai, maka googlesheet akan mengirimkan pertanyaan yang sama, namun jika pesan sudah sampai atau sudah dibaca, maka googlesheet akan mengirimkan pesan baru, misalnya untuk meminta jawaban dari penerima wa. terima kasih
Bang ini sdh dicoba tutorialnya tapi kog g mau masuk di spreadsheet&g ada replynya, apanya yg salah?
penjelasan yang detail...
tanya dong bang, bagaimana kalo modelnya pake enter,,,misalnya spt ini
Daftar
Nama:
Whatsapp:
Alamat:
terimakasih untuk jawabannya
Pesannya bisa di-split berdasarkan karakter "
" kemudian di split lagi berdasarkan nama field.
Sepertinya sudah beberapa kali ditanyakan di kolom komentar dan saya jawab kode lengkapnya. Coba scroll-scroll lagi ya. hehe
terimakasih atas ilmunya bang
kalo id mau diganti tanggal gimana ya bang?
Mantap bg. Semiga bermanfaat ilmunya. Menjelaskan pelan2 dan mudah dimengerti.
Mau nanya bg. Bisa utk grup bg?
Untuk group bisa
Bang, kalau id nya dibuat hitungan mundur gimana
Misal 50,49
Mohon pencerahan
Terimakasih
bang, gimana cara tahu no/nama
pengirim pesan ?
Makasih banget infonya, adakah autoreply jika memakai pc?
Mantap kawann semangat terus ngonten, boleh reqwes hasil balasan nya jadi menu buttom? daftar lagi/ lanjutkan?
Siapp, insya Allah
bang mau tanya untuk merekap no hp pengirim gmna ya scriptnya
Terimakasih sangat mas, atas ilmunya,.
Sudah saya praktekan tetapi pas di ujicoba kirim WA tidak ada respon, mohon pencerahannya,.
Apakah auto reply-nya sudah berjalan di notification bar?
buat versi yang pakai bot telegram dong bang, soalnya kalau wa lebih ke urusan personal daripada harus beli nomor baru lagi
Bisa dicoba pakai AutoResponder for Telegram, sepertinya mirip kok.
Terimakasih atas ilmunya, mau tanya ... jika hanya input data tanpa mengirim balasan melalu whatsapp, bagaimana cara menghubungkan dengan whatsapp.
Sama-sama. Jika ingin menginput data saja, tanpa ada balasan, maka cukup hapus baris kode berikut:
// Respon
let response = {
data: [
{
message: `Terima kasih, ananda ${nama} berhasil terdaftar dengan ID ${idPendaftar}.`
}
]
};
return ContentService.createTextOutput(JSON.stringify(response));
erorr reading "replace"
Terimakasih tutorialnya, mohon bantuan nya, saya sudah ikuti step by stepnya, tapi kok ketika saya tes tidak ada respon ya..mohon bantuannya
Di log ekskekusi apakah ada pesan bertuliskan "gagal"?
terimakasih sangat membantu sekali
apakah ada tutorial juga untuk auto reply nya supaya bisa disimpan di file hosting ya?
jadi ponsel tidak selalu nyala terus
Sama-sama. Terima kasih sudah menonton videonya.
Jika ingin seperti itu, bisa pakai layanan WA gateway semisal wablas, nanti ada fitur webhooknya.
ada tulisan cannot convert itu kenapa ya?
Bang, untuk mendata nomor WA yang melakukan input data, Bagaimana? Apakah ada tambahan Script yang bisa ditambahkan pada Script Abang tersebut? Mohon pencerahannya. Terimakasih.
Bisa menggunakan "senderName". Akan tetapi kalau nomor orang yang wa belum disimpan di dalam kontak kita, nomor tersebut akan muncul. Tapi kalau sudah disimpan, maka value yang muncul adalah namanya.
@@mending.ngoding script nya bisa dicontohkan gak bang?
Terimakasih Bang @@mending.ngoding
mf bang mau nanya, kalau misalnya yang mau diinput itu paragraph bisa ga bang?..sya udah coba..tapi muncul "n" sebagai pengganti enter..mhon bantuannya bang
Izin tanya bang, kalo mau input data saja tanpa harus reply pesan, bagian scrip mana yg harus diubah?
Baris 30-39 bisa dihapus.
pak coba tambahkan nomor telepon pengirim pak mohon maaf mengganggu pak lagi butuh soalnya
mantap bang, berhasil,
bang untuk wa grup gimana ya,
mohon arahannya
Saat pembuatan rule autoreply di situ ada opsi personal, grup, atau keduanya.
terimakasih banyak atas ilmu yang sangat bermanfaat mas 😊, saya ada pertanyaan mas,
kalau untuk data input dari whatsapp formatnya seperti ini gimana mas?
Nama :
Tanggal :
dst.
dst.
kalau dari penjelasan diatas misal datanya hanya dipisah pakai "#" aja,
terimakasih
Terima kasih sudah menonton videonya.
Kurang lebih bisa dengan cara begini:
1. Membelah pesan yang muncul ke dalam beberapa bagian, berdasarkan karakter enter/new line yang disimbolkan dengan "
" Misal:
const contents = JSON.parse(e["postData"]["contents"]);
const senderMessage = contents["senderMessage"];
const splittedMessage = senderMessage.split("
");
2. Untuk mengambil data nama, bisa dengan cara memfilter elemen yang ada pada array splittedMessage, kemudian membaca tulisan yang ada di sebelah kanan tanda titik dua.
const nama = splittedMessage.filter(el => el.includes("Nama :")).toString().split(":")[1].trim();
Kok saya masih belum bisa ya, sudah copas skrip nya, ganti url dll..tetep ga ada replay dan tdk masuk ke googlesheet
Apakah ARCB-nya sudah berjalan di notification bar android?
Makasih bang atas ilmunya, saya coba maniru cuma tidak Berhadil.
Indikasinya kemungkinan di baris 22 : prefixIdPendaftar (punya saya warna merah)
mungkin ada solusi dari abangnya
Coba pastekan kodenya di sini atau ke email
@@mending.ngoding
function doPost (e) {
// Buka sheet
let sheetUrl = "docs.google.com/spreadsheets/d/1d8SM5H5YSY-4HJlXDojBLw8xHP_uivbeVpuoNyOWghI/edit#gid=0";
let file = SpreadsheetApp.openByUrl(sheetUrl);
let sheet = file.getSheetByName("Sheet1");
// Rapikan data
let req = JSON.stringify(e).replace(/\\/g, "").replace("}\"", "}").replace("\"{", "{");
let reqJson = JSON.parse(req);
let senderMessage = JSON.stringify(reqJson["postData"]["contents"][senderMessage]);
// Mengurai isi pesan
let parsedMessage = senderMessage.split("#");
// ['"daftar','afin', '17/08/1945', ' Indonesia']
let nama = parsedMessage[1].trim();
let tanggalLahir = parsedMessage[2].trim();
let alamat = parsedMessage[3].trim().slice(0, -1);
// Membuat ID
let row = sheet.getLastRow() + 1;
let prefixIdPendaftar = 220000;
let idPendaftar = 'A-${prefixIdPendaftar + row - 1}' ;
// Insert data
sheet.getRange('A${row}').setValue(idPendaftar);
sheet.getRange('B${row}').setValue(nama);
sheet.getRange('C${row}').setValue(tanggalLahir);
sheet.getRange('D${row}').setValue(alamat);
// Respon
let response = {
data: [
{
message: 'Terima kasih, ananda ${nama} berhasil terdaftar dengan ID {idPendaftar}.'
}
]
};
return ContentService.createTextOutput(JSON.stringify(response));
}
terima ksaih tutorialnya bang. jika ingin input dengan foto gimana ya
terima kasih.
Untuk foto belum memungkinkan jika pakai metode auto reply chat bot
kalau mau tambah (Nama Tanggal Lahir Alamat Telp JK)
tambahnya gmn ya , sudah di tambah di bagian // Mengurai isi pesan tapi hanya sampai alamat saja
mohon bantuannya
klu pengalamanku di sesuaikan saja nomor bgian parsedMessage dan sebelum bgian parsedMessage juga di edit juga telp dan jk nya
Terimakasih ilmunya luar biasa keren pak.
Request untuk data WhatsApp dikirim ke google form bagaimana pak?
Sama-sama. Terima kasih kembali sudah menonton.
Untuk pengiriman data ke form input yang ada di google form berarti harus menggunakan link yang ada "prefill" nya, begitu?
terimakasih bang penjelasannya mudah di pahami ..
oiya untuk emulator menampilkan layar hp di desktop nya pakai apa bang ?
Sama-sama. Terima kasih sudah mampir nonton.
Untuk menampilkan layar hp nggak pakai emulator, tapi pakai aplikasi untuk mirroring dari layae hp ke laptop. Nama aplikasinya "scrcpy"
bang, kalau dari wa web collect data pesan masuk dan keluarnya gimana ya ?
Bisa pakai layanan WA gateway, pak. Pilih WA gatewaynya yang menyediakan fitur webhook.
slice(0, -1) ini kan untuk menghapus 1 karakter di belakang, kalau menghapus 1 kaekter di depan bagaimnana?
bisa pakai slice(1)
Misal:
"hutang".slice(1)
Hasilnya:
"utang"
mnatabs mas,, membantu UMKM banget tutronya,, ini saya terapkan untuk order produk mas, misal kita tambah kolom status pengiriman, terus costumer pingin ngecek melalui WA dengan kirim *status**#iDpelanggan* biar bisa dapat balasan otomatis terkait status pengiriman yang sudah ada di kolom spreadsheet gimana ya mas,, mohon tutornya,,🙏
Sip, insya Allah. Sedang dipersiapkan.
Haii.. video tutorial untuk mengecek data google sheet lewat WA sudah tayang di channel mending ngoding. :) Silakan dicek ruclips.net/video/WPNbvc6lj3U/видео.html
mohon ijin ka.. saya mau coba buat semoga bisa terimakasih
terima kasih tutorialnya, kalo di appscript bisa ga ya nerima pesan file seperti pdf dan image? lalu disimpan di google drive dan linknya di google sheet misalnya
idem... pertanyaan yg sama dg diatas
Kalau apps scriptnya mungkin bisa, tapi untuk ARCB sayangnya belum bisa.
kalau juga mengambil nomer pengirimnya itu gimana ya kak
terimakasih tutorialnya sangat bagus, tapi kenapa nomer WA saya di banned?
Ada beberapa kemungkinan penyebab nomor WA dibanned, beberapa di antaranya:
1. Dilaporkan/report sebagai spam oleh penerima pesan
2. Jarak pengiriman pesan antara satu pesan dengan pesan lainnya terlalu rapat dalam jumlah yang banyak
Kalau tidak salah akan ada tombol untuk mengajukan peninjauan ulang kepada pihak WhatsApp/Meta. Coba diklik kemudian ditunggu beberapa jam.
Tolong dong min saya doPostnya eror d bagian baris 8. Minta pencerahannya suhu 🙏
Sudah coba dideploy?
Bang.. bisa tidak ya nomor whatsapp yg masuk ke wa kita, masuk otomatis ke spreadsheet berupa data langsung spt itu? Buat simpan data cust gitu
Bisa seperti ini:
let nomorPengirim = reqJson["postData"]["contents"]["senderName"].replace(/[ +-]/g, '');
sheet.getRange(`E${row}`).setValue(nomorPengirim);
Catatan:
Prinsip kerja ARCB ini adalah membaca notifikasi, ketika nomor si pengirim pesan belum tersimpan ke dalam kontak ponsel kita, yang terbaca adalah nomornya.
Akan tetapi kalau nomor si pengirim pesan sudah tersimpan di dalam kontak kita, maka yang terbaca/muncul adalah namanya.
@@mending.ngoding ada kontak yg bisa saya hubungi? Minta dibantu jasa nya mas
Boleh, dm dulu ya ke @miftahafina nanti saya kirim nomornya di dm ig. 🙏
@@mending.ngoding Ka, kalo mau tarik data tanggal gimana ya ? saya coba yg masuk bukan berupa tanggal -_-. Mohon pencerahannya
Thanks,
mas, untuk yang let req kok dibaca salah ya??
Done bang, work, tapi bisa ngga jika di modifikasi si app script ini mengurai data dari watapshop kemudian dia auto input ke sheets
Terima kasih sudah mengikuti tutorialnya. Boleh dijelaskan lebih lanjut watapshop itu seperti apa? biar saya ada gambaran.
Terimakasih atas tutorial nya, namun setelah saya ikuti semua step, tetap tidak bisa masuk datanya ke google sheet
Apakah ARCB-nya sudah berjalan di notif bar android?
terimakasih tutorialnya bang, bagaimana cara mengatasi auto reaply yang tidak bisa berjalan otomatis
Biasanya kalau di hape saya MIUI itu karena fitur MIUI battery optimizationnya aktif. Coba fitur tersebut dinonaktifkan khusus untuk aplikasi auto reply-nya
Terima kasih, sangat bermanfaat sekali. Apakah bisa bila kita hanya membuat input otomatis saja ke googlesheet, tanpa balasan ke WA pengirim?
Bisa, cukup hapus saja baris response dan return-nya
Terima kasih banyak. Apa bisa ya untuk tampung data seperti foto begitu?
min punya ku kok eror ya. eror di replace bagian dePost. atau perlu download sesuatu dlu?
Error tersebut besar kemungkinan karena scriptnya dijalankan via code editor. Seharusnya script dideploy dan dipanggil lewat aplikasi ARCB-nya.
tutorialnya mantab bang, lalu cara agar bisa menerima pesan berupa image bgmn bang? mis : gambar KTA/ KTP. Kemudian bgmn cara mencegah data ganda atau data yg sama terinput ulang?
tengkyu bang..
Sayangnya untuk pesan dalam bentuk gambar belum didukung oleh autoreply chat bot. Berikutnya untuk data ganda dapat diakali dengan cara melakukan pengecekan sebelum data tersebut diinput ke google sheet. Caranya mirip dengan yang ada di video terbaru @mending.ngoding.
Terimakasih video mana yang mana bang
mas tanya...kalau nomor pengirim pesan dan waktu pengiriman pesan di munculkan di spreadsheet gmn ya coding nya..terimakasih
Kalau waktu pengiriman pesan bisa pakai new Date
Kemudian kalau nomor belum bisa, alternatifnya bisa pakai senderName untuk melihat namanya
Pakai hp bisa gak bang. Termux misalnya. Tolong tutorial nya bang
Halo mas,
Bagaimana jika pemisahnya adalah enter tidak pagar.
contoh form
Pesanan
Nama :
Produk :
Jumlah :
Halo! Kalau format pesannya seperti itu, maka untuk pengambilan datanya bisa dengan cara:
1. Split pesan yang diterima berdasarkan karakter enter, yang disimbolkan dengan "
", sehingga menjadi sebuah array
2. Buat variabel sesuai dengan data yang diperlukan
3. Kemudian lakukan looping pada setiap elemen yang ada di array tersebut. Tiap kali looping, yang dilakukan adalah:
a. Cari kata yang mengandung nama kolom, misal: "Nama :"
b. Jika ditemukan, maka split baris tersebut dengan tanda titik dua ":" lalu ambil elemen dengan index 1.
c. Isi variabel yang telah dibuat pada langkah ke-2 dengan value pada poin 3b
4. Jika mau mengambil nilai dari variabel tadi, cukup dipanggil nama variabelnya saja seperti biasa.
Berikut saya lampirkan contoh kodenya:
function test() {
// pesan diterima
const message = `Pesanan
Nama : Afin
Produk : MacBook Pro M2 Pro 14 inch
Jumlah : 1`;
// variabel data
let nama, produk, jumlah;
// split pesan
const splitted = message.split('
');
// cek isi pesan
splitted.forEach(el => {
nama = el.includes('Nama :') ? el.split(':')[1].trim() : nama;
produk = el.includes('Produk :') ? el.split(':')[1].trim() : produk;
jumlah = el.includes('Jumlah :') ? parseInt(el.split(':')[1].trim()) : jumlah;
});
// cek isi konstanta dan variabel
console.log(splitted);
console.log(nama);
console.log(produk);
console.log(jumlah);
}
@@mending.ngoding mantap penjelasannya. terima kasih mas
👍👍👍👍👍👍👍👍👍👍👍
Sama-sama. Semoga bermanfaat.. 🙏🏻
mas, cara melihat data yg diperoleh dari ARCB bagaimana? Misal klu pakai aplikasi WhatsAuto
Mungkin bisa dengan:
JSON.parse(e['postData']['contents']);
Mending Ngoding e di sini merupakan parameter function doPost()
Kak Miftah , ini saya contek ikutin dari awal ampe akhir video nya koq ga bisa ya. waktu kirim wa koq ga masuk di google sheet nya ya dan ga ada jawaban auto reply nya. mohon pencerahan nya miss nya di mana ?
ini Code nya saya contek persis dari gitfhub
function doPost(e) {
// Buka sheet
let sheetUrl = "docs.google.com/spreadsheets/d/1BanY0Yd_vfoRKVnqc112kvEK_4-M8-2VwQKFoI0MSJ0/edit#gid=0";
let file = SpreadsheetApp.openByUrl(sheetUrl);
let sheet = file.getSheetByName("Sheet1");
// Rapikan data
let req = JSON.stringify(e).replace(/\\/g, "").replace("}\"", "}").replace("\"{", "{");
let reqJson = JSON.parse(req);
let senderMessage = JSON.stringify(reqJson["postData"]["contents"]["senderMessage"]);
// Mengurai isi pesan
let parsedMessage = senderMessage.split("#");
// ['"daftar', 'afin', '17/08/1945', 'Indonesia']
let nama = parsedMessage[1].trim();
let tanggalLahir = parsedMessage[2].trim();
let alamat = parsedMessage[3].trim().slice(0, -1);
// Membuat ID
let row = sheet.getLastRow() + 1;
let prefixIdPendaftar = 220000;
let idPendaftar = `A-${prefixIdPendaftar + row - 1}`;
// Insert data
sheet.getRange(`A${row}`).setValue(idPendaftar);
sheet.getRange(`B${row}`).setValue(nama);
sheet.getRange(`C${row}`).setValue(tanggalLahir);
sheet.getRange(`D${row}`).setValue(alamat);
// Respon
let response = {
data: [
{
message: `Terima kasih, ananda ${nama} berhasil terdaftar dengan ID ${idPendaftar}.`
}
]
};
return ContentService.createTextOutput(JSON.stringify(response));
}
Di notification bar android sudah terlihat ada icon auto reply yang standby/selalu berjalan?
Sudah bisa Kak Miftah , ternyata di setelan hp nya untuk notifikasi harus di on kan.
Kak Miftah , Klau google sheet nya saya close , aplikasi nya ga jalan kak , jd google sheet nya harus terbuka terus ya Kak ? Terima Kasih
Aplikasinya tetap jalan. Kemungkinan pas lagi kirim pesan itu di hp yang ada autoreply-nya sedang buka chat si pengirim, ya?
Misal kalau triggernya chat apapun terus kolomnya
Nama:
Ttl:
Alamat:
Dst
Gmn ya bang mohon pencerahannya
Pesannya bisa di-split berdasarkan karakter "
" kemudian di split lagi berdasarkan nama field.
Sepertinya sudah beberapa kali ditanyakan di kolom komentar dan saya jawab kode lengkapnya. Coba scroll-scroll lagi ya. hehe
Bagaimana jika sender message-nya menggunakan enter bukan pagar?
Misal
Nama :
TTL :
Alamat :
Mohon pencerahannya 🙏
Kurang lebih bisa dengan cara seperti berikut:
1. Membelah pesan yang muncul ke dalam beberapa bagian, berdasarkan karakter enter/new line yang disimbolkan dengan "
" Misal:
const contents = JSON.parse(e["postData"]["contents"]);
const senderMessage = contents["senderMessage"];
const splittedMessage = senderMessage.split("
");
2. Untuk mengambil data nama, bisa dengan cara memfilter elemen yang ada pada array splittedMessage, kemudian membaca tulisan yang ada di sebelah kanan tanda titik dua.
const nama = splittedMessage.filter(el => el.includes("Nama :")).toString().split(":")[1].trim();
Tinggal dilanjutkan untuk mengambil data lainnya
seperti ini bukan mas?
@@mending.ngoding function doPost(e) {
// Buka sheet
let sheetUrl = "docs.google.com/spreadsheets/d/1l_hmTxY2qsfTPCB0b4PlMDunxiShtsUU6TZH3w-dSGg/edit#gid=0";
let file = SpreadsheetApp.openByUrl(sheetUrl);
let sheet = file.getSheetByName("Telekonsul");
// Rapikan data
let contents = JSON.parse(e["postData"]["contents"]);
let senderMessage = contents["senderMessage"];
let splittedMessage = senderMessage.split("
");
let d = new Date();
let currentTime = d.toLocaleString("pt-BR", { timeZone: "Asia/Jakarta"});
// Mengurai isi pesan
let nik = splittedMessage.filter(el => el.includes("NIK :")).toString().split(":")[1].trim();
let bpjs = splittedMessage.filter(el => el.includes("Nomor BPJS (Jika Ada) :")).toString().split(":")[2].trim();
let nama = splittedMessage.filter(el => el.includes("Nama Lengkap :")).toString().split(":")[3].trim();
let kk = splittedMessage.filter(el => el.includes("Kepala Keluarga :")).toString().split(":")[4].trim();
let ttl = splittedMessage.filter(el => el.includes("Tanggal Lahir :")).toString().split(":")[5].trim();
let alamat = splittedMessage.filter(el => el.includes("Alamat Lengkap :")).toString().split(":")[6].trim();
let nomor = splittedMessage.filter(el => el.includes("Nomor Telepon :")).toString().split(":")[7].trim();
let kelamin = splittedMessage.filter(el => el.includes("Jenis Kelamin :")).toString().split(":")[8].trim();
let pekerjaan = splittedMessage.filter(el => el.includes("Pekerjaan :")).toString().split(":")[9].trim();
// Membuat ID
let row = sheet.getLastRow() + 1;
let prefixIdPendaftar = 0;
let idPendaftar = `Z-${prefixIdPendaftar + row - 1}`;
// Insert data
sheet.getRange(`A${row}`).setValue(currentTime);
sheet.getRange(`B${row}`).setValue(idPendaftar);
sheet.getRange(`C${row}`).setValue(nik);
sheet.getRange(`D${row}`).setValue(bpjs);
sheet.getRange(`E${row}`).setValue(nama);
sheet.getRange(`F${row}`).setValue(kk);
sheet.getRange(`G${row}`).setValue(ttl);
sheet.getRange(`H${row}`).setValue(alamat);
sheet.getRange(`I${row}`).setValue(nomor);
sheet.getRange(`J${row}`).setValue(kelamin);
sheet.getRange(`K${row}`).setValue(pekerjaan);
// Respon
let response = {
data: [
{
message: `Terima kasih, pasien atas nama ${nama} berhasil terdaftar dengan nomor antrian ${idPendaftar}. Mohon menunggu hingga dokter menghubungi kembali.🙏🙏`
}
]
};
return ContentService.createTextOutput(JSON.stringify(response));
}
Keren
Mas, ada kendala di perintah "replace" padalhal sudah saya sesuaikan dgn punya mas semua
Coba untuk baris kode:
let req = JSON.stringify(e).replace(/\\/g, "").replace("}\"", "}").replace("\"{", "{");
let reqJson = JSON.parse(req);
let senderMessage = JSON.stringify(reqJson["postData"]["contents"]["senderMessage"]);
Diganti dengan:
let contents = JSON.parse(e['postData']['contents']);
let senderMessage = contents['senderMessage'];
cara melihat isi pesan yg dikirim oleh arcb dimana mas?
Di ARCB sepertinya ada reportnya, tapi bisa juga dibuat function log sendiri agar setiap memberikan respon tercatat di sheet "Log"
gimana caranya kl balasan berupa file pdf dari bukti pendaftarannya?
Langkah untuk generate file pdfnya mirip dengan yang ada pada video ini ruclips.net/video/Bx3NjHkGXq0/видео.html