Sign inGet started

Pesan dokumen WhatsApp

Pesan dokumen membawa URL publik yang diambil WhatsApp pada saat pengiriman, dengan caption opsional dan nama file opsional. Ini adalah jenis media terbesar, dan satu-satunya yang membawa caption sekaligus nama file.

Mengirim dokumen

Atur document.url:
const msg = await bird.whatsapp.send({
  to: "+16505551234",
  from: "+13124495648",
  document: { url: "https://cdn.example.com/invoices/a1b2c3.pdf" },
});
console.log(msg.id, msg.status);
Bentuk lengkapnya menambahkan caption dan filename:
Contoh kode
{
  "to": "+16505551234",
  "from": "+13124495648",
  "document": {
    "url": "https://cdn.example.com/invoices/a1b2c3.pdf",
    "caption": "Your invoice for order A1B2C3",
    "filename": "invoice-a1b2c3.pdf"
  }
}
from wajib ada di setiap pesan layanan: nomor yang dimiliki workspace Anda, bukan nomor yang dikelola Bird.

Batas

FieldBatasDiterapkan oleh
Ukuran file100 MBWhatsApp saja, saat fetch (async)
Tipe filePDF, Word, Excel, PowerPoint, atau plain text ditampilkan dengan baik di klien WhatsApp; tipe lain dikirim tetapi tidak didukungWhatsApp saja, saat fetch (async)
captionhingga 1024 karakterBird, saat accept (422)
filename1 hingga 100 karakterBird, saat accept (422); batas ini ditentukan oleh Bird sendiri, karena WhatsApp tidak mendokumentasikan batas panjang nama file
urlabsolut, https, memiliki host, tanpa spasi mentahBird, saat accept (422)
Bird memeriksa bentuk URL serta panjang caption dan nama file sebelum apa pun dimasukkan ke antrean. Ukuran atau tipe file sebenarnya tidak diperiksa; hanya fetch WhatsApp sendiri pada saat pengiriman yang dapat memeriksanya. Lihat mengirim media melalui URL dan ketika media gagal di hub.

Membaca dokumen masuk

Dokumen masuk membawa objek document yang sama, ditambah id dan mime_type yang dipelajari Bird dengan mengambil file tersebut. Keduanya tidak ada pada pembacaan ulang pesan keluar, karena Bird tidak pernah mengambil file yang dikirimnya, dan filename pada dokumen masuk adalah apa pun yang diberikan perangkat kontak. Lihat Menerima dokumen WhatsApp untuk pembacaan masuk secara lengkap, payload whatsapp.received, dan hal-hal yang perlu diperhatikan.

Batas dan mode kegagalan

  • Jendela layanan pelanggan harus terbuka. Dokumen adalah pesan layanan, hanya dapat dikirim di dalam jendela yang terbuka; lihat jendela layanan pelanggan di hub.
  • Bird menolak http; WhatsApp sendiri yang akan mengambilnya. Lihat mengirim media melalui URL di hub untuk pemeriksaan bentuk lengkapnya.
  • Fetch yang ditolak tetap dikenakan biaya, dan ini adalah jenis media yang paling sering mengalaminya. Dengan batas 100 MB, dokumen adalah hal terbesar yang dapat Anda kirim, dan Bird tidak memeriksa byte sebenarnya saat accept. Lihat ketika media gagal di hub untuk media_rejected dan fakta biaya-saat-gagal. Teks penolakan dokumen dari WhatsApp belum diukur secara independen seperti halnya gambar, jadi perlakukan pemetaan ini sebagai inferensi berdasarkan simetri, bukan konfirmasi per penyebab.
  • Mengabaikan filename bukan berarti penerima tidak melihat nama. WhatsApp menurunkan nama dari path URL, yang bisa berupa hash tidak jelas atau slug alih-alih sesuatu yang mudah dibaca. Atur filename secara eksplisit untuk mengontrol apa yang benar-benar ditampilkan.
  • Batas 100 karakter filename adalah pilihan Bird sendiri, bukan batas WhatsApp. WhatsApp tidak mendokumentasikan batas panjang nama file sama sekali.
  • WhatsApp menyimpan cache URL yang diambil selama sekitar 10 menit. Mengirim ulang URL yang sama dalam jendela tersebut akan menyajikan hasil fetch pertama; ubah URL untuk memaksa pengambilan baru.

Langkah selanjutnya

  • Pesan layanan WhatsApp: jendela layanan pelanggan dan model yang digunakan bersama oleh setiap pesan layanan
  • Gambar: untuk foto atau grafik alih-alih file
  • Template: untuk pesan yang dapat Anda kirim setelah jendela ditutup
  • Mengirim pesan WhatsApp: envelope permintaan, model 202, dan percobaan ulang yang aman