2024-04-18 12:40:45 +02:00
|
|
|
const { Client } = require('whatsapp-web.js');
|
|
|
|
const qrcode = require('qrcode-terminal');
|
|
|
|
const express = require('express');
|
|
|
|
const app = express();
|
|
|
|
app.use(express.json());
|
|
|
|
|
|
|
|
const wwebVersion = '2.2407.3';
|
|
|
|
|
|
|
|
// Create a new client instance
|
|
|
|
const client = new Client(
|
|
|
|
{webVersionCache: {
|
|
|
|
type: 'remote',
|
|
|
|
remotePath: `https://raw.githubusercontent.com/wppconnect-team/wa-version/main/html/${wwebVersion}.html`
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
client.on('ready', () => {
|
|
|
|
console.log('Client is ready!');
|
|
|
|
});
|
|
|
|
|
|
|
|
client.on('qr', qr => {
|
|
|
|
qrcode.generate(qr, {small: true});
|
|
|
|
});
|
|
|
|
|
|
|
|
// Listening to all incoming messages
|
|
|
|
client.on('message_create', message => {
|
|
|
|
console.log(message.body);
|
|
|
|
});
|
|
|
|
|
|
|
|
function sendMessage(number, message) {
|
|
|
|
client.sendMessage(number, message);
|
|
|
|
}
|
|
|
|
|
|
|
|
app.post('/send-message', (req, res) => {
|
2024-04-18 12:47:22 +02:00
|
|
|
/*
|
|
|
|
This function only accepts numbers formatted as: [CountryCode][Number]@c.us // Example: 39333555887@c.us
|
|
|
|
*/
|
2024-04-18 12:40:45 +02:00
|
|
|
const { number, message } = req.body;
|
|
|
|
if (!number || !message) {
|
|
|
|
return res.status(400).send('Number and message are required');
|
|
|
|
}
|
|
|
|
|
|
|
|
sendMessage(number, message);
|
|
|
|
res.send('Message sent');
|
|
|
|
});
|
|
|
|
|
|
|
|
const port = process.env.PORT || 3000;
|
|
|
|
app.listen(port, () => console.log(`Server running on port ${port}`));
|
|
|
|
|
|
|
|
client.initialize();
|