Skip to content

CallAutomation GA5 Changes #45494

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

Merged
merged 36 commits into from
Jul 8, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
06f22eb
ga5 changes
v-dharmarajv May 9, 2025
f5cebcd
ga5 api changes
v-dharmarajv May 13, 2025
a7a071d
Made GA5 changes and recorded the live tests. (#45409)
v-pivamshi May 20, 2025
4c30693
Addressing arb comments
v-dharmarajv May 21, 2025
cf508ed
Added the parser for the dtmf data. (#45347)
v-pivamshi May 21, 2025
6300665
updating the white space difference
v-dharmarajv May 21, 2025
a34f372
addressing the arb comments
v-dharmarajv May 21, 2025
3beae7c
GA5 Javadoc Issues (#45432)
v-saasomani May 21, 2025
47bb9e9
Re-recorded tests and fixed linting issues (unused imports). (#45448)
v-saasomani May 22, 2025
99dccc2
updating java missing fields
v-dharmarajv May 22, 2025
0baee07
Merge branch 'callautomation/release/ga5' of https://github.com/Azure…
v-dharmarajv May 22, 2025
50ad4c7
lint errors
v-dharmarajv May 22, 2025
6fafaf3
moving transport url
v-dharmarajv May 23, 2025
0b8acfa
Addressing the ARB Comments
v-dharmarajv May 27, 2025
2fe8f65
addressing the arb comments
v-dharmarajv May 27, 2025
b83c48e
addressing all arb comments
v-dharmarajv May 27, 2025
e5964c9
merge from main
v-dharmarajv May 27, 2025
1a568e4
updating the transcription and media streaming options
v-dharmarajv May 28, 2025
2a11acf
Fixed Javadoc issues + updated ga5 version. (#45496)
v-saasomani May 28, 2025
0722329
Fixing the lint errors
v-dharmarajv May 28, 2025
f0b6caa
fixing the lint error
v-dharmarajv May 28, 2025
f2faa81
updating the changelog
v-dharmarajv May 30, 2025
c8f0c56
merge from main
v-dharmarajv Jun 3, 2025
2e374f3
Updating the changelog and release date
v-dharmarajv Jun 4, 2025
d1a04d5
changing the release date
v-dharmarajv Jun 5, 2025
b1b754d
Increment package versions for communication/azure-communication-call…
azure-sdk Jun 16, 2025
cbc7241
Resolving the conflicts and merging from main
v-dharmarajv Jun 30, 2025
3ff7870
taking the main changes for the dependancy package updates
v-dharmarajv Jun 30, 2025
801001f
dependancy package updates
v-dharmarajv Jun 30, 2025
999d294
updating the identity package
v-dharmarajv Jun 30, 2025
a9b3ffb
updating the cutomization for the getparticipant
v-dharmarajv Jul 1, 2025
09fe53b
version number update
v-dharmarajv Jul 7, 2025
8b4c32d
running latest autorest
v-dharmarajv Jul 7, 2025
7082219
merging from main
v-dharmarajv Jul 7, 2025
59c9ca4
version update
v-dharmarajv Jul 7, 2025
66b9748
updating readme version
v-dharmarajv Jul 7, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@

### Features Added

- Support for recording result api.

### Breaking Changes

### Bugs Fixed
Expand All @@ -22,16 +20,16 @@
- Upgraded `azure-core-http-netty` from `1.15.11` to version `1.15.12`.
- Upgraded `azure-core` from `1.55.3` to version `1.55.4`.


## 1.4.0 (2025-06-05)

### Features Added

### Breaking Changes

### Bugs Fixed

### Other Changes
- Real-time transcription support
- Audio and DTMF streaming capabilities
- Integration of ConnectAPI for seamless streaming and transcription
- Improved media streaming with bidirectional functionality, allowing audio formats in both directions, currently supporting sample rates of 24kHz and 16kHz
- Support for custom speech models has been integrated into transcription
- A confidence level for recognized speech has been introduced, ranging from 0.0 to 1.0 when available

## 1.3.3 (2025-03-24)

Expand All @@ -54,6 +52,16 @@
- Upgraded `azure-core-http-netty` from `1.15.7` to version `1.15.10`.
- Upgraded `azure-core` from `1.54.1` to version `1.55.2`.

## 1.3.1 (2024-12-04)

### Other Changes

#### Dependency Updates

- Upgraded `azure-core` from `1.53.0` to version `1.54.1`.
- Upgraded `azure-core-http-netty` from `1.15.5` to version `1.15.7`.
- Upgraded `azure-communication-common` from `1.3.7` to version `1.3.8`.

## 1.4.0-beta.1 (2024-11-22)

### Features Added
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ This package contains a Java SDK for Azure Communication Call Automation Service
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-callautomation</artifactId>
<version>1.4.0-beta.2</version>
<version>1.4.1</version>
</dependency>
```

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
"AssetsRepo": "Azure/azure-sdk-assets",
"AssetsRepoPrefixPath": "java",
"TagPrefix": "java/communication/azure-communication-callautomation",
"Tag": "java/communication/azure-communication-callautomation_d495ba2a2c"
"Tag": "java/communication/azure-communication-callautomation_33108318f9"
}
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,12 @@
<version>9.37.3</version> <!-- {x-version-update;com.nimbusds:nimbus-jose-jwt;external_dependency} -->
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<version>1.3</version> <!-- {x-version-update;org.hamcrest:hamcrest-all;external_dependency} -->
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -42,14 +42,6 @@ public final class CallAutomationClient {
this.callAutomationAsyncClient = callAutomationAsyncClient;
}

/**
* Get the event processor for handling events.
* @return {@link CallAutomationEventProcessor} as event processor
*/
public CallAutomationEventProcessor getEventProcessor() {
return callAutomationAsyncClient.getEventProcessor();
}

/**
* Get Source Identity that is used for create and answer call
* @return {@link CommunicationUserIdentifier} represent source
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,17 +101,6 @@ public CallAutomationClientBuilder endpoint(String endpoint) {
return this;
}

/**
* Set pma endpoint override of the service.
*
* @param pmaEndpoint url of the service.
* @return CallAutomationClientBuilder object.
*/
public CallAutomationClientBuilder pmaEndpoint(String pmaEndpoint) {
this.pmaEndpoint = Objects.requireNonNull(pmaEndpoint, "'pmaEndpoint' cannot be null.");
return this;
}

/**
* Sets the {@link HttpPipeline} to use for the service client.
*
Expand Down Expand Up @@ -319,7 +308,7 @@ public CallAutomationClientBuilder addPolicy(HttpPipelinePolicy customPolicy) {
* and {@link #retryPolicy(RetryPolicy)} have been set.
*/
public CallAutomationAsyncClient buildAsyncClient() {
return new CallAutomationAsyncClient(createServiceImpl(), sourceIdentity, new CallAutomationEventProcessor());
return new CallAutomationAsyncClient(createServiceImpl(), sourceIdentity);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,29 +23,14 @@
import com.azure.communication.callautomation.models.events.ContinuousDtmfRecognitionToneFailed;
import com.azure.communication.callautomation.models.events.ContinuousDtmfRecognitionToneReceived;
import com.azure.communication.callautomation.models.events.CreateCallFailed;
import com.azure.communication.callautomation.models.events.DialogCompleted;
import com.azure.communication.callautomation.models.events.DialogConsent;
import com.azure.communication.callautomation.models.events.DialogFailed;
import com.azure.communication.callautomation.models.events.DialogHangup;
import com.azure.communication.callautomation.models.events.DialogLanguageChange;
import com.azure.communication.callautomation.models.events.DialogSensitivityUpdate;
import com.azure.communication.callautomation.models.events.DialogStarted;
import com.azure.communication.callautomation.models.events.DialogTransfer;
import com.azure.communication.callautomation.models.events.HoldAudioCompleted;
import com.azure.communication.callautomation.models.events.HoldAudioPaused;
import com.azure.communication.callautomation.models.events.HoldAudioResumed;
import com.azure.communication.callautomation.models.events.HoldAudioStarted;
import com.azure.communication.callautomation.models.events.HoldFailed;
import com.azure.communication.callautomation.models.events.IncomingCall;
import com.azure.communication.callautomation.models.events.MediaStreamingFailed;
import com.azure.communication.callautomation.models.events.MediaStreamingStarted;
import com.azure.communication.callautomation.models.events.MediaStreamingStopped;
import com.azure.communication.callautomation.models.events.ParticipantsUpdated;
import com.azure.communication.callautomation.models.events.PlayCanceled;
import com.azure.communication.callautomation.models.events.PlayCompleted;
import com.azure.communication.callautomation.models.events.PlayFailed;
import com.azure.communication.callautomation.models.events.PlayPaused;
import com.azure.communication.callautomation.models.events.PlayResumed;
import com.azure.communication.callautomation.models.events.PlayStarted;
import com.azure.communication.callautomation.models.events.RecognizeCanceled;
import com.azure.communication.callautomation.models.events.RecognizeCompleted;
Expand All @@ -55,7 +40,6 @@
import com.azure.communication.callautomation.models.events.RemoveParticipantSucceeded;
import com.azure.communication.callautomation.models.events.SendDtmfTonesCompleted;
import com.azure.communication.callautomation.models.events.SendDtmfTonesFailed;
import com.azure.communication.callautomation.models.events.StartRecordingFailed;
import com.azure.communication.callautomation.models.events.TranscriptionFailed;
import com.azure.communication.callautomation.models.events.TranscriptionResumed;
import com.azure.communication.callautomation.models.events.TranscriptionStarted;
Expand Down Expand Up @@ -123,8 +107,6 @@ private static CallAutomationEventBase parseSingleCloudEvent(String data, String
ret = CallConnected.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.CallDisconnected")) {
ret = CallDisconnected.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.IncomingCall")) {
ret = IncomingCall.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.AddParticipantFailed")) {
ret = AddParticipantFailed.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.AddParticipantSucceeded")) {
Expand All @@ -137,8 +119,6 @@ private static CallAutomationEventBase parseSingleCloudEvent(String data, String
ret = ParticipantsUpdated.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.RecordingStateChanged")) {
ret = RecordingStateChanged.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.StartRecordingFailed")) {
ret = StartRecordingFailed.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.PlayCompleted")) {
ret = PlayCompleted.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.PlayFailed")) {
Expand All @@ -147,10 +127,6 @@ private static CallAutomationEventBase parseSingleCloudEvent(String data, String
ret = PlayStarted.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.PlayCanceled")) {
ret = PlayCanceled.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.PlayPaused")) {
ret = PlayPaused.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.PlayResumed")) {
ret = PlayResumed.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.RecognizeCompleted")) {
ret = RecognizeCompleted.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.RecognizeFailed")) {
Expand All @@ -175,22 +151,6 @@ private static CallAutomationEventBase parseSingleCloudEvent(String data, String
ret = CancelAddParticipantSucceeded.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.CancelAddParticipantFailed")) {
ret = CancelAddParticipantFailed.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.DialogStarted")) {
ret = DialogStarted.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.DialogCompleted")) {
ret = DialogCompleted.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.DialogFailed")) {
ret = DialogFailed.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.DialogConsent")) {
ret = DialogConsent.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.DialogHangup")) {
ret = DialogHangup.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.DialogLanguageChange")) {
ret = DialogLanguageChange.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.DialogTransfer")) {
ret = DialogTransfer.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.DialogSensitivityUpdate")) {
ret = DialogSensitivityUpdate.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.TranscriptionStarted")) {
ret = TranscriptionStarted.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.TranscriptionFailed")) {
Expand All @@ -205,14 +165,6 @@ private static CallAutomationEventBase parseSingleCloudEvent(String data, String
ret = AnswerFailed.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.CreateCallFailed")) {
ret = CreateCallFailed.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.HoldAudioCompleted")) {
ret = HoldAudioCompleted.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.HoldAudioStarted")) {
ret = HoldAudioStarted.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.HoldAudioPaused")) {
ret = HoldAudioPaused.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.HoldAudioResumed")) {
ret = HoldAudioResumed.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.HoldFailed")) {
ret = HoldFailed.fromJson(jsonReader);
} else if (Objects.equals(eventType, "Microsoft.Communication.ConnectFailed")) {
Expand Down
Loading