Skip to content

Commit 6e8e894

Browse files
authored
edits to langauge and factoring feedback from acrolinx
1 parent 2404958 commit 6e8e894

File tree

9 files changed

+40
-43
lines changed

9 files changed

+40
-43
lines changed

articles/communication-services/concepts/voice-video-calling/call-automation.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,11 +79,11 @@ Web hooks – Calling Automation SDKs use standard web hook HTTP/S callbacks for
7979

8080
These actions are performed before the destination endpoint listed in the IncomingCall event notification is connected. Web hook callback events only communicate the “answer” pre-call action, not for reject or redirect actions.
8181

82-
**Answer** – Using the IncomingCall event from Event Grid and Call Automation SDK, a call can be answered by your application. This action allows for IVR scenarios where an inbound PSTN call can be answered programmatically by your application. Other scenarios include answering a call on behalf of a user, or answering an outbound call to a phone number in the same Azure Communication Services resource.
82+
**Answer** – Using the IncomingCall event from Event Grid and Call Automation SDK, a call can be answered by your application. This action allows for IVR scenarios where an inbound PSTN call can be answered programmatically by your application. Other scenarios include answering a call on behalf of a user.
8383

8484
**Reject** – To reject a call means your application can receive the IncomingCall event and prevent the call from being connected to the destination endpoint.
8585

86-
**Redirect** – Using the IncomingCall event from Event Grid, a call can be redirected to one or more endpoints creating a single or simultaneous ringing (sim-ring) scenario. Redirect means it isn't answered by your application, it's simply ‘redirected’ to another destination endpoint to be answered.
86+
**Redirect** – Using the IncomingCall event from Event Grid, a call can be redirected to one or more endpoints creating a single or simultaneous ringing (sim-ring) scenario. This means the call isn't answered by your application, it's simply ‘redirected’ to another destination endpoint to be answered.
8787

8888
**Make Call** - Make Call action can be used to place outbound calls to phone numbers and to other communication users. Use cases include your application placing outbound calls to proactively inform users about an outage or notify about an order update.
8989

@@ -93,7 +93,7 @@ These actions can be performed on the calls that are answered or placed using Ca
9393

9494
**Add/Remove participant(s)** – One or more participants can be added in a single request with each participant being a variation of supported destination endpoints. A web hook callback is sent for every participant successfully added to the call.
9595

96-
**Play** - When your application answers a call or places an outbound call, you can play an audio prompt for the caller. The audio prompt can be looped for scenarios like playing hold music. To learn more, view our [quickstart](../../quickstarts/voice-video-calling/Play-Action.md).
96+
**Play** - When your application answers a call or places an outbound call, you can play an audio prompt for the caller. This audio can be looped if needed in scenarios like playing hold music. To learn more, view our [quickstart](../../quickstarts/voice-video-calling/play-action.md)
9797

9898
**Transfer** – When your application answers a call or places an outbound call to an endpoint, that endpoint can be transferred to another destination endpoint. Transferring a 1:1 call will remove your application's ability to control the call using the Call Automation SDKs.
9999

articles/communication-services/concepts/voice-video-calling/play-action.md

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,33 +25,28 @@ The Play action allows you to provide access to a pre-recorded audio file of WAV
2525
The play action can be used in many ways, below are some examples of how developers may wish to use the play action in their applications.
2626

2727
### Announcements
28-
Your application might want to play some sort of announcement when a participant joins or leaves the call, to notify other users:
29-
- Someone has entered the meeting, so they're aware of a new participant.
30-
- Someone has left the meeting, so they're aware that a participant may have disconnected.
28+
Your application might want to play some sort of announcement when a participant joins or leaves the call, to notify other users.
3129

3230
### Self-serve customers
3331

34-
In scenarios with IVRs and virtual assistants, you can use your application or bots to play audio prompts to callers, this prompt can be in the form of a menu to guide the caller through their interaction.
32+
In scenarios with IVRs and virtual assistants, you can use your application or bots to play audio prompts to callers, this prompt can be in the form of a menu to guide the caller through their interaction.
3533

