Kerangka kerja API Resmi Whatsapp agnostik server TypeScript.
whatsapp-api-js v4
Daftar isi
Mendirikan
Contoh dan Tutorial
Jenis
log perubahan
Dokumentasi
Kontributor
Kontribusi
Perubahan yang merusak
Rilis beta
Sebelumnya, Anda memerlukan Aplikasi Meta Bussiness dengan WhatsApp API yang diaktifkan. Anda dapat membuat aplikasi pertama Anda dengan mengikuti langkah-langkah ini.
Dapatkan token API, baik sementara atau permanen.
Dapatkan Rahasia Aplikasi Anda dari dasbor di Pengaturan Aplikasi > Dasar > Rahasia Aplikasi.
Informasi lebih mendalam tentang cara mengatur dan mengambil nilai ini tersedia di dokumentasi modul
Anda sekarang dapat menginstal modul menggunakan npm:
npm instal whatsapp-api-js
Yang memungkinkan Anda menulis kode seperti ini:
import { WhatsAppAPI } dari "whatsapp-api-js";import { Dokumen, Gambar, Teks } dari "whatsapp-api-js/messages";// Pengingat untuk tidak melakukan hardcode pada token Anda dan secretconst TOKEN = "YOUR_TOKEN";const APP_SECRET = "YOUR_SECRET";/** @type WhatsAppAPI<number> */const Whatsapp = WhatsAppAPI baru({ token: TOKEN, appSecret: APP_SECRET });// Dengan asumsi postingan dipanggil berdasarkan permintaan POST ke fungsi sinkronisasi server Anda post(e) {// Terlalu panjang? Baca https://whatsappapijs.web.app/modules/middleware.htmlreturn menunggu Whatsapp.post(JSON.parse(e.data),e.data,e.headers["x-hub-signature-256"]); }Whatsapp.on.message = async ({ phoneID, from, message, name, reply }) => {console.log(`User ${name} (${from}) dikirim ke bot ${phoneID} ${JSON.stringify( message )}`);biarkan respon;if (message.type === "text") {response = menunggu balasan(new Text(`*${name}* berkata:nn ${message.text.body}`),true);}if (message.type === "image") {response = menunggu balasan(Gambar baru(message.image.id, true, `Foto bagus, ${ nama}`));}jika (message.type === "document") {response = waiting reply(new Document(message.document.id, true, undefinisi, "Dokumen kami"));}console.log(response ??"Masih banyak tipe lainnya pesan, seperti kontak, " +"lokasi, templat, interaktif, reaksi, dan " +"semua jenis media lainnya.");Whatsapp.markAsRead(phoneID, message.id);return 200;};Whatsapp.on.sent = ({ phoneID, to, message }) => {console.log(`Bot ${phoneID} dikirim ke pengguna ${to} ${message}`);};
Untuk menerima pembaruan pesan, Anda harus menyiapkan webhook di aplikasi Meta Anda. Kembali ke dasbor, klik WhatsApp > Pengaturan, tulis URL webhook Anda, dan pastikan untuk berlangganan acara pesan. Anda juga akan dimintai Token Verifikasi. Ini bisa berupa string apa pun yang Anda inginkan.
Paket ini juga menyertakan pengendali GET untuk autentikasi webhook:
import { WhatsAppAPI } dari "whatsapp-api-js";const TOKEN = "YOUR_TOKEN";const APP_SECRET = "YOUR_SECRET";const VERIFY_TOKEN = "YOUR_VERIFY_TOKEN";const Whatsapp = new WhatsAppAPI({token: TOKEN,appSecret: APP_SECRET,webhookVerifyToken : VERIFY_TOKEN});// Dengan asumsi get dipanggil pada permintaan GET ke fungsi server Anda get(e) {// Terlalu lama!? Baca https://whatsappapijs.web.app/modules/middleware.htmlreturn Whatsapp.get(e.query);}
Dan itu saja! Sekarang Anda memiliki Bot Whatsapp yang berfungsi yang terhubung ke server Anda. Untuk informasi lebih lanjut tentang proses pengaturan runtime dan kerangka kerja tertentu, lihat file Environments.md.
Ada beberapa contoh yang mencakup cara membuat setiap jenis pesan, dan cara menggunakan metode dasar perpustakaan.
Lihat di folder contoh.
Perpustakaan telah sepenuhnya diketik. Sebagian besar tipe tersedia dengan mengimpor file /types
atau /emitters
:
impor { GetParams, PostData } dari "whatsapp-api-js/types";import { OnMessage, OnSent, OnStatus } dari "whatsapp-api-js/emitters";
Untuk mengetahui apa yang berubah di antara pembaruan, lihat rilisnya di Github.
Dokumentasi rilis terbaru tersedia di whatsappapijs.web.app, dan versi sebelumnya diarsipkan di secreto31126.github.io/whatsapp-api-js.
Kunci emoji
Diego Carrillo | Umar | Rahul Lanjewar | Felix Arjuna |
Jika Anda memiliki waktu luang dan benar-benar ingin meningkatkan perpustakaan atau memperbaiki bug bodoh, silakan membaca file CONTRIBUTING.md.
Anda bisa mendapatkan daftar lengkap perubahan yang dapat menyebabkan gangguan di file BREAKING.md.
Instal rilis beta terbaru dengan npm install whatsapp-api-js@beta
. Seperti beta lainnya, kemungkinannya 110% rusak. Saya juga menggunakan tag ini untuk menguji rilis npm. Gunakan dengan risiko Anda sendiri.