Feature Support for PubNub POSIX C SDK
Access Manager
PubNub provides builtin enterprise-grade security with fine-grained access control to all of your PubNub applications with Access Manager, Message Layer encryption with AES256, and Transport Layer Security with TLS and SSL.
Name | Description |
---|---|
Grant App Context Permissions | The SDK has support for App Context management. |
Root permissions for the Access Manager | When you init with secret key, you get root permissions for the Access Manager. With this feature you don't have to grant access to your servers to access channel data. The servers get all access on all channels. |
Grant Token | The SDK supports Grant Token. |
Parse Token | The SDK supports Parse Token. |
Set Token | The SDK supports Set Token. |
Revoke Token | The SDK supports Revoke Token. |
Channel Groups
Channel Groups allows PubNub developers to bundle thousands of channels into a group that can be identified by name. These Channel Groups can then be subscribed to, receiving data from the many backend-channels the channel group contains.
Name | Description |
---|---|
Add Channels | Add channel to a channel group. |
Remove Channels | Remove channel from channel group. |
Remove Channels Groups | Remove channel groups. |
List Channels In Channel Group | List all channels of a channel group. |
Presence
PubNub's Channel Presence empowers your applications to Track online and offline status of users and devices in realtime.
Name | Description |
---|---|
Here Now | Obtain information about the current state of a channel including a list of unique user IDs currently subscribed to the channel and the total occupancy count of the channel. |
Where Now | Obtain information about the current list of a channels to which a UUID is subscribed. |
Set State | Set state is used to set key/value pairs specific to a subscriber UUID. |
Get State | Get state is used to get the key/value pairs specific to a subscriber UUID. |
Heartbeat | Timeout events are triggered when the server does not hear a heartbeat from the client within a default timeout time of 280 seconds. |
Publish
Publish a message on a channel.
Name | Description |
---|---|
Store Flag | Ability to skip message from storage. |
Publish RAW JSON | Publish JSON as is. |
Publish with Metadata | Publish extra meta with the request used for Message Filtering. |
Publish using GET | Publish using HTTP GET. |
Publish using POST | Publish using HTTP POST. |
Publish Synchronously | Publish the message synchronously. |
Publish Asynchronously | Publish the message asynchronously. |
Fire | Fire method used for publishing. When a message is sent using fire, it will not be replicated to other Points of Presence, it will remain at the originating Point of Presence, and is not eligible for archiving via the Message Persistence feature. |
Replication Flag | Controls whether the message should be replicated across stores. |
Message Persistence
PubNub's Message Persistence feature enables developers to store messages as they are published, and retrieve them at a later time.
Name | Description |
---|---|
Include Timetoken | Whether event dates time tokens should be included in response or not. |
Count of Messages on Channels | The API is a history based API that simply does a mostly normal history operation but instead of returning the messages in a channel it returns the count of messages. Without actually calling history on those channels this API gives you the ability to say if there are messages in the chat channel you can go look at further. |
Reverse | Traverse the timeline in reverse starting with the oldest message first. |
Start End | Time token delimiting the start/end of time slice (exclusive) to pull messages from. |
Count | Specifies the number of historical messages to return. |
History with meta | The SDK has support to retrieve History with metadata |
Fetch messages from storage with meta | This function fetches historical messages from multiple channels with metadata. |
Fetch messages from storage with action flags | This function fetches historical messages from multiple channels with message action flags. |
Subscribe
This function causes the client to create an open TCP socket to the PubNub Real-Time Network and begin listening for messages on a specified channel.
Name | Description |
---|---|
Subscribe to channels | Ability to subscribe to channels. |
Subscribe to channel groups | Ability to subscribe to channel groups. |
Subscribe to presence channels | Ability to subscribe to presence channels. |
Subscribe to presence channel groups | Ability to subscribe to presence channel groups. |
Wildcard subscribe | Wildcard subscribes allow the client to subscribe to multiple channels using wildcard. E.g., if you subscribe to a.* you will get all messages for a.b, a.c, a.x. The wildcarded * portion refers to any portion of the channel string name after the dot (.). |
Filter Expression | Stream Filter allows a subscriber to apply a filter to only receive messages that satisfy the conditions of the filter. The message filter is set by the subscribing client(s) but it is applied on the server side thus preventing unwanted messages (those that do not meet the conditions of the filter) from reaching the subscriber. |
Signal Listener | Has support to listen to Signal messages. |
App Context API User events listener | Has support to listen to User Events from App Context API. |
App Context API Space events listener | Has support to listen to Space Events from App Context API. |
App Context API Membership events listener | Has support to listen to Membership Events from App Context API. |
Message Actions events listener | Has support to listen to Action Events from Message Reactions API. |
Signals
A lightweight alternative for small frequent indications exchanged between participants. Examples are typing indicators in chat, or geo-location information.
Name | Description |
---|---|
Send a Signal | Has support to send a Signal. |
App Context API
The App Context API enables you to create and retrieve data associated with key objects in the PubNub realtime application platform.
Name | Description |
---|---|
App Context API Get User | Supports the Get User method of the App Context API to retrieve a specific user. |
App Context API Get Users | Supports the Get Users method of the App Context API. |
App Context API Create User | Supports the Create User method of the App Context API. |
App Context API Update User | Supports the Update User method of the App Context API. |
App Context API Delete User | Supports the Delete User method of the App Context API. |
App Context API Get Space | Supports the Get Space method of the App Context API to retrieve a specific space. |
App Context API Get Spaces | Supports the Get Spaces method of the App Context API. |
App Context API Create Space | Supports the Create Space method of the App Context API. |
App Context API Update Space | Supports the Update Space method of the App Context API. |
App Context API Delete Space | Supports the Delete Space method of the App Context API. |
App Context API Get Memberships | Supports the Get Memberships method of the App Context API. |
App Context API Join Spaces | Supports the Join Spaces method of the App Context API. |
App Context API Update Memberships | Supports the Update Memberships method of the App Context API. |
App Context API Leave Spaces | Supports the Leave Spaces method of the App Context API. |
App Context API Get Members | Supports the Get Members method of the App Context API. |
App Context API Add Members | Supports the Add Members method of the App Context API. |
App Context API Update Members | Supports the Update Members method of the App Context API. |
App Context API Remove Members | Supports the Remove Members method of the App Context API. |
Message Reactions
SDK has support for Message Reactions.
Name | Description |
---|---|
Get Message Reactions | SDK has support to Get Message Reactions. |
Add Message Reactions | SDK has support to Add Message Reactions. |
Remove Message Reactions | SDK has support to Remove Message Reactions. |
Time
Return a 17 digit precision Unix epoch from the server.
Name | Description |
---|---|
Time | This function will return a 17 digit precision Unix epoch from the server. |