InGameAlert: {
    category?: string | null;
    durationMs?: number | null;
    followers?: number | null;
    platform: InGamePlatform;
    streamId?: string | null;
    streamerName: string;
    thumbnail: string | null;
    title: string | null;
    totalViews?: number | null;
    type: InGameAlertType;
    url: string | null;
    viewers?: number | null;
    vodUrl?: string | null;
}

One alert as it is sent to a game server (event.payload). Codes and raw values, never prose: the plugin words and formats everything (TRACKER G5). Untrusted text (titles, names) is inserted by the plugin as UNPARSED text, so a title cannot inject markup or commands (R8).

Never carries a ping role, the random message or a Discord member - those are Discord's.

Type declaration

  • Optionalcategory?: string | null
  • OptionaldurationMs?: number | null

    Offline: how long the stream ran, in ms.

  • Optionalfollowers?: number | null
  • platform: InGamePlatform
  • OptionalstreamId?: string | null

    Live/offline pairing for replay: the platform's id for this stream when there is one.

  • streamerName: string

    The creator's name as the platform shows it (not Discord-escaped).

  • thumbnail: string | null

    May be empty: Kick often has no thumbnail at go-live.

  • title: string | null

    Stream title, video title, or the post's text.

  • OptionaltotalViews?: number | null
  • type: InGameAlertType
  • url: string | null

    Where a click should go: the stream, the video, the post.

  • Optionalviewers?: number | null
  • OptionalvodUrl?: string | null

    Offline: the stream's VOD when the platform gives one.