Skip to content

Realtime Chat Playback

Isaac edited this page Nov 23, 2022 · 1 revision

Realtime chat playback was released in v1.1.0. Realtime chat playback allows for viewing the chat alongside a VOD similar to Twitch. This method is now the default. If you prefer to use the rendered video chat playback, a setting to enable that can be found on the "profile" page.

image

API Endpoints

  • Get Badges /api/v1/vod/vod_id/chat/badges
    • Returns badges for the specified VOD's chat. This endpoint will attempt to locate embedded badges first. If there are no embedded badges, it will fetch both global and channel badges from Twitch.
  • Get Badges /api/v1/vod/vod_id/chat/emotes\
    • Returns emotes for the specified VOD's chat. This endpoint will first look for embedded emotes in the chat.json file. If none exist it will fetch both global and channel emotes from Twitch, BTTV, FFZ, and 7TV.
  • Get chat comments /api/v1/vod/vod_id/chat?start=10&end=20
    • Returns chat comments between a specified start and end time.
  • Get N number of comments from time /api/v1/vod/void_id/chat/seek?start=520&count=40
    • Returns N number of comments before the specified start time. This is used when seeking in a VOD.

How It Works

When starting a playback for a VOD, the frontend will request emotes and badges for the chat. The API will determine if those are embedded or if they need to be fetched. When playback starts, the /chat endpoint is used to fetch chat comments in 10 second intervals. When a player seek is detected, the seek route is used to populate comments were sent before the seek destination time.

Clone this wiki locally