3634
### Hold music
37-
38-
The play action can also be used to play hold music for callers. You can configure the audio to be played in a loop so that the music keeps playing until an agent is available to assist the caller.
35+
The play action can also be used to play hold music for callers. This action can be set up in a loop so that the music keeps playing untill an agent is available to assist the caller.
3936

4037
### Playing compliance messages
41-
42-
As part of compliance requirements in various industries, vendors are expected to play legal or compliance messages to callers, for example “This call will be recorded for quality purposes”.
38+
As part of compliance requirements in various industries, vendors are expected to play legal or compliance messages to callers, for example, “This call will be recorded for quality purposes”.
4339

4440
## How the play action workflow looks
4541

4642
![Screenshot of flow for play action.](./play-action-flow.png)
4743

4844
## Known Issues/Limitations
4945
- Play action isn't enabled to work with Teams Interoperability.
50-
- Play doesn't support loop for targeted playing.
46+
- Play won't support loop for targeted playing.
5147

5248
## What's coming up next for Play action
53-
54-
As we invest more into this functionality, we recommend developers sign up to our TAP program that allows you to get early access to the newest feature releases. Over the coming months the play action will add in new capabilities that use our integration with Azure Cognitive Services to provide AI capabilities such as Text-to-Speech and fine tuning Text-to-Speech with SSML. With these, you can improve customer interactions and create more personalized messages.
49+
As we invest more into this functionality, we recommend developers sign up to our TAP program that allows you to get early access to the newest feature releases. Over the coming months the play action will add new capabilities that use our integration with Azure Cognitive Services to provide AI capabilities such as Text-to-Speech and fine tuning Text-to-Speech with SSML. With these capabilities you can improve customer interactions to create more personalized messages.
5550

5651
## Next Steps
5752
Check out the [Play action quickstart](../../quickstarts/voice-video-calling/Play-Action.md) to learn more.

articles/communication-services/quickstarts/telephony/includes/call-automation/redirect-pstn-call-csharp.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,8 @@ Call Automation uses Event Grid to deliver the `IncomingCall` event to a subscri
4242
ngrok http https://localhost:<your_web_service_port>
4343
```
4444
This command will produce a public URI you can use to receive the events from the Event Grid subscription.
45-
5. Optional: Determine an API route path for the incoming call event together with your NGROK URI, which will be used in the armclient command-line statement below, for example: `https://ff2f-75-155-253-232.ngrok.io/api/incomingcall`.
45+
5. Optional: Determine an API route path for the incoming call event together with your NGROK URI that will be used in the armclient command-line statement below, for example: `https://ff2f-75-155-253-232.ngrok.io/api/incomingcall`.
46+
4647
6. Event Grid web hooks require a valid reachable endpoint before they can be created. As such, start your web service application and run the commands below.
4748
7. Since the `IncomingCall` event isn't yet published in the portal, you must run the following command-line statements to configure your subscription:
4849

