Send single, bulk, and individual bulk SMS and MMS with node-libcurl using the EZTexting REST API.
npm install eztexting-node.env file in your root folder and add 3 variables USR, PWD, and CRT_PATH:
USR=eztexting_user
PWD=eztexting_pa$$word
CRT_PATH=path/to/certificate/cert.pem
`
> Dotenv : The worldwide standard for securing environment variables
Install Dev Dependencies
$3
npm i @types/node eslint ts-node typescript --save-dev
$3
I personally like to code TypeScript with nodemon
> nodemon is a tool that helps develop Node.js based applications by automatically restarting the node application when file changes in the directory are detected.
Install: npm i nodemon --save-dev
Script: tsc --project tsconfig.json
Send one message to a single phone number
`javascript
import { Messages } from 'eztexting-node'
import { Message, ResponseFormat } from 'eztexting-node'
const format: ResponseFormat = 'json';
const singleMessage: Message = {
PhoneNumbers: '2057404127',
Message: 'Single message',
StampToSend: '2022-10-10 16:15'
};
new Messages(format).sendMessage(singleMessage, callbackFn)
`
Send the same message to multiple phone numbers
`javascript
import { Messages } from 'eztexting-node'
import { Message, ResponseFormat } from 'eztexting-node'
const format: ResponseFormat = 'json';
const bulkMessages: Message = {
PhoneNumbers: ['2057404127', '205-740-4177'],
Subject: "1",
Message: "Bulk message"
};
new Messages(format).sendMessage(bulkMessages, 'callback')
`
Send individual messages to specific phone numbers in bulk
`javascript
import { Messages } from 'eztexting-node'
import { Message, ResponseFormat } from 'eztexting-node'
const format: ResponseFormat = 'json';
const Messages = new Messages(format)
const individualMessages: Message[] = [
{PhoneNumbers: "2057404127", Subject: "1",Message: "Individual message 1"},
{PhoneNumbers: "205-740-4177", Subject: "2",Message: "Individual message 2"},
{PhoneNumbers: "(205) 740-4181", Subject: "3",Message: "Individual message 3"}
];
individualMessages.forEach(async (message: Message, i: number) => {
messages.sendMessage(individualMessages, callback?)
});
`
Send a generated QR Code as picture to specific phone numbers
$3
`javascript
import { QRCodeGenerator, OutputFormat, StyleOptions } from ".";
const qr = new QRCodeGenerator();
qr.generate("png", "Willie")
.then((buffer: Buffer) => {var base64 = buffer.toString("base64")})
.catch((err: Error) => console.error(err));
`
$3
`javascript
const style: StyleOptions = {"width":300,"height":300,"data":"https://qr-code-styling.com","dotsOptions":{"type":"extra-rounded","color":"#6a1a4c"}}
const qr = new QRCodeGenerator();
qr.generate("svg", '', style);
// Optional parameter ([filename, dir])
// If no filename is passed, the filename is the current unix timestamp
qr.save("StyleWebsite");
`
$3
`javascript
import { ResponseFormat } from 'eztexting-node'
const format: ResponseFormat = 'json';
const newMedia = new MediaFilesCreate(format);
const attendee: Attendee = {
PhoneNumber: '2057404127',
Name: 'Winnie Puh',
Barcode: 123456789
};
const mediaFileOptions = {filetype: 'png', url: 'https://url-of-png-file.png'}
newMedia.createMediaFile(attendee, mediaFileOptions, createMessageCallBackFn)
``