Advanced Features
Event Emitters
// Listen to events
whatsapp.on('messageSent', (data) => {
console.log('Message sent:', data.messageId);
});
whatsapp.on('messageFailed', (data) => {
console.error('Message failed:', data.error);
});
whatsapp.on('messageRead', (data) => {
console.log('Message read:', data.messageId);
});
whatsapp.on('storageCleaned', (data) => {
console.log('Cleaned messages:', data.deletedCount);
});
whatsapp.on('queuedMessageSent', (data) => {
console.log('Queued message sent:', data.queueId);
});
whatsapp.on('queuedMessageFailed', (data) => {
console.error('Queued message failed:', data.error);
});Statistics
// Get message statistics
const stats = whatsapp.getStatistics();
console.log(stats);
// {
// sent: 150,
// received: 320,
// failed: 5,
// delivered: 145,
// read: 130
// }Queue Management
// Get queue statistics
const queueStats = whatsapp.getQueueStats();
console.log(queueStats);
// {
// size: 10,
// maxSize: 1000,
// usagePercentage: 1
// }Middleware Support
// Add custom middleware
whatsapp.use(async (event, metadata) => {
console.log('Processing event:', event);
// Return false to stop processing
if (event.type === 'spam') {
return false;
}
// Return true to continue
return true;
});Source captured: 2026-10-11