Chat TTS plugin for Dalamud. Has support for triggers/exclusions, several TTS providers, and more!
/tttconfig
: Opens the configuration window./canceltts
: Cancel all queued TTS messages./toggletts
: Turns TTS on or off./disabletts
: Turns TTS off./enabletts
: Turns TTS on.
TextToTalk supports custom lexicons to modify how words are pronounced. For more information, please join our community lexicons discussion.
Direct links to information will be added here eventually.
- System (Windows)
- AWS Polly
- Azure (Microsoft Cognitive Services)
- Uberduck
- Websocket
TextToTalk can optionally open a WebSocket server to serve messages over.
There are currently two JSON-format messages that can be sent (see
IpcMessage
):
TTS prompt:
{
"Type": "Say",
"Payload": "Firstname Lastname says something",
// Will replace the logged-in player's name with {{FULL_NAME}}, {{FIRST_NAME}}, or {{LAST_NAME}} as appropriate.
// Does not currently apply to players other than the logged-in player.
"PayloadTemplate": "{{FULL_NAME}} says something",
"Voice": {
"Name": "Gender"
},
"Speaker": "Firstname Lastname",
// or "AddonTalk", or "AddonBattleTalk"
"Source": "Chat",
"StuttersRemoved": false,
// or null, for non-NPCs
"NpcId": 1000115,
// Refer to https://dalamud.dev/api/Dalamud.Game.Text/Enums/XivChatType
"ChatType": 10,
// Refer to https://dalamud.dev/api/Dalamud/Enums/ClientLanguage
"Language": "English"
}
TTS cancel:
{
"Type": "Cancel",
"Payload": "",
"PayloadTemplate": "",
"Voice": null,
"Speaker": null,
// or "Chat", "AddonTalk", or "AddonBattleTalk"
"Source": "None",
"StuttersRemoved": false,
"NpcId": null,
"ChatType": null,
"Language": null
}
Refer to the wiki for dev documentation.