@nabcellent/wavesms
TypeScript icon, indicating that this package has built-in type declarations

2.0.7 • Public • Published

WaveSMS Api

build status code coverage

npm version bundle size npm downloads apache license

This is a Typescript package that interfaces with the WaveSMS Api. The API enables you to initiate mobile Sms notifications.

Documentation

Installation

You can install the package via npm or yarn:

yarn add @nabcellent/wavesms

Getting Started

Initialize the WaveSMS class with your config.

import { WaveSMS, WaveSMSConfig } from '@nabcellent/wavesms';

let config: WaveSMSConfig = {
    apiKey   : process.env.WAVE_SMS_API_KEY,
    partnerId: process.env.WAVE_SMS_PARTNER_ID,
    senderId : process.env.WAVE_SMS_SENDER_ID
};

const wave = new WaveSMS(config);
  • Sms

Enables you to send text messages

1. Send Sms

const response = await wave.sms.text('#WaveSMSTest').to(254123456789).send()
    //  OR
const response = await wave.sms.text('#WaveSMSTest').to([254123456789]).send()

//  Expected responses
[
    {
        code: 200,
        description: "Success",
        mobile: "254123456789",
        message_id: 75085465,
        client_sms_id: "1234",
        network_id: "2"
    },
    {
        code: 1004,
        description: "Low credit units...",
        mobile: "254123456789",
    }
]

2. Schedule Sms

Provide a Moment or Date instance to the send method.

const response = await wave.sms.text('#WaveSMSTest').to(254123456789).send(new Date('2023-12-20'))

PS: The date must be after current time.🌚

3. Get Delivery Report

//  Provide Message ID
const response = await wave.sms.getDeliveryReport("123456789")

//  Expected response
{
    code: 200,
    message_id: "123456789",
    description: "Success",
    delivery_status: 32,
    delivery_description: "DeliveredToTerminal",
    delivery_tat: "00:00:06",
    delivery_networkid: 1,
    delivery_time: "2023-02-18 21:16:22"
}

3. Calculate SMS Cost

Provide the text message.

const response = wave.sms.cost('Hello World.')

//  Expected response(number)
0.2

  • Account

Enables you to check the balance of your account

  1. Account balance
const response = await wave.balance.fetch()

//  Expected response(number)
7.33

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email nabcellent.dev@gmail.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

Package Sidebar

Install

npm i @nabcellent/wavesms

Weekly Downloads

1

Version

2.0.7

License

MIT

Unpacked Size

26.2 kB

Total Files

27

Last publish

Collaborators

  • nabcellent