Description
Library name and version
Azure.Communication.CallAutomation 1.1.0
Describe the bug
Hello,
While using CallAutomation during its preview phase, I employed it for a Proof of Concept (POC) with the primary objective of communication through CallMedia
and DtmfTones
. It worked quite well for the most part.
The only issue I encountered was related to response time. The device I'm communicating with expects a quick response after sending its message (we are talking 1+- secounds). If the response is delayed, the device assumes something has gone wrong, making it critical for me to respond promptly.
For this reason, I couldn't use CallMedia.StartRecognizingAsync
because it's too slow to proceed to RecognizeCompleted
, even though I configured the following:
- Minimum
InterToneTimeout
to 1 second inCallMediaRecognizeDtmfOptions
. StopTone
to the last tone in the message, which I know in advance.MaxTonesToCollect
to the length I know the message will be.
On the other hand, when using CallMedia.StartContinuousDtmfRecognitionAsync
, I could respond after the last tone and send back a reply each time as desired :D
However, now that CallAutomation has transitioned from preview to production, I can only occasionally respond quickly enough. I've tried stripping away all other logic that could potentially delay my response time. Still, I'm experiencing the same inconsistent result even though I'm reacting to a fixed tone.
It's possible that in my POC, I was lucky and pushing the limits, but it seems that something in the background has changed, causing CallMedia.StartContinuousDtmfRecognitionAsync
to become slower.
Is that something you are aware of, and is it something that can be fixed?
Expected behavior
Expected to send faster like when it was in preview.
Actual behavior
Sends the tone, but not as fast as it used to do.
Reproduction Steps
- Start API with inbound and webhook-callback endpoints.
- Call
- StartContinuousDtmfRecognitionAsync
- StopContinuousDtmfRecognitionAsync at any given point
- SendDtmfTonesAsync
Environment
-
Azure Communication Service
-
Danish phone number (+45)
-
Event Grid System Topic (Microsoft.Communication.IncomingCall)
-
Event Subscription (webhook)
-
REST API with .NET 6