SponsorBlock Event Payloads
Supported Lavalink SponsorBlock plugins and NodeLink can emit segment/chapter events. These payloads differ from full native SponsorBlock state and from the chapter-loading response. See native metadata.
SegmentSkipped
export interface SponsorBlockSegmentSkipped extends PlayerEvent {
type: "SegmentSkipped" | "SponsorBlockSegmentSkippedEvent";
/* The skipped segment*/
segment: {
/* The category name */
category: string;
/* In milliseconds */
start: number;
/* In milliseconds */
end: number;
/** NodeLink SponsorBlock segment id. */
uuid?: string;
actionType?: string;
votes?: number;
locked?: boolean;
videoDuration?: number;
description?: string;
};
/** Milliseconds skipped by NodeLink. */
skippedMs?: number;
}
SegmentsLoaded
export interface SponsorBlockSegmentsLoaded extends PlayerEvent {
type: "SegmentsLoaded" | "SponsorBlockSegmentsLoadedEvent";
/* The loaded segments */
segments: {
/* The category name */
category: string;
/* In milliseconds */
start: number;
/* In milliseconds */
end: number;
/** NodeLink SponsorBlock segment id. */
uuid?: string;
actionType?: string;
votes?: number;
locked?: boolean;
videoDuration?: number;
description?: string;
}[];
}
ChaptersLoaded
export interface SponsorBlockChaptersLoaded extends PlayerEvent {
type: "ChaptersLoaded";
/** All chapters loaded */
chapters: {
/** The name of the chapter */
name: string;
/* In milliseconds */
start: number;
/* In milliseconds */
end: number;
/* In milliseconds */
duration: number;
}[];
}
ChapterStarted
export interface SponsorBlockChapterStarted extends PlayerEvent {
type: "ChapterStarted";
/** The chapter which started */
chapter: {
/** The name of the chapter */
name: string;
/* In milliseconds */
start: number;
/* In milliseconds */
end: number;
/* In milliseconds */
duration: number;
};
}