This library is a Node.js wrapper for the Whatsapp Cloud API. It simplifies the process of interacting with the API by handling request and response formatting, authentication, and providing easy-to-use methods for common API operations.
(Give star if you like it :)
- Easy to use and configure
- Supports sending and replying to text, image, audio, and document messages
- Supports setting up webhook servers for receiving events
- Built-in support for ngrok
- Automatically handles authentication and access tokens
- Automatically identify the webhook type data like Notification or Message
You can install the package using npm or Yarn:
npm install wacloudapi
or
yarn add wacloudapi
First, import the required classes from the package:
const { Message, WAParser, WebhookServer } = require('wacloudapi);
Create a new Message
instance with your API credentials:
const message = new Message(apiVersion, phoneNumberId, accessToken);
You can now use the various methods provided by the Message
class to send messages:
message.sendTextMessage(recipientPhoneNumber, messageContent);
Create a new WebhookServer
instance and specify the desired port and whether to use ngrok:
const webhookServer = new WebhookServer(port, useNgrok, ngrokAuthToken);
Add a listener for incoming messages:
webhookServer.on('message', (message) => {
console.log('Received message:', message);
});
Add a route for webhook verification:
webhookServer.Verification(callbackUrl, verificationToken);
Start the webhook server:
webhookServer.start();
The WAParser
class is used to parse incoming webhook data from the WhatsApp Business API.
Returns the parsed message object depending on the type of message contained in the received webhook data.
const parse = new WAParser(WebhookData);
// parse message
const parsedMessage = parse.parseMessage();
The NotificationParser
class is used to parse incoming webhook data from the WhatsApp Business API.
Returns the parsed message object depending on the type of message contained in the received webhook data.
const parse = new NotificationParser(WebhookData);
// parse message
const parsedMessage = parse.parseNotification();
For detailed information on available methods and how to use them, please refer to the documentation.
Contributions are welcome! If you'd like to contribute, please follow these steps:
- Fork the repository
- Create a new branch with your changes
- Commit your changes and create a pull request
We appreciate any help and feedback!
Email : [email protected]
This project is licensed under the MIT License. See the LICENSE file for more information.