Skip to content

Add ACS Call Automation GA6 #34830

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 7 commits into
base: main
Choose a base branch
from
Open

Add ACS Call Automation GA6 #34830

wants to merge 7 commits into from

Conversation

antonsamson-msft
Copy link
Member

@antonsamson-msft antonsamson-msft commented May 21, 2025

Data Plane API Specification Update Pull Request

Tip

Overwhelmed by all this guidance? See the Getting help section at the bottom of this PR description.

PR review workflow diagram

Please understand this diagram before proceeding. It explains how to get your PR approved & merged.

spec_pr_review_workflow_diagram

API Info: The Basics

Most of the information about your service should be captured in the issue that serves as your API Spec engagement record.

  • Link to API Spec engagement record issue:

Is this review for (select one):

  • a private preview
  • a public preview
  • GA release

Change Scope

This section will help us focus on the specific parts of your API that are new or have been modified.
Please share a link to the design document for the new APIs, a link to the previous API Spec document (if applicable), and the root paths that have been updated.

  • Design Document:
  • Previous API Spec Doc:
  • Updated paths:

Viewing API changes

For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.

Suppressing failures

If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
Swagger-Suppression-Process
to get approval.

Release planner

A release plan should have been created. If not, please create one as it will help guide you through the REST API and SDK creation process.

❔Got questions? Need additional info?? We are here to help!

Contact us!

The Azure API Review Board is dedicated to helping you create amazing APIs. You can read about our mission and learn more about our process on our wiki.

Click here for links to tools, specs, guidelines & other good stuff

Tooling

Guidelines & Specifications

Helpful Links

Getting help

  • First, please carefully read through this PR description, from top to bottom.
  • If you don't have permissions to remove or add labels to the PR, request write access per aka.ms/azsdk/access#request-access-to-rest-api-or-sdk-repositories
  • To understand what you must do next to merge this PR, see the Next Steps to Merge comment. It will appear within few minutes of submitting this PR and will continue to be up-to-date with current PR state.
  • For guidance on fixing this PR CI check failures, see the hyperlinks provided in given failure
    and https://aka.ms/ci-fix.
  • If the PR CI checks appear to be stuck in queued state, please add a comment with contents /azp run.
    This should result in a new comment denoting a PR validation pipeline has started and the checks should be updated after few minutes.
  • If the help provided by the previous points is not enough, post to https://aka.ms/azsdk/support/specreview-channel and link to this PR.

Sorry, something went wrong.

@antonsamson-msft antonsamson-msft added the offline-review-requested Service team has requested PR review be conducted offline. label May 21, 2025
Copy link

openapi-pipeline-app bot commented May 21, 2025

Next Steps to Merge

✅ All automated merging requirements have been met! To get your PR merged, see aka.ms/azsdk/specreview/merge.

Copy link

openapi-pipeline-app bot commented May 21, 2025

PR validation pipeline restarted successfully. If there is ApiView generated, it will be updated in this comment.

@github-actions github-actions bot added the brownfield Brownfield services will soon be required to convert to TypeSpec. See https://aka.ms/azsdk/typespec. label May 21, 2025
Copy link

github-actions bot commented May 21, 2025

API Change Check

APIView identified API level changes in this PR and created the following API reviews

Language API Review for Package
Swagger CallAutomation-CallAutomation

@AzureRestAPISpecReview AzureRestAPISpecReview added BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required data-plane labels May 21, 2025
Updated example for Start Recording with the async response code
@antonsamson-msft antonsamson-msft linked an issue May 21, 2025 that may be closed by this pull request
Copy link
Member

@weidongxu-microsoft weidongxu-microsoft left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall LGTM. A few minor comments may need your input.

AI summary

Summary of Changes from 2025-05-15 to 2025-06-15
1. Reference Updates
Changed Common schema references from stable 2023-11-15 to preview 2025-03-15-preview
Communication identifiers and models now reference from the newer preview path
For example: CommunicationIdentifierModel, PhoneNumberIdentifierModel, CommunicationUserIdentifierModel, etc.
2. StartCallRecordingRequest Changes
Removed the required property constraint for callLocator
Added support for using callConnectionId as an alternative to callLocator
This provides a more flexible way to identify the call for recording operations
The API now includes a description indicating "Only one of callLocator or callConnectionId to be used"
3. Common Model Updates
Added TeamsExtensionUserIdentifierModel reference from Common schema
Added MicrosoftTeamsAppIdentifierModel reference from Common schema
4. CreateCallRequest Extension
Added a new property teamsAppSource of type MicrosoftTeamsAppIdentifierModel
This allows specifying a Teams app as the source when creating a call with Teams resource account ID
5. WebSocketMediaStreamingOptions Enhancement
Added enableDtmfTones property
This provides a flag to indicate whether to stream DTMF tones in the media stream
6. Common Schema Version Alignment
The API now uses the consistent Common schema version across all model references
This ensures consistent behavior between related Communication Services APIs

Comment on lines +3001 to +3004
"callLocator": {
"$ref": "#/definitions/CallLocator",
"description": "The call locator. (Only one of callLocator or callConnectionId to be used)"
},
Copy link
Member

@weidongxu-microsoft weidongxu-microsoft May 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In 2025-05-01, this property is "required"

      "required": [
        "callLocator"
      ],

So this is also a break. Though you probably intend this for adding callConnectionId.

(it is mentioned in CI https://github.com/Azure/azure-rest-api-specs/pull/34830/checks?check_run_id=42662219511)

Copy link
Member Author

@antonsamson-msft antonsamson-msft May 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for pointing this out. The change from required to optional for callLocator was intentional and was previously approved. As you mentioned, the API still supports usage of callLocator, but now also gives clients the option to use callConnectionId instead. This makes the API more flexible while maintaining backward compatibility.

Edit: Either a callLocator or callConnectionId must always be provided

Please let me know if you have further concerns or need additional clarification.

cc: @khannavikas

@JeffreyRichter JeffreyRichter added BreakingChange-Approved-Benign Changes are not breaking at the REST API level and have at most minor impact to generated SDKs. APIStewardshipBoard-SignedOff The Azure API Stewardship team has reviewed and approved the changes. labels May 22, 2025
@JeffreyRichter JeffreyRichter self-requested a review May 22, 2025 15:08
Copy link
Member

@mikekistler mikekistler left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are a few minor issues that I think need to be resolved.

Copy link
Member

@mikekistler mikekistler left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! 👍

@antonsamson-msft antonsamson-msft added the PublishToCustomers Acknowledgement the changes will be published to Azure customers. label Jun 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
APIStewardshipBoard-SignedOff The Azure API Stewardship team has reviewed and approved the changes. BreakingChange-Approved-Benign Changes are not breaking at the REST API level and have at most minor impact to generated SDKs. BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required brownfield Brownfield services will soon be required to convert to TypeSpec. See https://aka.ms/azsdk/typespec. data-plane new-api-version offline-review-requested Service team has requested PR review be conducted offline. PipelineBotTrigger PublishToCustomers Acknowledgement the changes will be published to Azure customers.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[ACS Call Automation ] REST API Review
6 participants