twitcheasy-twitch-bottwitch-authtwitch-auth-tmitwitch-chat-clienttwitch-eventsubtwitch-pubsub-clienttwitch-webhooks

PubSubClient

A high level PubSub client attachable to a multiple users.

Overview

Constructor

new PubSubClient(rootClient)

Creates a new PubSub client.

Parameter Type Required Default Description
rootClient BasicPubSubClient none

A previously existing PubSubClient instance.

If not given, one will be created with the default options.

Methods

onBits(user, callback)

async

Adds a listener to bits events to the client.

Parameter Type Required Default Description
user UserIdResolvable none

The user the event will be subscribed for.

callback (message: PubSubBitsMessage) => void none

A function to be called when a bits event happens in the user's channel.

It receives a PubSubBitsMessage object.

Return type: PubSubListener<never>

onBitsBadgeUnlock(user, callback)

async

Adds a listener to bits badge unlock events to the client.

Parameter Type Required Default Description
user UserIdResolvable none

The user the event will be subscribed for.

callback (message: PubSubBitsBadgeUnlockMessage) => void none

A function to be called when a bit badge is unlocked in the user's channel.

It receives a PubSubBitsBadgeUnlockMessage object.

Return type: PubSubListener<never>

onCustomTopic(user, topic, callback, scope, channel)

async

Adds a listener for arbitrary/undocumented events to the client.

Parameter Type Required Default Description
user UserIdResolvable none

The user the event will be subscribed for.

topic string none

The topic to subscribe to.

callback (message: PubSubCustomMessage) => void none

A function to be called when a custom event is sent to the user.

It receives a PubSubCustomMessage object.

scope string none

An optional scope if the topic requires it.

channel UserIdResolvable none

An optional second userId if the topic requires it, usually a channel.

Return type: PubSubListener<never>

onModAction(user, channel, callback)

async

Adds a listener to mod action events to the client.

Parameter Type Required Default Description
user UserIdResolvable none

The user the event will be subscribed for.

channel UserIdResolvable none

The channel the event will be subscribed for.

callback (message: PubSubChatModActionMessage) => void none

A function to be called when a mod action event is sent to the user.

It receives a PubSubChatModActionMessage object.

Return type: PubSubListener<never>

onRedemption(user, callback)

async

Adds a listener to redemption events to the client.

Parameter Type Required Default Description
user UserIdResolvable none

The user the event will be subscribed for.

callback (message: PubSubRedemptionMessage) => void none

A function to be called when a channel point reward is redeemed in the user's channel.

It receives a PubSubRedemptionMessage object.

Return type: PubSubListener<never>

onSubscription(user, callback)

async

Adds a listener to subscription events to the client.

Parameter Type Required Default Description
user UserIdResolvable none

The user the event will be subscribed for.

callback (message: PubSubSubscriptionMessage) => void none

A function to be called when a subscription event happens in the user's channel.

It receives a PubSubSubscriptionMessage object.

Return type: PubSubListener<never>

onWhisper(user, callback)

async

Adds a listener to whisper events to the client.

Parameter Type Required Default Description
user UserIdResolvable none

The user the event will be subscribed for.

callback (message: PubSubWhisperMessage) => void none

A function to be called when a whisper is sent to the user.

It receives a PubSubWhisperMessage object.

Return type: PubSubListener<never>

registerUserListener(authProvider, user)

async

Attaches a new user to the listener and returns the user ID for convenience.

Parameter Type Required Default Description
authProvider AuthProvider none

The authentication provider for the user.

user UserIdResolvable none

The user that the client will be attached to.

This should only be passed manually if you fetched the token info for the authProvider before.

If not given, the user will be determined from the authProvider.

Return type: string