ACS trial number shows busy when called, and Event Grid gets no IncomingCall

Syed Saib Nadeem 0 Reputation points
2026-06-16T13:11:20.48+00:00

I’m using an Azure Communication Services trial phone number with an Azure Functions app.

When I call the ACS number from a US phone number, the caller hears a busy tone. At the same time, my Event Grid subscription does not seem to receive the Microsoft.Communication.IncomingCall event, or delivery stays at 0.

My setup includes:

ACS trial phone number

Azure Function App over HTTPS

Event Grid subscription for Microsoft.Communication.IncomingCall and Microsoft.Communication.CallEnded

Incoming call endpoint: /api/incomingcall

ACS callback endpoint: /api/events

The trial number still shows inbound minutes remaining, so I do not think the issue is call quota exhaustion.

Has anyone seen this before? Is this usually caused by trial phone number restrictions, Event Grid configuration, or Function App call handling?

Azure Notification Hubs
Azure Notification Hubs

An Azure service that is used to send push notifications to all major platforms from the cloud or on-premises environments.


2 answers

Sort by: Most helpful
  1. Golla Venkata Pavani 6,185 Reputation points Microsoft External Staff Moderator
    2026-06-16T18:17:33.8333333+00:00

    Hii @Syed Saib Nadeem

    Thank you for reaching us regarding the issue.

    Azure Communication Services (ACS) uses Event Grid to deliver Microsoft.Communication.IncomingCall events when a PSTN call is made to a phone number owned by your ACS resource. If callers hear a busy tone and your Event Grid subscription shows 0 event deliveries, the issue is typically related to the inbound call event delivery path, webhook validation, or Event Grid configuration rather than the available inbound calling minutes.

    recommendations:

    1. Verify the Event Grid subscription status
    • Confirm that the Event Grid subscription is in a Succeeded state.
    • Ensure the webhook endpoint successfully completed Event Grid subscription validation. Event Grid requires endpoint ownership verification before events can be delivered.
    1. Review Event Grid diagnostics
    • Enable diagnostics on the Event Grid system topic associated with your ACS resource.
    • Review the AegDeliveryFailureLogs table for any delivery or validation failures related to IncomingCall events. Microsoft specifically recommends using these logs when troubleshooting event delivery issues.
    1. Validate the Azure Function endpoint
    • Confirm the endpoint is publicly accessible over HTTPS.
    • Verify that the configured route matches the Function App route and that the application is responding successfully to Event Grid requests.
    1. Review phone number configuration
    • Verify that the phone number is configured with the appropriate telephony capabilities for your calling scenario.
    • Microsoft documents that ACS phone numbers support configurable calling capabilities depending on number type and region.
    1. Check Event Grid filtering
    • If advanced filters are configured on the Event Grid subscription, verify that they are not preventing Microsoft.Communication.IncomingCall events from reaching the webhook endpoint. Reviewing Event Grid filtering when configuring inbound call routing.

    Reference:
    https://learn.microsoft.com/en-us/azure/communication-services/concepts/call-automation/incoming-call-notification
    https://learn.microsoft.com/en-us/azure/event-grid/communication-services-voice-video-events
    https://learn.microsoft.com/en-us/azure/communication-services/concepts/telephony/plan-solution
    https://learn.microsoft.com/en-us/azure/communication-services/concepts/telephony/trial-phone-numbers-faq
    Kindly let us know if the above helps or you need further assistance on this issue.

    Please "accept" if the information helped you. This will help us and others in the community as well.

    Was this answer helpful?

    0 comments No comments

  2. AI answer

    2026-06-16T13:11:41.65+00:00

    This behavior is most commonly caused by issues in the Event Grid subscription or the HTTPS endpoint that should receive the IncomingCall event, not by trial-number minutes/quota.

    From the available guidance, use the following checks:

    1. Verify Event Grid subscription validation
      If the Event Grid subscription endpoint (Function App) is not successfully validated, Event Grid will not deliver Microsoft.Communication.IncomingCall events.
      • In the Event Grid subscription resource, check the provisioning status. It must be Succeeded.
      • If it is not succeeded, re-create the subscription and ensure the Function’s HTTPS URL responds correctly to the Event Grid validation handshake as described in webhook event delivery.
    2. Confirm HTTPS and correct callback URL
      Call Automation and related ACS events require HTTPS endpoints:
      • Ensure the Function App URL used as the Event Grid endpoint is HTTPS, not HTTP.
      • Confirm that the path used in the Event Grid subscription exactly matches the Function route (for example, /api/events or /api/incomingcall), and that the function is enabled and not returning errors.
    3. Check that IncomingCall events are configured and filtered correctly
      • Confirm the Event Grid subscription includes Microsoft.Communication.IncomingCall in includedEventTypes.
      • If using subject filters, verify they match the ACS phone number format. For phone numbers, the subject starts with phonenumber/. For example, a filter might use "subjectBeginsWith": "phonenumber/1<areacode>" for US numbers. If the filter does not match, delivery count will stay at 0.
    4. Validate Function App availability
      • Ensure the Function App is running and reachable from the public internet. If the app is stopped, restricted by networking, or returning 4xx/5xx responses, Event Grid will not show successful deliveries.
    5. Trial number considerations
      The provided information on ACS trial numbers does not indicate that a valid trial number with remaining inbound minutes will automatically return busy. A busy tone in this scenario is more consistent with the platform being unable to route the call into the application (for example, because the Event Grid subscription or callback endpoint is not working), rather than a simple quota exhaustion.
    6. General ACS troubleshooting tips
      The ACS troubleshooting guidance for calling and Call Automation emphasizes:
      • Ensuring the application endpoint is validated with Event Grid so that IncomingCall events are delivered.
      • Using HTTPS for callback URIs.
        These are the first items to confirm when no IncomingCall events are seen and calls fail.

    In summary, this is most likely an Event Grid subscription or Function endpoint issue (validation, HTTPS, or filtering) rather than a trial-number restriction, assuming the trial number still shows available inbound minutes.


    References:

    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.