pengenalan
Dalam tutorial ini, kita akan belajar cara menggunakan Ultramsg Nodejs-WhatsApp-sdk untuk menggunakan WhatsAppAPI dengan Nodejs
Pemasangan Nodejs-sdk API WhatsApp
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)
})();
NOTA: anda perlu menggantikan instance_id dan token dengan anda dalam akaun ultramsg.com jika anda tidak mempunyai akaun buat satu dari sini .
Menghantar mesej
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)
- kepada : nombor anda untuk ujian dengan format antarabangsa cth, +14155552671 atau chatID untuk kenalan atau kumpulan cth [email protected] atau [email protected]
- badan : Teks mesej, rentetan UTF-8 atau UTF-16 dengan emoji.
- keutamaan: Parameter ini adalah pilihan,
Anda boleh menggunakannya untuk membuat baris gilir profesional untuk mesej , Mesej dengan nilai keutamaan yang kurang dihantar dahulu.
contoh penggunaan:
keutamaan = 0: untuk Keutamaan tinggi seperti mesej OTP.
keutamaan = 5: digunakan dengan mesej umum.
keutamaan =10: tawaran promosi tidak mendesak dan pemberitahuan kepada pelanggan anda.
Nilai lalai: 10
- referenceId : ID rujukan tersuai anda untuk mesej ini.
Hantar Imej
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)
- kapsyen : imej Kapsyen, rentetan UTF-8 atau UTF-16 dengan emoji.
- imej : Imej pautan HTTP atau fail berkod base64
Sambungan yang disokong ( jpg , jpeg, gif , png , svg , webp , bmp) .
Saiz fail maksimum: 16MB.
Panjang Max Base64 : 2,000,000
- nocache : lalai palsu
false: gunakan fail yang dimuat naik sebelum ini dan bukannya memuat naiknya dengan setiap permintaan
benar: memuat naiknya setiap permintaan
Hantar 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 fail: Nama fail, contohnya 1.jpg atau Hello.pdf
- dokumen: Fail pautan HTTP atau fail berkod base64
Menyokong kebanyakan sambungan seperti ( zip , xlsx , csv , txt , pptx , docx ….dll).
Saiz fail maksimum: 100MB.
Panjang Max Base64: 2,000,000
Hantar 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 pautan HTTP atau audio berkod base64
Sambungan yang disokong ( mp3 , aac , ogg ) .
Saiz fail maksimum: 16MB.
Panjang Max Base64 : 2,000,000
Hantar 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 : Fail ogg audio pautan HTTP dengan codec opus atau fail ogg base64 dalam codec opus
Saiz fail maksimum: 16MB.
Panjang Max Base64 : 2,000,000
Hantar 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 pautan HTTP atau video berkod base64
Sambungan yang disokong ( mp4 , 3gp , mov ) .
Saiz fail maksimum: 16MB.
Panjang Max Base64 : 2,000,000
Hantar Pautan
var to="put_your_mobile_number_here";
var link="https://ultramsg.com";
const response = await api.sendLinkMessage(to,link);
console.log(response)
pautan: pautan HTTP atau HTTPS
Hantar Kenalan
var to="put_your_mobile_number_here";
var contact="[email protected]";
const response = await api.sendContactMessage(to,contact);
console.log(response)
- kenalan: ID Kenalan atau contoh tatasusunan ID Kenalan:
Contoh
atau
[email protected],[email protected],[email protected]
Panjang maksimum: 300 aksara, hampir 15 kenalan
Hantar 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.
Menyokong dua baris. Untuk menggunakan dua baris, gunakan simbol \n.
Panjang maksimum: 300 char.
- lat : Latitud
- lng : longitud
Hantar 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 maksimum: 4096 char
Dapatkan Mesej
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 : nombor halaman penomboran
- had : bilangan mesej setiap permintaan . nilai maks : 100 .
- status : Status mesej [dihantar, baris gilir, tidak dihantar]
- dihantar: dapatkan mesej dihantar.
- baris gilir : dapatkan mesej baris gilir .
- tidak dihantar: dapatkan mesej yang tidak dihantar.
- tidak sah : dapatkan mesej tidak sah .
- semua : dapatkan semua mesej .
- jenis :
- asc : mengisih mesej mengikut ID daripada terkecil kepada terbesar .
- desc : mengisih mesej mengikut ID daripada terbesar kepada terkecil .
- id : tapis mesej mengikut ID mesej .
- referenceId : tapis mesej mengikut ID rujukan tersuai anda .
- daripada : tapis mesej mengikut nombor penghantar WhatsApp cth [email protected] .
- kepada : menapis mesej mengikut nombor penerima cth [email protected] atau [email protected] .
- ack : tapis mesej mengikut status ack mesej [ belum selesai , pelayan , peranti , baca , dimainkan ].
Dapatkan Statistik Mesej
const response = await api.getMessageStatistics();
console.log(response)
Dapatkan Status Contoh
const response = await api.getInstanceStatus();
console.log(response)
Dapatkan Imej QR Instance
const response = await api.getInstanceQr();
console.log(response)
Dapatkan Kod QR Instance
const response = await api.getInstanceQrCode();
console.log(response)
Dapatkan Maklumat Contoh
Dapatkan maklumat telefon yang disambungkan: nombor, nama, imej dll.
const response = await api.getInstanceMe();
console.log(response)
Dapatkan Tetapan Contoh
const response = await api.getInstanceSettings();
console.log(response)
sendDelay : Kelewatan dalam beberapa saat antara menghantar mesej, Lalai 1 saat
webhook_url : URL Http atau https untuk menerima pemberitahuan.
webhook_message_ack : pemberitahuan on/off ack (mesej dihantar dan mesej dilihat) dalam webhooks.
webhook_message_received : pemberitahuan hidup/mati dalam webhooks apabila mesej diterima .
webhook_message_create : pemberitahuan hidup/mati dalam webhooks apabila mesej dibuat .
webhook_message_download_media : hidup/mati untuk mendapatkan fail dokumen / media yang diterima.
Log Keluar Contoh
Log keluar dari WhatsApp Web untuk mendapatkan kod QR baharu.
const response = await api.sendInstanceLogout();
console.log(response)
Mulakan Semula Contoh
Mulakan semula contoh anda.
const response = await api.sendInstanceRestart();
console.log(response)
Kemas Kini Tetapan Instance
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 : Kelewatan dalam beberapa saat antara menghantar mesej .
- webhook_url : URL Http atau https untuk menerima pemberitahuan.
- webhook_message_received : pemberitahuan benar/salah dalam webhooks apabila mesej diterima .
- webhook_message_create : pemberitahuan benar/salah dalam webhooks apabila mesej dibuat .
- webhook_message_ack : ack benar/salah (mesej dihantar dan mesej dilihat) pemberitahuan dalam webhooks.
Dapatkan senarai sembang
const response = await api.getChats();
console.log(response)
dapatkan mesej terakhir daripada perbualan sembang
- chatId : chatID untuk kenalan atau kumpulan cth [email protected] atau [email protected]
- had : bilangan mesej setiap permintaan .
nilai maksimum: 1000.
var chatId="[email protected]";
var limit=100;
const response = await api.getChatsMessages(chatId,limit);
console.log(response)
Dapatkan senarai kenalan
const response = await api.getContacts();
console.log(response)
Dapatkan maklumat hubungan
chatId : chatID untuk dihubungi cth [email protected]
var chatId="[email protected]";
const response = await api.getContact(chatId);
console.log(response)
Mendapat semua kenalan yang disekat
const response = await api.getBlockedContacts();
console.log(response)
sekat kenalan daripada WhatsApp
chatId : chatID untuk dihubungi cth [email protected]
var chatId="[email protected]";
const response = await api.blockContact(chatId);
console.log(response)
Nyahsekat kenalan daripada WhatsApp
chatId : chatID untuk dihubungi cth [email protected]
var chatId="[email protected]";
const response = await api.unblockContact(chatId);
console.log(response)
Semak sama ada nombor adalah pengguna WhatsApp
chatId : chatID untuk dihubungi cth [email protected]
var chatId="[email protected]";
const response = await api.checkContact(chatId);
console.log(response)
Terima mesej WhatsApp
anda boleh Terima mesej WhatsApp menggunakan webhooks, anda boleh lihat artikel ini .
Akhirnya
Anda boleh melawati projek di github
WhatsApp API Nodejs-sdk Ver semasa: 1.0.1 pada NPM