Points
- Alert key:
twitch-points - Source: Twitch
- Event list label: Redeemed
- Carries alert image: yes (
extraSettings.contentImage)
Default message template
{{username}} redeemed {{command}} for {{amount}} points
Template variables
Use any of these in alert text, TTS, or chat templates. The same names appear under data.extraSettings.* when you subscribe via Overlay.on('alert').
| Template variable | Overlay payload field | Description |
|---|---|---|
{{username}} | data.extraSettings.username | The username of the sender |
{{displayname}} | data.extraSettings.displayname | The display name of the sender |
{{userId}} | data.extraSettings.userId | The user ID of the sender |
{{avatar}} | data.extraSettings.avatar | The url of the avatar of the sender for a message |
{{channelDescription}} | data.extraSettings.channelDescription | The description of the target channel |
{{channelViews}} | data.extraSettings.channelViews | Amount of views the target channel has |
{{originType}} | data.extraSettings.originType | No description available yet. |
{{queueType}} | data.extraSettings.queueType | No description available yet. |
{{command}} | data.extraSettings.command | The command that was triggered for the message |
{{prompt}} | data.extraSettings.prompt | The users message that was prompted |
{{message}} | data.extraSettings.message | The message text sent by the user |
{{messageWithoutEmotes}} | data.extraSettings.messageWithoutEmotes | The message that the sender sent without the command/alias and without emots inside of the message. Mainly used for TTS. |
{{rawMessageWithoutEmotes}} | data.extraSettings.rawMessageWithoutEmotes | The raw message that the sender sent without emotes inside of the message |
{{points}} | data.extraSettings.points | (Twitch) How many points were used for a Twitch Point redemption |
{{title}} | data.extraSettings.title | The title of the Twitch Redemption that was redeemed |
{{timestamp}} | data.extraSettings.timestamp | The time the command was triggered |
Example payloads
Each scenario below mirrors what Lumia emits in Overlay.on('alert', (data) => …).
Redeemed for 100 points
{
"alert": "twitch-points",
"dynamic": {
"value": "100",
"name": "lumiray",
"currency": "points"
},
"extraSettings": {
"command": "lumiray",
"message": "ray ray",
"username": "lumiastream",
"displayname": "LumiaStream",
"amount": "100",
"currency": "points",
"currencySymbol": "★",
"contentImage": "https://static-cdn.jtvnw.net/custom-reward-images/default-4.png",
"userId": "",
"avatar": "",
"channelDescription": "",
"channelViews": "",
"originType": "",
"queueType": "",
"prompt": "",
"messageWithoutEmotes": "",
"rawMessageWithoutEmotes": "",
"points": "",
"title": "",
"timestamp": ""
}
}
Redeemed for 2000 points
{
"alert": "twitch-points",
"dynamic": {
"value": "2000",
"name": "lumiray",
"currency": "points"
},
"extraSettings": {
"command": "lumiray",
"message": "ray ray",
"username": "lumiastream",
"avatar": "https://static-cdn.jtvnw.net/jtv_user_pictures/2b1fa336-f9b2-42cf-bd2c-98675da74982-profile_image-70x70.png",
"displayname": "LumiaStream",
"amount": "2000",
"currency": "points",
"currencySymbol": "★",
"contentImage": "https://static-cdn.jtvnw.net/custom-reward-images/default-4.png",
"userId": "",
"channelDescription": "",
"channelViews": "",
"originType": "",
"queueType": "",
"prompt": "",
"messageWithoutEmotes": "",
"rawMessageWithoutEmotes": "",
"points": "",
"title": "",
"timestamp": ""
}
}
Redeemed for 10000 points
{
"alert": "twitch-points",
"dynamic": {
"value": "10000",
"name": "lumiray",
"currency": "points"
},
"extraSettings": {
"command": "lumiray",
"message": "ray ray",
"username": "lumiastream",
"avatar": "https://static-cdn.jtvnw.net/jtv_user_pictures/2b1fa336-f9b2-42cf-bd2c-98675da74982-profile_image-70x70.png",
"displayname": "LumiaStream",
"amount": "10000",
"currency": "points",
"currencySymbol": "★",
"contentImage": "https://static-cdn.jtvnw.net/custom-reward-images/default-4.png",
"userId": "",
"channelDescription": "",
"channelViews": "",
"originType": "",
"queueType": "",
"prompt": "",
"messageWithoutEmotes": "",
"rawMessageWithoutEmotes": "",
"points": "",
"title": "",
"timestamp": ""
}
}
Variation conditions
Dimensions you can branch on when configuring alert variations:
RANDOMEQUAL_STRING- Command is equal toEQUAL_NUMBER- Amount is equal toGREATER_NUMBER- Amount is greater than or equal toEQUAL_USERNAMEEQUAL_VARIABLE
Related
- Alert Explorer - live preview of every alert
- Overlay Type Definitions - full
AlertEventTypeScript type