Skip to content

Asynchronous Node.js wrapper for the Mediaburst Clockwork SMS API

License

Notifications You must be signed in to change notification settings

mediaburst/node-clockwork

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-clockwork

Install

npm install clockwork

Simple Usage

var clockwork = require('clockwork')({key:'your clockwork key here'});


// Send a message
clockwork.sendSms({ To: '447123456789', Content: 'Test!'}, function(error, resp) {
    if (error) {
    	console.log('Something went wrong', error);
	} else {
		console.log('Message sent to',resp.responses[0].to);
		console.log('MessageID was',resp.responses[0].id);
	}
});

Getting an api key

First, head over to clockwork and signup if you're not already signed up. Once signed up, log in to your clockwork account and add a new API Key (from the top menu choose Sending -> API Keys).

Sending A Message

You can send a single message as shown above. If you have multiple messages to send, it's much more efficient to send them in bulk by passing an array of messages to sendSms:

clockwork.sendSms([{ To: '447123456789', Content: 'Test!'},
				   { To: '447123456781', Content: 'Another one'}], function(error, resp) {
    if (error) {
    	console.log('Something went wrong', error);
	} else {
		console.log('Messages sent');
	}
});

The second argument to sendSms is callback that you provide. The callback will be called with 2 json objects, error and response. If a general error occurs, then error will look like this:

{
	success: false,
	errNo: X,
	errDesc: 'Error description here'
}

Otherwise, error will be null, and the response will contain an array of sms responses, one for each message sent. In the example above where 2 messages were sent, assuming nothing went wrong, the response will look like this:

{
	responses: [
		{to: '447123456789', success: true, id: 'MessageId', errNo: '', ErrDesc: ''},
		{to: '447123456781', success: true, id: 'MessageId', errNo: '', ErrDesc: ''}
	]	
}

Currently, the nodejs wrapper only supports setting the to, from and content of sms messages. If you need to set other options, raise an issue in github and we'll try to get it done for you. For more information about sending messages and the responses, see the clockwork sms api documentation

Getting Your Balance

clockwork.getBalance(function(error, credit) {
    if (error) {
    	console.log('Something went wrong', error);
	} else {
		console.log('Your balance',credit);
	}
});

Again, if a general error occurs then error will be populated accordingly. Otherwise, the response contains your credit, in a format similar to this:

{
	accountType: 'PAYG',
	currency: {code: 'USD', symbol: '$'},
	balance: '100.0'
}

About

Asynchronous Node.js wrapper for the Mediaburst Clockwork SMS API

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%