scaledrone-node-push
v2.2.0
Published
Official Scaledrone Node.js pushing library
Downloads
10
Readme
Scaledrone Node.js Push API
Official Scaledrone Node.js pushing library
Allows for usage of all Scaledrone's REST API methods.
For the Node.js WebSocket API Client check out this link.
Installation
npm install scaledrone-node-push --save
Usage
Create a new instance of Scaledrone passing it the channelId
and secretKey
that you can find from the channel's page
const Scaledrone = require('scaledrone-node-push');
const sd = new Scaledrone({
channelId: 'CHANNEL_ID',
secretKey: 'SECRET_KEY'
});
Publishing a message
const message = {foo: 'bar'};
const room = 'notifications';
sd.publish(room, message, function(error) {
// check for errors
});
Publishing the same message to multiple rooms
const message = {foo: 'bar'}
const rooms = ['notifications', 'lounge'];
sd.publish(rooms, message, function(error) {
// check for errors
});
Get channel stats
sd.channelStats(function(error, reply) {
// check for errors
console.log(reply); // { users_count: 2 }
});
Getting the list of users from all rooms
sd.members(function(error, reply) {
// check for errors
console.log(reply); // ['bcI:GPhz6A2T', 'b58:fnaJaEfh']
});
Getting the list of rooms that have users in them
sd.rooms(function(error, reply) {
// check for errors
console.log(reply); // ["room1", "room2"]
});
Getting the list of users in a room
sd.roomMembers('my-room', function(error, reply) {
// check for errors
console.log(reply); // ['bcI:GPhz6A2T', 'b58:fnaJaEfh']
});
Getting the list of rooms and their members
sd.allRoomMembers(function(error, reply) {
// check for errors
console.log(reply); // {"room1": ["user1", "user2"], "room2": ["user1"]}
});