grymlax

twitch chat in TTS (JS)

Jul 11th, 2025
7
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const net = require('net');
  2.  
  3. const HOST = '127.0.0.1'; // localhost
  4. const PORT = 39999;
  5.  
  6. const client = new net.Socket();
  7. var client_active = false
  8. let messageList = [];
  9.  
  10. var ComfyJS = require("comfy.js");
  11. ComfyJS.Init( "channelName" );
  12.  
  13. ComfyJS.onChat = ( user, message, flags, self, extra ) => {
  14.     console.log( user, message );
  15.  
  16.     const ttsMessage = JSON.stringify({
  17.         // this is the information we are sending to TTS,
  18.         "messageID": 2,
  19.         "customMessage": {
  20.             "user": user,
  21.             "message": message,
  22.             "userColor": extra.userColor},
  23.         });
  24.     messageList.push(ttsMessage)
  25.  
  26.     if (client_active == false) {
  27.         client_active = true
  28.         client.connect(PORT, HOST, () => {
  29.             client.write(messageList.shift());
  30.         });
  31.     }  
  32. }
  33.  
  34. // TTS seems to automaticly close the connection after it has recieved a message
  35. // so when it closes we reopen it if there are more messages to send
  36. client.on('close', () => {
  37.     if (messageList.length > 0) {
  38.         client.connect(PORT, HOST, () => {
  39.             client.write(messageList.shift());
  40.         });
  41.     } else {
  42.         client_active = false
  43.     }  
  44. });
Tags: tts
Advertisement
Add Comment
Please, Sign In to add comment