Files
companion-module-voicemod/actions.js
RavenX8 79ff3ce5a4 ### Added
- new state variables
- voicemod connection retry logic

### Fixed
- Fix race-condition crash on init for undefined reference

### Changed
- Updated voicemod-api to a version that has `sharp` patched out
2024-01-14 21:18:39 -05:00

67 lines
1.4 KiB
JavaScript

module.exports = function (self) {
self.setActionDefinitions({
set_voice_id: {
name: 'Set Voice',
options: [
{
id: 'voiceId',
type: 'dropdown',
label: 'Voice',
default: '',
choices: self.vm.voices.map((item) => ({ id: item.id, label: item.name })),
},
],
callback: async (event) => {
const voiceId = event.options.voiceId
self.vm.internal.setVoice(voiceId)
},
},
set_beep_sound: {
name: 'Set Beep Sound',
options: [
{
id: 'beepEnabled',
type: 'checkbox',
label: 'Enabled',
default: false,
},
],
callback: async (event) => {
self.vm.internal.setBeepSound(event.options.beepEnabled)
},
},
toggle_voice_changer: {
name: 'Toggle Voice Changer',
options: [],
callback: async (event) => {
self.vm.internal.toggleVoiceChanger()
self.checkFeedbacks('VoiceChangerState')
},
},
play_meme: {
name: 'Play Meme',
options: [
{
id: 'memeId',
type: 'dropdown',
label: 'Meme',
default: 0,
choices: self.vm.soundboards.flat().map((item) => ({ id: item.id, label: item.name })),
},
],
callback: async (event) => {
// console.log('in callback!')
const memeId = event.options.memeId
self.vm.internal.playMeme(memeId)
},
},
stop_all_sounds: {
name: 'Stop all sounds',
options: [],
callback: async (event) => {
self.vm.stopAllSounds()
},
},
})
}