First Message not invoked when using custom tts se...
# support
o
Hi Vapi team, We are trying to test the use of custom tts servers and we have observed an issue where the initial welcome message configured on an agent is completely ignored, and the conversation only starts if the user initiates it. As far as we can tell from looking at your logs as well as ours, no attempt is made to contact our servers for that initial message, can you look into that? Example: https://dashboard.vapi.ai/calls/019ae457-39af-7339-bf0e-19c9f3043bd7 https://cdn.discordapp.com/attachments/1445798611890999436/1445798612138459267/image.png?ex=693f8022&is=693e2ea2&hm=43580f56a693a5661ae23d0af5d7b2cf7b73da38ae70d3cac6b5fe04bbf4f52e&
v
To help diagnose why your custom TTS server isn't invoked for the initial welcome message, add logging middleware to your TTS endpoint to confirm if any "voice-request" POST is received at call start:
Copy code
js
app.use('/api/synthesize', (req, res, next) => {
  console.log('=== Incoming TTS Request ===');
  console.log('Headers:', req.headers);
  console.log('Body:', JSON.stringify(req.body, null, 2));
  next();
});
This will help you verify if Vapi is sending the initial message to your server and narrow down whether the issue is with Vapi's request or your endpoint's handling. If no request is logged, double-check your assistant's configuration for the custom TTS provider and required IDs as described in the documentation. For more details, see the [custom TTS integration guide](https://docs.vapi.ai/customization/custom-voices/custom-tts). Source: - [Custom TTS integration](https://docs.vapi.ai/customization/custom-voices/custom-tts)
t
I can help investigate why the initial welcome message isn’t triggering and why your custom TTS server isn’t contacted. Could you confirm if the welcome message is set to play automatically on call start or only as a first-turn AI response? This will help identify whether it’s an agent config or TTS flow issue. Once confirmed, I can guide you on the fix. @Oru/オル
o
@Tremix Thank you for offering to help. We currently have it configured to go to the LLM automatically. If this is not what you meant, could you share which specific configuration you would like us to share? https://cdn.discordapp.com/attachments/1445798611890999436/1446048228909781002/image.png?ex=693290dc&is=69313f5c&hm=ad082b11c05038a59a1ccf4572d30599a0ba3e1c5097ba02ce24227d433e7935&
t
Thanks for the clarification. What I meant is the exact config that controls how your first message is routed to the LLM—things like your “First Message Mode,” system prompt settings, and how the assistant is triggered. Sharing those sections will help me pinpoint whether the behavior is coming from your routing or from the model itself. I can guide you on the exact adjustment once I see that setup. @Oru/オル
Thanks for sharing this — it helps a lot. The best approach is to first clean up the prompt rules and ensure the model isn’t receiving any malformed characters or broken formatting. From there, we can restructure the system message into clear sections (rules, behaviors, and allowed actions) so the LLM interprets everything correctly. Once the prompt is stable, we can run small test queries to confirm the assistant follows the restrictions, then adjust the routing or first-message logic if needed. I can help you refine this setup so the model responds consistently without breaking any of your rules. @Oru/オル
o
@Tremix Apologies but I do not quite understand why the prompt/model is involved here. Our issue is receiving the event for the first message in our custom voice provider. We have already been using and testing this prompt multiple times with other voice providers that are already registered on Vapi and had no issues receiving a call back from Vapi. This is only happening with a custom voice provider. This is quite an important issue for us for continuing to rely on Vapi. Please advise 🙏
c
Hey! To help track down this issue, could you share: \- The call ID \- When exactly this happened (the timestamp) \- What response you expected to get \- What response you actually got instead This would really help us figure out what went wrong!
t
Thanks for the clarification — that helps. Since the issue only happens with your custom voice provider, it’s not related to the prompt but to how Vapi is delivering the first-message event to your provider’s callback. It usually comes down to the provider’s endpoint config, event registration, or how the callback handles the initial payload. We can go through the setup privately and I’ll help you pinpoint exactly where the event is failing and get it working reliably. @Oru/オル
o
@Tremix thank you, let me send you a DM then with the email address I am using
a
hi there, I also have troubles that my tts server is contacted. It just never gets sent a request Could you help? Example call id: 019ba8fd-b3dc-7cc5-830f-8c1ed8dff35a, org ID: 5f65a35d-3681-4d89-a457-fce850b2aacb
@Oru/オル were you able to solve?
o
@Armin - Chatarmin Talking directly to the team, if you use
assistant-speaks-first
it will only work for Vapi's internal models. Reason being that they generate the message and then cache on their side, thus allowing the callback. If you want to get a response with your own custom tts server only option is to use
assistant-speaks-first-with-model-generated-message