45 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
const showStreamElementsTips        = getURLParam("showStreamElementsTips", true);
 | 
						|
 | 
						|
const streamElementsHandlers = {
 | 
						|
    'StreamElements.Tip': (response) => {
 | 
						|
        console.debug(response.data);
 | 
						|
        if (showStreamElementsTips == false)
 | 
						|
            return;
 | 
						|
        streamElementsEventMessage(response.data);
 | 
						|
    },
 | 
						|
};
 | 
						|
for (const [event, handler] of Object.entries(streamElementsHandlers)) {
 | 
						|
    streamerBotClient.on(event, handler);
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
 | 
						|
async function streamElementsEventMessage(data) {
 | 
						|
    const {
 | 
						|
        username: userName,
 | 
						|
        amount: moneyFromUser,
 | 
						|
        currency: currencyFromUser,
 | 
						|
        message: messageFromUser,
 | 
						|
    } = data;
 | 
						|
    const userID = createRandomString(40);
 | 
						|
    const messageID = createRandomString(40);
 | 
						|
    const [avatar, message] = await Promise.all([
 | 
						|
        '',
 | 
						|
        currentLang.streamlabs.tip({
 | 
						|
            money : formatCurrency(moneyFromUser,currencyFromUser),
 | 
						|
            message : messageFromUser
 | 
						|
        })
 | 
						|
    ]);
 | 
						|
    const classes = 'streamelements';
 | 
						|
    const messageData = {
 | 
						|
        classes: classes,
 | 
						|
        avatar,
 | 
						|
        badges: '',
 | 
						|
        userName,
 | 
						|
        color: '#FFF',
 | 
						|
        message,
 | 
						|
        reply: '',
 | 
						|
    };
 | 
						|
    addEventToChat(userID, messageID, 'dollar-sign', messageData);
 | 
						|
}
 |