pengantar
Dalam tutorial ini, kita akan belajar cara menggunakan Ultramsg Nodejs-WhatsApp-sdk untuk menggunakan WhatsAppAPI dengan Nodejs
Instalasi WhatsApp API Nodejs-sdk
npm i ultramsg-whatsapp-api
Contoh penggunaan
const ultramsg = require('ultramsg-whatsapp-api');
const instance_id= "instance1150" // Ultramsg.com instance id
const ultramsg_token= "tof7lsdJasdloaa57e" // Ultramsg.com token
const api = new ultramsg(instance_id,ultramsg_token);
(async function () {
var to = "put_your_mobile_number_here"
var body = "Hello world"
const response = await api.sendChatMessage(to,body);
console.log(response)
})();
CATATAN: Anda perlu mengganti instance_id dan token dengan milik Anda di akun ultramsg.com jika Anda tidak memiliki akun, buat akun dari sini .
Mengirim pesan
var to="put_your_mobile_number_here";
var body="Hello world";
var priority=10;
var referenceId="SDK";
const response = await api.sendChatMessage(to,body,priority,referenceId);
console.log(response)
- ke : nomor Anda untuk pengujian dengan format internasional misalnya, +14155552671 atau chatID untuk kontak atau grup misalnya [email protected] atau [email protected]
- body : Teks pesan, string UTF-8 atau UTF-16 dengan emoji.
- prioritas: Parameter ini opsional,
Anda dapat menggunakannya untuk membuat antrean profesional untuk pesan , Pesan dengan nilai prioritas lebih rendah dikirim terlebih dahulu.
contoh penggunaan:
prioritas = 0: untuk Prioritas tinggi seperti pesan OTP.
prioritas = 5: digunakan dengan pesan umum.
prioritas =10: penawaran dan pemberitahuan promosi tidak mendesak kepada pelanggan Anda.
Nilai default: 10
- referenceId : ID referensi khusus Anda untuk pesan ini.
Kirim Gambar
var to="put_your_mobile_number_here";
var caption="image Caption";
var image="https://file-example.s3-accelerate.amazonaws.com/images/test.jpg";
var priority=10;
var referenceId="SDK"
var nocache=false;
const response = await api.sendImageMessage(to,caption,image,priority,referenceId,nocache);
console.log(response)
- keterangan : keterangan gambar, string UTF-8 atau UTF-16 dengan emoji.
- gambar : gambar tautan HTTP atau file yang disandikan base64
Ekstensi yang didukung ( jpg , jpeg, gif , png , svg , webp , bmp) .
Ukuran file maksimum: 16MB.
Panjang Max Base64 : 2.000.000
- nocache : default salah
false: gunakan file yang diunggah sebelumnya alih-alih mengunggahnya dengan setiap permintaan
benar: mengunggahnya setiap permintaan
Kirim Dokumen
var to="put_your_mobile_number_here";
var filename="cv.pdf";
var document="https://file-example.s3-accelerate.amazonaws.com/documents/cv.pdf";
const response = await api.sendDocumentMessage(to,filename,document);
console.log(response)
- nama file: Nama file, misalnya 1.jpg atau Hello.pdf
- dokumen: File tautan HTTP atau file yang disandikan base64
Mendukung sebagian besar ekstensi seperti ( zip , xlsx , csv , txt , pptx , docx ….etc ) .
Ukuran file maks: 100MB.
Panjang Max Base64: 2.000.000
Kirim Audio
var to="put_your_mobile_number_here";
var audio="https://file-example.s3-accelerate.amazonaws.com/audio/2.mp3";
const response = await api.sendAudioMessage(to,audio);
console.log(response)
- audio : audio tautan HTTP atau audio yang disandikan base64
Ekstensi yang didukung ( mp3 , aac , ogg ) .
Ukuran file maksimum: 16MB.
Panjang Max Base64: 2.000.000
Kirim Suara
var to="put_your_mobile_number_here";
var audio="https://file-example.s3-accelerate.amazonaws.com/voice/oog_example.ogg";
const response = await api.sendVoiceMessage(to,audio);
console.log(response)
- audio : File ogg audio tautan HTTP dengan codec opus atau file ogg base64 dalam codec opus
Ukuran file maksimum: 16MB.
Panjang Max Base64: 2.000.000
Mengirim video
var to="put_your_mobile_number_here";
var caption="video Caption";
var video="https://file-example.s3-accelerate.amazonaws.com/video/test.mp4";
const response = await api.sendVideoMessage(to,caption,video);
console.log(response)
- video : video tautan HTTP atau video yang disandikan base64
Ekstensi yang didukung ( mp4 , 3gp , mov ) .
Ukuran file maksimum: 16MB.
Panjang Max Base64: 2.000.000
Kirim Tautan
var to="put_your_mobile_number_here";
var link="https://ultramsg.com";
const response = await api.sendLinkMessage(to,link);
console.log(response)
tautan: tautan HTTP atau HTTPS
Kirim Kontak
var to="put_your_mobile_number_here";
var contact="[email protected]";
const response = await api.sendContactMessage(to,contact);
console.log(response)
- kontak: ID Kontak atau contoh larik ID Kontak:
Contoh
atau
[email protected],[email protected],[email protected]
Panjang maksimal: 300 char, hampir 15 kontak
Kirim lokasi
var to="put_your_mobile_number_here";
var address="ABC company \n Sixth floor , office 38";
var lat="25.197197";
var lng="55.2721877";
const response = await api.sendLocationMessage(to,address,lat,lng);
console.log(response)
- alamat : Teks di bawah lokasi.
Mendukung dua baris. Untuk menggunakan dua garis, gunakan simbol \n.
Panjang maksimal: 300 karakter.
- lat : Lintang
- lng : bujur
Kirim Vcard
var to="put_your_mobile_number_here";
var vcard=`BEGIN:VCARD
VERSION:3.0
N:lastname;firstname
FN:firstname lastname
TEL;TYPE=CELL;waid=14000000001:14000000002
NICKNAME:nickname
BDAY:01.01.1987
X-GENDER:M
NOTE:note
ADR;TYPE=home
ADR;TYPE=work
END:VCARD`;
const response = await api.sendVcardMessage(to,vcard);
console.log(response)
- vcard : Nilai teks vcard 3.0
Panjang maks: 4096 karakter
Dapatkan Pesan
var page=1;
var limit=100;
var status="all";
var sort="asc";
var id="";
var referenceId="";
var from="";
var to="";
var ack="";
const response = await api.getMessages(page,limit,status,sort,id,referenceId,from,to,ack);
console.log(response)
- halaman : nomor halaman pagination
- batas : jumlah pesan per permintaan . nilai maksimal : 100 .
- status : Status pesan [terkirim, antrian, tidak terkirim]
- terkirim: dapatkan pesan terkirim.
- antrian : mendapatkan pesan antrian .
- tidak terkirim: mendapatkan pesan yang belum terkirim.
- tidak valid: mendapatkan pesan yang tidak valid.
- semua: dapatkan semua pesan.
- urutkan :
- asc : pesan diurutkan berdasarkan ID dari terkecil ke terbesar .
- desc : pesan diurutkan berdasarkan ID dari terbesar ke terkecil .
- id : menyaring pesan berdasarkan ID pesan .
- referenceId : memfilter pesan menurut ID referensi khusus Anda .
- dari : menyaring pesan dengan nomor pengirim WhatsApp misalnya [email protected] .
- ke : menyaring pesan berdasarkan nomor penerima misalnya [email protected] atau [email protected] .
- ack : menyaring pesan berdasarkan status ack pesan [tertunda, server, perangkat, baca, mainkan].
Dapatkan Statistik Pesan
const response = await api.getMessageStatistics();
console.log(response)
Dapatkan Status Instans
const response = await api.getInstanceStatus();
console.log(response)
Dapatkan Gambar QR Instans
const response = await api.getInstanceQr();
console.log(response)
Dapatkan Kode QR Instans
const response = await api.getInstanceQrCode();
console.log(response)
Dapatkan Info Instan
Dapatkan informasi telepon yang terhubung: nomor, nama, gambar, dll.
const response = await api.getInstanceMe();
console.log(response)
Dapatkan Pengaturan Instans
const response = await api.getInstanceSettings();
console.log(response)
sendDelay : Penundaan dalam hitungan detik antara pengiriman pesan, Default 1 detik
webhook_url: URL Http atau https untuk menerima notifikasi.
webhook_message_ack : on/off ack (pesan terkirim dan pesan dilihat) notifikasi di webhook.
webhook_message_received: notifikasi aktif/nonaktif di webhook saat pesan diterima.
webhook_message_create: notifikasi aktif/nonaktif di webhook saat pesan dibuat.
webhook_message_download_media : on/off untuk menerima file dokumen/media.
Keluar Instans
Keluar dari WhatsApp Web untuk mendapatkan kode QR baru.
const response = await api.sendInstanceLogout();
console.log(response)
Mulai Ulang Instans
Mulai ulang instans Anda.
const response = await api.sendInstanceRestart();
console.log(response)
Pembaruan Pengaturan Instans
var sendDelay=1;
var webhook_url="";
var webhook_message_received=false;
var webhook_message_create=false;
var webhook_message_ack=false;
var webhook_message_download_media=false;
const response = await api.sendInstanceSettings(sendDelay,webhook_url,webhook_message_received,webhook_message_create,webhook_message_ack,webhook_message_download_media);
console.log(response)
- sendDelay : Penundaan dalam hitungan detik antara pengiriman pesan.
- webhook_url : URL Http atau https untuk menerima notifikasi.
- webhook_message_received : pemberitahuan benar/salah di webhook saat pesan diterima.
- webhook_message_create : pemberitahuan benar/salah di webhook saat pesan dibuat.
- webhook_message_ack : pemberitahuan true/false ack (pesan terkirim dan pesan dilihat) di webhook.
Dapatkan daftar obrolan
const response = await api.getChats();
console.log(response)
dapatkan pesan terakhir dari percakapan obrolan
- chatId : chatID untuk kontak atau grup misalnya [email protected] atau [email protected]
- batas : jumlah pesan per permintaan .
nilai maksimal: 1000.
var chatId="[email protected]";
var limit=100;
const response = await api.getChatsMessages(chatId,limit);
console.log(response)
Dapatkan daftar kontak
const response = await api.getContacts();
console.log(response)
Dapatkan info kontak
chatId : chatID untuk kontak misalnya [email protected]
var chatId="[email protected]";
const response = await api.getContact(chatId);
console.log(response)
Dapatkan semua kontak yang diblokir
const response = await api.getBlockedContacts();
console.log(response)
blokir kontak dari WhatsApp
chatId : chatID untuk kontak misalnya [email protected]
var chatId="[email protected]";
const response = await api.blockContact(chatId);
console.log(response)
Buka blokir kontak dari WhatsApp
chatId : chatID untuk kontak misalnya [email protected]
var chatId="[email protected]";
const response = await api.unblockContact(chatId);
console.log(response)
Periksa apakah nomor tersebut adalah pengguna WhatsApp
chatId : chatID untuk kontak misalnya [email protected]
var chatId="[email protected]";
const response = await api.checkContact(chatId);
console.log(response)
Terima pesan WhatsApp
Anda dapat Menerima pesan WhatsApp menggunakan webhook, Anda dapat melihat artikel ini.
Akhirnya
Anda dapat mengunjungi proyek di github
WhatsApp API Nodejs-sdk Ver saat ini: 1.0.1 di NPM