@freetube/youtube-chat
v1.1.2
Published
> Fetch Youtube live chat without API
Downloads
64
Readme
youtube-chat
Fetch Youtube live chat without API
This module is a fork of youtube-chat
, which was written by LinaTsukusu and fixed up by IcedCoffeee.
Since the original maintainer doesn't work on this package, we forked it and maintain it for the needs of FreeTube.
You will need to take full responsibility for your actions
Getting started
- Install
npm i youtube-chat
yarn add youtube-chat
- Import
- Javascript
const LiveChat = require('youtube-chat').LiveChat
- Typescript
import {LiveChat} from 'youtube-chat'
- Create instance with ChannelID or LiveID
// If channelId is specified, liveId in the current stream is automatically acquired. const liveChat = new LiveChat({channelId: 'UCxkOLgdNumvVIQqn5ps_bJA?'}) // Or specify LiveID in Stream manually. const liveChat = new LiveChat({liveId: 'bc5DoKBZRIo'})
- Add events
// Emit at start of observation chat. // liveId: string liveChat.on('start', (liveId) => {}) // Emit at end of observation chat. // reason: string? liveChat.on('end', (reason) => {}) // Emit at receive chat. // comment: CommentItem liveChat.on('comment', (comment) => {}) // Emit when an error occurs // err: Error liveChat.on('error', (err) => {})
Types
CommentItem
interface CommentItem {
id: string
author: {
name: string
thumbnail?: ImageItem
channelId: string
badge?: {
thumbnail: ImageItem
label: string
}
}
message: MessageItem[]
superchat?: {
amount: string
color: number
}
membership: boolean
isOwner: boolean
timestamp: number
}
MessageItem
type MessageItem = { text: string } | ImageItem
ImageItem
interface ImageItem {
url: string
alt: string
width: number
height: number
}