articles/communication-services/quickstarts/telephony/includes/call-automation/redirect-pstn-call-java.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ Azure Event Grid SDK package: [com.azure : azure-messaging-eventgrid](https://se
7373

7474
**spark-core**
7575

76-
Spark framework: com.sparkjava : spark-core. We’ll use this micro-framework to create a webhook (web api endpoint) to handle Event Grid events. Note that you can use any framework to create a web api.
76+
Spark framework: com.sparkjava : spark-core. We’ll use this micro-framework to create a webhook (web api endpoint) to handle Event Grid events. You can use any framework to create a web api.
7777
```xml
7878
<dependency>
7979
<groupId>com.sparkjava</groupId>
@@ -152,7 +152,7 @@ Azure Communication Services use Event Grid to deliver the `IncomingCall` event.
152152
```
153153

154154
This command will create a public URI like `https://ff2f-75-155-253-232.ngrok.io/`.
155-
4. Since the IncomingCall event isn't yet published in the Azure portal, you need run the following Azure CLI command to configure an event subscription (please replace with your identifiers and ngrok URI).
155+
4. Since the IncomingCall event isn't yet published in the Azure portal, you need run the following Azure CLI command to configure an event subscription (replace with your identifiers and ngrok URI).
156156
```console
157157
az eventgrid event-subscription create --name <eventSubscriptionName> \
158158
--endpoint-type webhook \

articles/communication-services/quickstarts/voice-video-calling/callflows-for-customer-interactions.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,11 @@ zone_pivot_groups: acs-csharp-java
1919
> Functionality described on this document is currently in private preview. Private preview includes access to SDKs and documentation for testing purposes that are not yet available publicly.
2020
> Apply to become an early adopter by filling out the form for [preview access to Azure Communication Services](https://aka.ms/ACS-EarlyAdopter).
2121
22-
In this tutorial, you'll learn how to build applications that use Azure Communication Services Call Automation SDKs to handle common customer support scenarios. You'll learn how your application can build a call flow, which involves:
23-
- receiving notifications for incoming calls to a phone number using Event Grid,
24-
- answer the call and play audio file using Call Automation SDK,
25-
- add a Communication User to the call using Call Automation SDK. This user can be a customer service agent who uses a web application built using Calling SDKs to connect to Azure Communication Services.
22+
In this tutorial, you'll learn how to build applications that use Azure Communication Services Call Automation to handle common customer support scenarios, such as:
23+
- receiving notifications for incoming calls to a phone number using Event Grid
24+
- answering the call and play audio file using Call Automation SDK
25+
- adding a communication user to the call using Call Automation SDK. This user can be a customer service agent who uses a web application built using Calling SDKs to connect to Azure Communication Services
26+
2627

2728
::: zone pivot="programming-language-csharp"
2829
[!INCLUDE [Call flows for customer interactions with .NET](./includes/call-automation/Callflow-for-customer-interactions-csharp.md)]

articles/communication-services/quickstarts/voice-video-calling/includes/call-automation-media/play-audio-quickstart-csharp.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ By this point you should be familiar with starting calls, if you need to learn m
4747

4848
## Play audio
4949

50-
Once the call has been established, there are multiple options for how you may wish to play the audio. The first scenario is if you want to play it to the participant that has joined the call, while the second scenario is when you wish to play audio to all the participants in the call.
50+
Once the call has been established, there are multiple options for how you may wish to play the audio. You can play audio to the participant that has just joined the call or play audio to all the participants in the call.
5151

5252
## Play audio - Specific participant
5353

@@ -132,7 +132,7 @@ To learn more about other supported events, visit the [Call Automation overview
132132

133133
## Cancel play action
134134

135-
Cancel all media operations, all pending media operations will be canceled. This will also cancel other queued up play actions.
135+
Cancel all media operations, all pending media operations will be canceled. This action will also cancel other queued play actions.
136136

137137
```csharp
138138
var callMedia = callAutomationClient.GetCallConnection(<callConnectionId>).GetCallMedia();

articles/communication-services/quickstarts/voice-video-calling/includes/call-automation-media/play-audio-quickstart-java.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ By this point you should be familiar with starting calls, if you need to learn m
7777

7878
## Play audio
7979

80-
Once the call has been established, there are multiple options for how you may wish to play the audio. The first scenario is if you want to play it to the participant that has joined the call, while the second scenario is when you wish to play audio to all the participants in the call.
80+
Once the call has been established, there are multiple options for how you may wish to play the audio. You can play audio to the participant that has just joined the call or play audio to all the participants in the call.
8181

8282
## Play audio - Specific participant
8383

@@ -171,7 +171,7 @@ To learn more about other supported events, visit the [Call Automation overview
171171

172172
## Cancel play action
173173

174-
Cancel all media operations, all pending media operations will be canceled. This will also cancel other queued up play actions.
174+
Cancel all media operations, all pending media operations will be canceled. This action will also cancel other queued play actions.
175175

176176
```console
177177
var callConnection = callAutomationAsyncClient.getCallConnectionAsync(<callConnectionId>);

articles/communication-services/quickstarts/voice-video-calling/includes/call-automation/callflow-for-customer-interactions-csharp.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ ms.author: askaur
2525

2626
## Configure an Event Grid subscription
2727

28-
The Call Automation platform uses Event Grid to deliver the IncomingCall event to a subscription of your choice. For this guide, we will use a web hook subscription pointing to your NGROK application proxy address.
28+
The Call Automation platform uses Event Grid to deliver the IncomingCall event to a subscription of your choice. For this guide, we'll use a web hook subscription pointing to your NGROK application proxy address.
2929

3030
1. Locate and copy the following to be used in the armclient command-line statement below:
3131
- Azure subscription ID
@@ -43,11 +43,11 @@ The Call Automation platform uses Event Grid to deliver the IncomingCall event t
4343
ngrok http <https://localhost:<your_web_service_port>>
4444
```
4545

46-
This will produce a public URI you can use to receive the events from the Event Grid subscription.
46+
This command will produce a public URI you can use to receive the events from the Event Grid subscription.
4747

48-
5. Optional: Determine an API route path for the incoming call event together with your NGROK URI which will be used in the armclient command-line statement below, for example: `https://ff2f-75-155-253-232.ngrok.io/api/incomingcall`.
48+
5. Optional: Determine an API route path for the incoming call event together with your NGROK URI that will be used in the armclient command-line statement below, for example: `https://ff2f-75-155-253-232.ngrok.io/api/incomingcall`.
4949
6. Event Grid web hooks require a valid reachable endpoint before they can be created. As such, start your web service application and run the commands below.
50-
7. Since the `IncomingCall` event is not yet published in the portal, you must run the following command-line statements to configure your subscription:
50+
7. Since the `IncomingCall` event isn't yet published in the portal, you must run the following command-line statements to configure your subscription:
5151

5252
``` console
5353
armclient login
@@ -65,7 +65,7 @@ dotnet new web -n MyApplication
6565

6666
## Install the NuGet package
6767

68-
During the preview phase the NuGet package can be obtained by configuring your package manager to use the Azure SDK Dev Feed from [here](https://github.com/Azure/azure-sdk-for-net/blob/main/CONTRIBUTING.md#nuget-package-dev-feed)
68+
During the preview phase, the NuGet package can be obtained by configuring your package manager to use the Azure SDK Dev Feed from [here](https://github.com/Azure/azure-sdk-for-net/blob/main/CONTRIBUTING.md#nuget-package-dev-feed)
6969

7070
## Obtain your connection string
7171

@@ -155,5 +155,5 @@ app.Run();
155155
1. Place a call to the number you acquired in the Azure portal (see prerequisites above).
156156
2. Your Event Grid subscription to the `IncomingCall` should execute and call your web server.
157157
3. The call will be answered, and an asynchronous web hook callback will be sent to the NGROK callback URI.
158-
4. When the call is connected, a `CallConnected` event will be sent to your web server, wrapped in a `CloudEvent` schema and can be easily deserialized using the Call Automation SDK parser. At this point the application will request audio to be played in a loop to all participants on the call.
159-
5. When the audio file has played, a `PlayCompleted` event is received and the web server will make a request to add a participant to the call.
158+
4. When the call is connected, a `CallConnected` event will be sent to your web server, wrapped in a `CloudEvent` schema and can be easily deserialized using the Call Automation SDK parser. At this point, the application will request audio to be played in a loop to all participants on the call.
159+
5. When the audio file has played, a `PlayCompleted` event is received, and the web server will make a request to add a participant to the call.

0 commit comments

Comments
 (0)