Ir al contenido

Twitch.ChatMessage

Un mensaje del chat.

  • Plataforma: twitch
  • Forma: chat
  • Evento de origen: Twitch.ChatMessage
Widget.on("Twitch.ChatMessage", (event) => {
// event.user, event.platform…
});
  • user (string): Nombre visible; «Anónimo» en un regalo anónimo.
  • userId (string): Id del usuario en su plataforma.
  • userLogin (string): Login, en minúsculas.
  • color (string): Color del nombre (#RRGGBB) o vacío.
  • role (1 | 2 | 3 | 4): 1 espectador, 2 VIP, 3 moderador, 4 el canal.
  • badges (ChatBadge[]): Insignias, con su imagen.
  • message (string): El mensaje, como texto.
  • parts (MessagePart[]): El mensaje en partes (texto, emotes y cheers), para Widget.dom.renderMessage.
  • messageId (string): Id del mensaje; es el que llega en messageDeleted.
  • firstMessage (boolean): Primer mensaje en el canal.
  • highlighted (boolean): Resaltado con puntos del canal.
  • reply (ChatReply | null): A quién responde, o null.

Además trae platform (la plataforma de origen) y raw (el payload original).

El payload de ejemplo que llega al simulador del Estudio:

{
"user": {
"role": 3,
"badges": [
{
"name": "lead_moderator",
"version": "1",
"imageUrl": "https://static-cdn.jtvnw.net/badges/v1/0822047b-65e0-46f2-94a9-d1091d685d33/3",
"info": ""
}
],
"color": "#FFFFFF",
"subscribed": false,
"monthsSubscribed": 0,
"id": "100000002",
"login": "lunagamer",
"name": "LunaGamer",
"type": "twitch"
},
"messageId": "00000000-0000-4000-8000-000000000001",
"meta": {
"internal": false,
"firstMessage": false,
"firstMessageTimestamp": "2026-08-07T18:01:06.5712172-06:00",
"returningChatter": false,
"isHighlighted": false,
"isMe": false,
"isCustomReward": false,
"isInSharedChat": false,
"isSharedChatHost": false,
"isFromSharedChatGuest": false,
"createdAt": "2026-09-26T05:32:11.8891229Z",
"isTest": false
},
"anonymous": false,
"text": "¡Hola desde el simulador!",
"emotes": [],
"parts": [
{
"type": "text",
"text": "¡Hola desde el simulador!"
}
],
"isReply": false,
"reply": null,
"sharedChatSource": null,
"broadcaster": {
"id": "100000000",
"login": "canaldeprueba",
"name": "CanalDePrueba",
"type": "twitch"
},
"isInSharedChat": false,
"isSharedChatHost": false,
"isFromSharedChatGuest": false,
"createdAt": "2026-09-26T05:32:11.8891229Z",
"isTest": false
}