pubnub
Version:
Publish & Subscribe Real-time Messaging with PubNub
33 lines (30 loc) • 982 B
text/typescript
import { Entity } from './entity';
/**
* First-class objects which provides access to the channel app context object-specific APIs.
*/
export class ChannelMetadata extends Entity {
/**
* Get unique channel metadata object identifier.
*
* @returns Channel metadata identifier.
*/
get id(): string {
return this._nameOrId;
}
/**
* Names for an object to be used in subscription.
*
* Provided strings will be used with multiplexed subscribe REST API calls.
*
* @param _receivePresenceEvents - Whether presence events should be observed or not.
*
* @returns List of names with multiplexed subscribe REST API calls (may include additional names to receive presence
* updates).
*
* @internal
*/
override subscriptionNames(_receivePresenceEvents?: boolean): string[] {
if (process.env.SUBSCRIBE_MODULE !== 'disabled') return [this.id];
else throw new Error('Unsubscription error: subscription module disabled');
}
}