Channel Groups API for PubNub AngularJS SDK

Channel groups allow PubNub developers to bundle thousands of channels into a group that can be identified by a name. These channel groups can then be subscribed to, receiving data from the many back-end channels the channel group contains.

Channel group operations

You can't publish to a channel group. You can only subscribe to it. To publish within the channel group, you need to publish to each channel individually.

Add Channels

Requires Stream Controller add-on

This method requires that the Stream Controller add-on is enabled for your key in the Admin Portal. Read the support page on enabling add-on features on your keys.

This function adds a channel to a channel group.

Method(s)

Adding Channels is accomplished by using the following method(s) in the AngularJS SDK:

Note

200 channels can be added to the channel group per API call.

Pubnub.channelGroups.addChannels({Array channels, String channelGroup},Function callback)
ParameterTypeRequiredDescription
Operation ArgumentsHashYesA hash of arguments.
channelsArrayYesThe channel to add to the channel group.
channelGroupStringYesThe channelGroup to add the channels to.
callbackFunctionOptionalExecutes on a successful/unsuccessful addChannels.

Basic Usage

Pubnub.channelGroups.addChannels(
{
channels: ['ch1', 'ch2'],
channelGroup: "myChannelGroup"
},
function(status) {
if (status.error) {
console.log("operation failed w/ status: ", status);
} else {
console.log("operation done!");
}
}
);

Response

{
error: false,
operation: "PNAddChannelsToGroupOperation",
statusCode: 200
}

List Channels

Requires Stream Controller add-on

This method requires that the Stream Controller add-on is enabled for your key in the Admin Portal. Read the support page on enabling add-on features on your keys.

This function lists all the channels of the channel group.

Method(s)

Listing Channels is accomplished by using the following method(s) in the AngularJS SDK:

Pubnub.channelGroups.listChannels({String channelGroup},Function callback)
ParameterTypeRequiredDescription
Operation ArgumentsHashYesA hash of arguments.
channelGroupStringYesChannel Group to list the channel(s) of.
callbackFunctionOptionalExecutes on a successful/unsuccessful listChannels.

Basic Usage

// assuming an intialized Pubnub instance already exists
Pubnub.channelGroups.listChannels(
{
channelGroup: "myChannelGroup"
},
function(status, response) {
if (status.error) {
console.log("operation failed w/ error:", status);
return;
}

console.log("listing push channel for device");
response.channels.forEach( function(channel) {
console.log(channel);
});
show all 17 lines

Response

// Example of Status
{
error: false,
operation: "PNChannelsForGroupOperation",
statusCode: 200
}

// Example of Response
{
channels: ["ch1", "ch2"]
}

Remove Channels

Requires Stream Controller add-on

This method requires that the Stream Controller add-on is enabled for your key in the Admin Portal. Read the support page on enabling add-on features on your keys.

This function removes the channels from the channel group.

Method(s)

Removing Channels is accomplished by using the following method(s) in the AngularJS SDK:

Pubnub.channelGroups.removeChannels({Array channels, String channelGroup},Function callback)
ParameterTypeRequiredDescription
Operation ArgumentsHashYesA hash of arguments.
channelsArrayYesThe channel to remove from the channel group.
channelGroupStringYesThe channelGroup to remove the channels from.
callbackFunctionOptionalExecutes on a successful/unsuccessful removeChannels.

Basic Usage

// assuming an initialized Pubnub instance already exists
Pubnub.channelGroups.removeChannels(
{
channels: ["son"],
channelGroup: "family"
},
function (status) {
if (status.error) {
console.log("operation failed w/ error:", status);
} else {
console.log("operation done!");
}
}
);

Response

{
error: false,
operation: "PNRemoveChannelsFromGroupOperation",
statusCode: 200
}

Delete Channel Group

Requires Stream Controller add-on

This method requires that the Stream Controller add-on is enabled for your key in the Admin Portal. Read the support page on enabling add-on features on your keys.

This function removes the channel group.

Method(s)

Deleting Channel Group is accomplished by using the following method(s) in the AngularJS SDK:

Pubnub.channelGroups.deleteGroup({String channelGroup},Function callback)
ParameterTypeRequiredDescription
Operation ArgumentsHashYesA hash of arguments.
channelGroupStringYesThe channelGroup to remove.
callbackFunctionOptionalExecutes on a successful/unsuccessful deleteGroup.

Basic Usage

Pubnub.channelGroups.deleteGroup(
{
channelGroup: "family"
},
function (status) {
if (status.error) {
console.log("operation failed w/ error:", status);
} else {
console.log("operation done!");
}
}
);

Response

{
error: false,
operation: "PNRemoveGroupOperation",
statusCode: 200
}
Last updated on