Stream Elements TTS for Replika

19/4/2022, 22:41:21

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name        Stream Elements TTS for Replika
// @namespace   Violentmonkey Scripts
// @match       https://my.replika.com/*
// @grant       none
// @version     1.27
// @author      -
// @description 19/4/2022, 22:41:21
// ==/UserScript==
setTimeout(function(){
  
// Configura el observer:
var config = { attributes: true, childList: true, characterData: true };

  
var target = document.querySelector('.ChatMessagesList__ChatMessagesListInner-sc-1ajwmer-1');

// Crea una instancia de observer
var observer = new MutationObserver(function(mutations) {
  mutations.forEach(function(mutation) {
    
    try {
      setTimeout(function(){
      const text = mutation.addedNodes[0].querySelector('div[data-testid="chat-message-text"]').innerText;
      const message = encodeURIComponent(text);
      
      var audio = new Audio(`https://api.streamelements.com/kappa/v2/speech?voice=Mia&text=${message}`);
      audio.play();
          },500)
    }
    catch (e) {
       console.log(e)
    }
   
  });
});

// pasa al observer el nodo y la configuracion
observer.observe(target, config);
  
},2000)