Skip to content

PlatformPlugin

PlatformPlugin = object

Defined in: packages/core/src/plugin.ts:142

A platform-specific plugin that implements data retrieval for a single streaming platform.

Each plugin instance is bound to a single platform

All returned data conforms to the unified Content/Channel types

readonly capabilities: PluginCapabilities

Defined in: packages/core/src/plugin.ts:150

Plugin capability metadata.


readonly name: string

Defined in: packages/core/src/plugin.ts:144

Platform identifier (e.g., “youtube”, “twitch”, “twitcasting”).


readonly rest: RestManager

Defined in: packages/core/src/plugin.ts:147

The underlying RestManager for this plugin.

optional batchGetBroadcasts(channelIds): Promise<BatchResult<Broadcast[]>>

Defined in: packages/core/src/plugin.ts:183

Batch-retrieve broadcasts by channel IDs (platform-specific).

string[]

Promise<BatchResult<Broadcast[]>>


optional batchGetChannels(ids): Promise<BatchResult<Channel>>

Defined in: packages/core/src/plugin.ts:195

Batch-retrieve channels by IDs (platform-specific).

string[]

Promise<BatchResult<Channel>>


optional batchGetClips(ids): Promise<BatchResult<Clip>>

Defined in: packages/core/src/plugin.ts:192

Batch-retrieve clips by IDs (platform-specific).

string[]

Promise<BatchResult<Clip>>


optional batchGetContents(ids): Promise<BatchResult<Content>>

Defined in: packages/core/src/plugin.ts:180

Batch-retrieve content by IDs (platform-specific).

string[]

Promise<BatchResult<Content>>


getChannel(id): Promise<Channel>

Defined in: packages/core/src/plugin.ts:163

Retrieve channel information by ID.

string

Promise<Channel>


getContent(id): Promise<Content>

Defined in: packages/core/src/plugin.ts:160

Retrieve content (broadcast or archive) by ID.

string

Promise<Content>


listArchives(channelId, cursor?, pageSize?, options?): Promise<Page<Archive>>

Defined in: packages/core/src/plugin.ts:169

List archives for a channel with cursor-based pagination.

string

string

number

ArchiveListOptions

Promise<Page<Archive>>


listBroadcasts(channelId): Promise<Broadcast[]>

Defined in: packages/core/src/plugin.ts:166

List currently active broadcasts for a channel.

string

Promise<Broadcast[]>


optional listClips(channelId, options?): Promise<Page<Clip>>

Defined in: packages/core/src/plugin.ts:189

List clips for a channel (platform-specific).

string

ClipOptions

Promise<Page<Clip>>


match(url): ResolvedUrl | null

Defined in: packages/core/src/plugin.ts:157

Test whether a URL belongs to this platform. Returns a ResolvedUrl if matched, or null if not. No network calls.

string

ResolvedUrl | null


optional resolveArchive(live): Promise<Archive | null>

Defined in: packages/core/src/plugin.ts:177

Resolve the archive for a broadcast (platform-specific).

Broadcast

Promise<Archive | null>


optional search(options): Promise<Page<Content>>

Defined in: packages/core/src/plugin.ts:186

Search for content (platform-specific).

SearchOptions

Promise<Page<Content>>