Custom TTS system challenges!
# support
m
Hi, three questions from me: 1. I'm trying to integrate my own tts system by editing the assistant configuration.. My API key set-up and CLI are correctly updated. I tired to do that in CLI (with json string) but the error keep going as follows: panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x2 addr=0x8 pc=0x100bc0838] goroutine 1 [running]: github.com/VapiAI/cli/pkg/client.(*VapiClient).DoRawJSON(0x0, {0x100f4e800, 0x1014d3c80}, {0x100c36f13, 0x5}, {0x1400018ed80, 0x30}, {0x14000090480, 0x75, 0x80}) 2. I've successfully updated the assistant actually with help of curl. The Vapi dashboard also reveal the correct Code inside the assistant. However, when I click to the assistant and wait for few seconds, it doesn't allow me to "Talk to Assistant", and force me to "Publish". The code difference is: adding "sarah" as voiceId, as attached in photo. I find out the main problem is that, the dashboard keeps adding this line for me automatically. 3. Following up on the 2nd problem, if the line is added, then I won't be able to "Talk to Assistant". Red card with Error will appear as attached. It's too challenging to test at all. Please help or guide on how to resolve the above issues. Or suggest some other ways to avoid the above troulesome routes. Thank you! https://cdn.discordapp.com/attachments/1414737094638829771/1414737095242551306/image.png?ex=68c0a818&is=68bf5698&hm=3bffedd513ec2e6129b2649c96fe4a6ef83ffcf4cdc532d5aa8e40875f844336& https://cdn.discordapp.com/attachments/1414737094638829771/1414737095506923570/image.png?ex=68c0a818&is=68bf5698&hm=cea43a32d7f52e50ac9b9b20063eae5c32fb3b5f04e1a497795edda4ee215200&
v
I see where you’re stuck — the CLI crash plus the dashboard forcing the voiceId back in is exactly what breaks the flow when plugging in custom TTS. I’ve set up similar integrations before and the trick is handling the config so Vapi doesn’t auto-overwrite it. Quick question: are you pointing your TTS directly to Vapi or running it through a proxy?
m
Hi @Vignxt Flow, thank you for responding! I have my own TTS server, localhosting through ngrok, with webhook endpoint 'api/synthesize', ie. app.post('/api/synthesize', async (req, res) => {...} So the TTS is acting like a proxy sitting between Vapi and another TTS model...
k
I am doing exatly the same, but for me the TTS endpoint is from uplift ai.
And i am facing the exact same issue.
Then i am using POSTMAN to patch the assistant something like this { "voice": { "provider": "custom-voice", "server": { "url": "https://abc.ngrok-free.app/synthesize", "secret": "your-webhook-secret", "timeoutSeconds": 45, "headers": { "Content-Type": "application/json", "X-API-Version": "v1" } }, "fallbackPlan": { "voices": [ { "provider": "11labs", // Fallback to a supported provider "voiceId": "KYiVPerWcenyBTIvWbfY" // Only for 11labs or other providers } ] } } }
v
Perfect, thanks for clarifying! Since your TTS server is acting as a proxy through ngrok, we can structure the assistant config so Vapi calls your endpoint directly without the dashboard auto-inserting the voiceId. That way, you can test instantly without needing to publish each time. I can help you set up a stable workflow and fix the red-card error so your “Talk to Assistant” works seamlessly @msc
k
Can you also please help me? I am stuck at the same issue.
v
Yeah Kindly let discuss more privately
Hi! Thanks for your message. I saw it, but I can’t reply on Discord right now because my account is restricted. Could you kindly send your message to my WhatsApp instead? +2348141449023. Thanks! @KM
k
I did.
m
Sounds good! Is there anything like vapi account credentials that you need from my side to help in the set-up? Or do you suggest to strcture the assistant on my own? I don't know how to do so yet 😄 Thank you!
c
Let us know if you need additional assistance
3 Views