BUG: Voicemail detection beepMaxAwaitSeconds does not work as described
P
Pat Nadolny
I posted this in discord but never heard back. This is a platform bug making voicemail configuration not work properly. https://discord.com/channels/1211482211119796234/1432727023125532763/1432727023125532763
I'm using Vapi voicemail detection provider with the recommended settings https://docs.vapi.ai/calls/voicemail-detection#vapi-provider-recommended. The docs https://docs.vapi.ai/calls/voicemail-detection#important-beepmaxawaitseconds-configuration say that beepMaxAwaitSeconds is the maximum it will wait until reading the voicemail script. My interpretation of this is that it is meant as a stopgap for when we dont detect that its a voicemail using the provider. What I'm seeing in practice is that any value other than 0 makes this wait the whole wait period every time, even if a voicemail is detected in the logs. For support and example call is 019a28a3-d338-7aa8-a38c-eb55f0897e6b. At 5s the voicemail recording stops, at 6s google returns Customer detected as voicemail by google, then silence until 25s when the max wait seconds is reached and the voicemail script is read. In contrast, if I set the beepMaxAwaitSeconds value to 0 which the docs recommends against I see the correct behavior 019a2856-f3cc-722b-a8ab-4d887ab9b20d: at 7s google detects voicemail and it reads the script immediately.
P
Pat Nadolny
Call ID: 019a28a3-d338-7aa8-a38c-eb55f0897e6b
Timestamp: 00:05
Issue: At 5s the voicemail recording stops, at 6s google returns 'Customer detected as voicemail by google', then silence until 25s when the max wait seconds is reached and the voicemail script is read by the assistant. In contrast, if I set the beepMaxAwaitSeconds value to 0 which the docs recommends against I see the correct behavior (call id: 019a2856-f3cc-722b-a8ab-4d887ab9b20d) at 7s google detects voicemail and it reads the script immediately.
Expected: The beepMaxAwaitSeconds behave as documented and immediately start reading the voicemail script when its detected and the users turn has ended, rather than always waiting for the wait time to reach the max value configured.