Channel Groups API for Unreal 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 to a channel group
Requires Stream Controller add-on
This method requires the Stream Controller add-on enabled for your key in the Admin Portal. Read the support page on enabling add-on features.
This function adds a channel to a channel group.
Method(s)
Adding Channels
is accomplished by using the following method(s) in the Unreal SDK:
Maximum number of channels
You can add up to 200 channels to a channel group per API call.
PubnubSubsystem->AddChannelToGroup(
FString Channel,
FString ChannelGroup,
FOnAddChannelToGroupResponse OnAddChannelToGroupResponse
);
Parameter | Description |
---|---|
Channel *Type: FString | The channel to add to the channel group. |
ChannelGroup *Type: FString | The channel group to add the channels to. |
OnAddChannelToGroupResponse * | The delegate for the operation's result. You can also use a native callback of the type FOnAddChannelToGroupResponseNative to handle the result using a lambda. |
FOnAddChannelToGroupResponse
Field | Type | Description |
---|---|---|
Result | FPubnubOperationResult | The operation result. |
FOnAddChannelToGroupResponseNative
Field | Type | Description |
---|---|---|
Result | const FPubnubOperationResult& | The operation result. |
Sample code
Reference code
ACTION REQUIRED
before running the code.Returns
This method doesn't return a value.
Other Examples
Reference code
ACTION REQUIRED
before running the code.Add channels to a channel group with lambda
Use a lambda function to handle the response:
Actor.h
Actor.cpp
Add channels to a channel group with result struct
Use the result struct to handle the response:
Actor.h
Actor.cpp
List channels in a channel group
Requires Stream Controller add-on
This method requires the Stream Controller add-on enabled for your key in the Admin Portal. Read the support page on enabling add-on features.
This function lists all channels in the channel group.
Method(s)
PubnubSubsystem->ListChannelsFromGroup(
FString ChannelGroup,
FOnListChannelsFromGroupResponse OnListChannelsResponse
);
Parameter | Description |
---|---|
ChannelGroup *Type: FString | The channel group to list channels of. |
OnListChannelsResponse * | The operation result delegate. You can also use FOnListChannelsFromGroupResponseNative with a lambda. |
FOnListChannelsFromGroupResponse
Field | Type | Description |
---|---|---|
Result | FPubnubOperationResult | The operation result. |
Channels | TArray<FString>& | Channel names in the group. |
FOnListChannelsFromGroupResponseNative
Field | Type | Description |
---|---|---|
Result | const FPubnubOperationResult& | The operation result. |
Channels | const TArray<FString>& | Channel names in the group. |
Sample code
Reference code
ACTION REQUIRED
before running the code.Returns
This function is void, but the delegate returns the FOnListChannelsFromGroupResponse
struct.
FOnListChannelsFromGroupResponse
Field | Type | Description |
---|---|---|
Result | FPubnubOperationResult | The operation result. |
Channels | TArray<FString>& | Channel names in the group. |
Other Examples
Reference code
ACTION REQUIRED
before running the code.List channels from a channel group with lambda
Use a lambda function to handle the response:
Actor.h
Actor.cpp
Remove channels from a channel group
Requires Stream Controller add-on
This method requires the Stream Controller add-on enabled for your key in the Admin Portal. Read the support page on enabling add-on features.
This function removes channels from the channel group.
Method(s)
PubnubSubsystem->RemoveChannelFromGroup(
FString Channel,
FString ChannelGroup,
FOnRemoveChannelFromGroupResponse OnRemoveChannelFromGroupResponse
);
Parameter | Description |
---|---|
ChannelGroup *Type: FString | The channel group to remove the channel from. |
Channel *Type: FString | The channel to remove from the channel group. |
OnRemoveChannelFromGroupResponse * | The operation result delegate. You can also use FOnRemoveChannelFromGroupResponseNative with a lambda. |
FOnRemoveChannelFromGroupResponse
Field | Type | Description |
---|---|---|
Result | FPubnubOperationResult | The operation result. |
FOnRemoveChannelFromGroupResponseNative
Field | Type | Description |
---|---|---|
Result | const FPubnubOperationResult& | The operation result. |
Sample code
Reference code
ACTION REQUIRED
before running the code.Returns
This method doesn't return a value.
Other Examples
Reference code
ACTION REQUIRED
before running the code.Remove channels from a channel group with lambda
Use a lambda function to handle the response:
Actor.h
Actor.cpp
Remove channels from a channel group with result struct
Use the result struct to handle the response:
Actor.h
Actor.cpp
Delete a channel group
Requires Stream Controller add-on
This method requires the Stream Controller add-on enabled for your key in the Admin Portal. Read the support page on enabling add-on features.
This function removes a channel group.
Method(s)
PubnubSubsystem->RemoveChannelGroup(
FString ChannelGroup,
FOnRemoveChannelGroupResponse OnRemoveChannelGroupResponse
);
Parameter | Description |
---|---|
ChannelGroup *Type: FString | The channel group to remove. |
OnRemoveChannelGroupResponse * | The operation result delegate. You can also use FOnRemoveChannelGroupResponseNative with a lambda. |
FOnRemoveChannelGroupResponse
Field | Type | Description |
---|---|---|
Result | FPubnubOperationResult | The operation result. |
FOnRemoveChannelGroupResponseNative
Field | Type | Description |
---|---|---|
Result | const FPubnubOperationResult& | The operation result. |
Sample code
Reference code
ACTION REQUIRED
before running the code.Returns
This method doesn't return a value.
Other Examples
Reference code
ACTION REQUIRED
before running the code.Delete a channel group with lambda
Use a lambda function to handle the response:
Actor.h
Actor.cpp
Delete a channel group with result struct
Use the result struct to handle the response:
Actor.h
Actor.cpp
Complete example
Reference code
ACTION REQUIRED
before running the code.ASample_GroupsFull.h
ASample_GroupsFull.cpp