diff --git a/articles/bastion/connect-vm-native-client-linux.md b/articles/bastion/connect-vm-native-client-linux.md index dc070c5a580d..a8effed85c4b 100644 --- a/articles/bastion/connect-vm-native-client-linux.md +++ b/articles/bastion/connect-vm-native-client-linux.md @@ -78,7 +78,7 @@ You can connect to a VM private IP address instead of the resource ID. Be aware Using the `az network bastion` command, replace `--target-resource-id` with `--target-ip-address` and the specified IP address to connect to your VM. The following example uses --ssh-key for the authentication method. ```azurecli -az network bastion ssh --name "" --resource-group "" --target-ip-addres "" --auth-type "ssh-key" --username "" --ssh-key "" +az network bastion ssh --name "" --resource-group "" --target-ip-address "" --auth-type "ssh-key" --username "" --ssh-key "" ``` ## Connect to a VM - tunnel command diff --git a/articles/bastion/diagnostic-logs.md b/articles/bastion/diagnostic-logs.md index a6b65c23245e..d04972e0c9e3 100644 --- a/articles/bastion/diagnostic-logs.md +++ b/articles/bastion/diagnostic-logs.md @@ -51,7 +51,7 @@ To access your diagnostics logs, you can directly use the storage account that y ```json { "time":"2019-10-03T16:03:34.776Z", - "resourceId":"/SUBSCRIPTIONS//RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.NETWORK/BASTIONHOSTS/MYBASTION-BASTION", + "resourceId":"/SUBSCRIPTIONS//RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.NETWORK/BASTIONHOSTS/MYBASTION-BASTION", "operationName":"Microsoft.Network/BastionHost/connect", "category":"BastionAuditLogs", "level":"Informational", @@ -62,8 +62,8 @@ To access your diagnostics logs, you can directly use the storage account that y "clientIpAddress":"131.107.159.86", "clientPort":24039, "protocol":"ssh", - "targetResourceId":"/SUBSCRIPTIONS//RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.COMPUTE/VIRTUALMACHINES/LINUX-KEY", - "subscriptionId":"", + "targetResourceId":"/SUBSCRIPTIONS//RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.COMPUTE/VIRTUALMACHINES/LINUX-KEY", + "subscriptionId":"", "message":"Successfully Connected.", "resourceType":"VM", "targetVMIPAddress":"172.16.1.5", @@ -72,7 +72,7 @@ To access your diagnostics logs, you can directly use the storage account that y }, "FluentdIngestTimestamp":"2019-10-03T16:03:34.0000000Z", "Region":"eastus", - "CustomerSubscriptionId":"" + "CustomerSubscriptionId":"" } ``` @@ -81,7 +81,7 @@ To access your diagnostics logs, you can directly use the storage account that y ```json { "time":"2019-10-03T16:03:34.776Z", - "resourceId":"/SUBSCRIPTIONS//RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.NETWORK/BASTIONHOSTS/MYBASTION-BASTION", + "resourceId":"/SUBSCRIPTIONS//RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.NETWORK/BASTIONHOSTS/MYBASTION-BASTION", "operationName":"Microsoft.Network/BastionHost/connect", "category":"BastionAuditLogs", "level":"Informational", @@ -92,8 +92,8 @@ To access your diagnostics logs, you can directly use the storage account that y "clientIpAddress":"131.107.159.86", "clientPort":24039, "protocol":"ssh", - "targetResourceId":"/SUBSCRIPTIONS//RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.COMPUTE/VIRTUALMACHINES/LINUX-KEY", - "subscriptionId":"", + "targetResourceId":"/SUBSCRIPTIONS//RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.COMPUTE/VIRTUALMACHINES/LINUX-KEY", + "subscriptionId":"", "message":"Login Failed", "resourceType":"VM", "targetVMIPAddress":"172.16.1.5", @@ -102,7 +102,7 @@ To access your diagnostics logs, you can directly use the storage account that y }, "FluentdIngestTimestamp":"2019-10-03T16:03:34.0000000Z", "Region":"eastus", - "CustomerSubscriptionId":"" + "CustomerSubscriptionId":"" } ``` diff --git a/articles/batch/batch-pool-compute-intensive-sizes.md b/articles/batch/batch-pool-compute-intensive-sizes.md index 153b4d31283b..afe3bad6b99b 100644 --- a/articles/batch/batch-pool-compute-intensive-sizes.md +++ b/articles/batch/batch-pool-compute-intensive-sizes.md @@ -85,7 +85,7 @@ To configure a specialized VM size for your Batch pool, you have several options ## Example: NVIDIA GPU drivers on Windows NC VM pool -To run CUDA applications on a pool of Windows NC nodes, you need to install NVDIA GPU drivers. The following sample steps use an application package to install the NVIDIA GPU drivers. You might choose this option if your workload depends on a specific GPU driver version. +To run CUDA applications on a pool of Windows NC nodes, you need to install NVIDIA GPU drivers. The following sample steps use an application package to install the NVIDIA GPU drivers. You might choose this option if your workload depends on a specific GPU driver version. 1. Download a setup package for the GPU drivers on Windows Server 2016 from the [NVIDIA website](https://www.nvidia.com/Download/index.aspx) - for example, [version 411.82](https://us.download.nvidia.com/Windows/Quadro_Certified/411.82/411.82-tesla-desktop-winserver2016-international.exe). Save the file locally using a short name like *GPUDriverSetup.exe*. 2. Create a zip file of the package. diff --git a/articles/batch/pool-endpoint-configuration.md b/articles/batch/pool-endpoint-configuration.md index 61b0e080bbfd..3498bb2e177e 100644 --- a/articles/batch/pool-endpoint-configuration.md +++ b/articles/batch/pool-endpoint-configuration.md @@ -116,7 +116,7 @@ namespace AzureBatch { pool.NetworkConfiguration = new NetworkConfiguration { - EndpointConfiguration = new PoolEndpointConfiguratio(new InboundNatPool[] + EndpointConfiguration = new PoolEndpointConfiguration(new InboundNatPool[] { new InboundNatPool("RDP", InboundEndpointProtocol.Tcp, 3389, 60000, 60099, new NetworkSecurityGroupRule[] { diff --git a/articles/batch/quick-create-cli.md b/articles/batch/quick-create-cli.md index a1482bfa4da7..dcca6f8a621f 100644 --- a/articles/batch/quick-create-cli.md +++ b/articles/batch/quick-create-cli.md @@ -178,7 +178,7 @@ AZ_BATCH_TASK_WORKING_DIR=/mnt/batch/tasks/workitems/myJob/job-1/myTask1/wd AZ_BATCH_NODE_SHARED_DIR=/mnt/batch/tasks/shared AZ_BATCH_TASK_USER=_azbatch AZ_BATCH_NODE_ROOT_DIR=/mnt/batch/tasks -AZ_BATCH_JOB_ID=myJobl +AZ_BATCH_JOB_ID=myJob AZ_BATCH_NODE_IS_DEDICATED=true AZ_BATCH_NODE_ID=tvm-257509324_2-20180703t215033z AZ_BATCH_POOL_ID=myPool diff --git a/articles/batch/resource-files.md b/articles/batch/resource-files.md index a1c60e0af430..f54fba8199cd 100644 --- a/articles/batch/resource-files.md +++ b/articles/batch/resource-files.md @@ -120,7 +120,7 @@ ResourceFile inputFile = ResourceFile.FromUrl(yourURLFromAzureStorage, ``` > [!Note] -> Managed identity authentication will only work with files in Azure Storage. The nanaged identity needs the `Storage Blob Data Reader` role assignment for the container the file is in, and it must also be [assigned to the Batch pool](managed-identity-pools.md). +> Managed identity authentication will only work with files in Azure Storage. The managed identity needs the `Storage Blob Data Reader` role assignment for the container the file is in, and it must also be [assigned to the Batch pool](managed-identity-pools.md). ## Tips and suggestions diff --git a/articles/batch/tutorial-parallel-dotnet.md b/articles/batch/tutorial-parallel-dotnet.md index 00c87439f7d6..b68ac7e011b5 100644 --- a/articles/batch/tutorial-parallel-dotnet.md +++ b/articles/batch/tutorial-parallel-dotnet.md @@ -144,7 +144,7 @@ BatchClient _batchClient = new BatchClient(batchUri, new DefaultAzureCredential( ### Upload input files -The app passes the `blobServerClient` object to the `CreateContainerIfNotExistc` method to create a storage container for the input files (MP4 format) and a container for the task output. +The app passes the `blobServerClient` object to the `CreateContainerIfNotExist` method to create a storage container for the input files (MP4 format) and a container for the task output. ```csharp CreateContainerIfNotExist(blobClient, inputContainerName); @@ -229,7 +229,7 @@ if (collection.Exists(poolId) == false) }, ApplicationPackages = { - new Azure.ResourceManager.Batch.Models.BatchApplicationPackageReference(new ResourceIdentifier(appPacakgeResourceID)) + new Azure.ResourceManager.Batch.Models.BatchApplicationPackageReference(new ResourceIdentifier(appPackageResourceID)) { Version = appPackageVersion, } diff --git a/articles/business-continuity-center/tutorial-monitor-alerts-metrics.md b/articles/business-continuity-center/tutorial-monitor-alerts-metrics.md index 43eb5384bb62..da8909b10fe2 100644 --- a/articles/business-continuity-center/tutorial-monitor-alerts-metrics.md +++ b/articles/business-continuity-center/tutorial-monitor-alerts-metrics.md @@ -26,7 +26,7 @@ To monitor the alerts, follow these steps: The count of all alert rules appears that have at least one or more fired alerts in the selected time range. - :::image type="content" source="./media/tutorial-monitor-alerts-metrics/view-triggered-alerts-in-selected-time-range.png" alt-text="Screemshot shows the triggered alerts in a selected time range." lightbox="./media/tutorial-monitor-alerts-metrics/view-triggered-alerts-in-selected-time-range.png"::: + :::image type="content" source="./media/tutorial-monitor-alerts-metrics/view-triggered-alerts-in-selected-time-range.png" alt-text="Screenshot shows the triggered alerts in a selected time range." lightbox="./media/tutorial-monitor-alerts-metrics/view-triggered-alerts-in-selected-time-range.png"::: 2. On **Alerts**, filter the list by *severity of alert*, *category of alert*, *time range* (up to last 15 days), and other parameters. diff --git a/articles/business-process-tracking/create-business-process.md b/articles/business-process-tracking/create-business-process.md index a3e7b47752dc..313119853b25 100644 --- a/articles/business-process-tracking/create-business-process.md +++ b/articles/business-process-tracking/create-business-process.md @@ -16,7 +16,7 @@ ms.date: 06/07/2024 > This capability is in preview and is subject to the > [Supplemental Terms of Use for Microsoft Azure Previews](https://azure.microsoft.com/support/legal/preview-supplemental-terms/). -To add business context around the Azure resources in an integration solution, you can visualize business processes flows for the tasks implemented by these resources. In Azure Business Process Tracking, a business process is a series of stages that represent the tasks that flow through a real-world business scenario. This business process also specifies a single business identifer or *transaction ID*, such as a ticket number, order number, case number, and so on, to identify a transaction that exists across all the stages in the business process and to correlate those stages together. +To add business context around the Azure resources in an integration solution, you can visualize business processes flows for the tasks implemented by these resources. In Azure Business Process Tracking, a business process is a series of stages that represent the tasks that flow through a real-world business scenario. This business process also specifies a single business identifier or *transaction ID*, such as a ticket number, order number, case number, and so on, to identify a transaction that exists across all the stages in the business process and to correlate those stages together. When you add a stage to your business process, you can also define other business property values to capture as data moves through each stage. You can then later map the transaction ID and other properties to specific operations and data outputs in Standard logic app workflows. For more information, see [What is Azure Business Process Tracking](overview.md)? @@ -89,7 +89,7 @@ After you define a business process, you can then map each stage to actual Azure | Property | Required | Value | Description | |----------|----------|-------|-------------| | **Transaction ID** | Yes | <*transaction-ID*> | This important and unique ID identifies a transaction, such as an order number, ticket number, case number, or another similar business identifier that's available across all stages in your business process.

This example uses the transaction ID named **TicketNumber** to correlate events across the different systems in the example business process, which include CRM, Work Order Management, and Marketing.

**Note**: Azure Business Process Tracking automatically includes and records the transaction timestamp so that you don't have to separately add this value. Although you can define only a single transaction ID when you create a business process, you can later define other business properties in each stage that you want to record. | - | **Data type** | Yes | <*transacton-ID-data-type*> | The data type for your transaction ID: **String** or **Integer**.

This example uses the **Integer** data type. | + | **Data type** | Yes | <*transaction-ID-data-type*> | The data type for your transaction ID: **String** or **Integer**.

This example uses the **Integer** data type. | The following example shows the sample transaction ID: diff --git a/articles/communication-services/concepts/analytics/logs/email-logs.md b/articles/communication-services/concepts/analytics/logs/email-logs.md index ffaa36e28721..59c156cd501e 100644 --- a/articles/communication-services/concepts/analytics/logs/email-logs.md +++ b/articles/communication-services/concepts/analytics/logs/email-logs.md @@ -108,7 +108,7 @@ By tracking these logs, you can ensure full visibility into your email delivery | `Category` | The log category of the event. The category is the granularity at which you can enable or disable logs on a particular resource. The properties that appear within the properties blob of an event are the same within a particular log category and resource type. | | `CorrelationID` | The ID for correlated events. Can be used to identify correlated events between multiple tables. For all Email operational logs, the CorrelationId is mapped to the MessageId, which is returned from a successful SendMail request. | | `RecipientId` | The email address for the targeted recipient. It is only present for recipient-level events. If this is a message-level event, the property will be empty. | -| `DeliveryStatus` | The terminal status of the message. Possible valuse for message-level event are: `Dropped`, `OutForDelivery`, `Queued`. Possible valuse for a recipient-level event are: `Delivered`, `Expanded`, `Failed`, `Quarantined`, `FilteredSpam`, `Suppressed`, `Bounced`. | +| `DeliveryStatus` | The terminal status of the message. Possible values for message-level event are: `Dropped`, `OutForDelivery`, `Queued`. Possible values for a recipient-level event are: `Delivered`, `Expanded`, `Failed`, `Quarantined`, `FilteredSpam`, `Suppressed`, `Bounced`. | | `SmtpStatusCode` | SMTP status code returned from the recipient email server in response to a send mail request. | `EnhancedSmtpStatusCode` | Enhanced SMTP status code returned from the recipient email server. | `SenderDomain` | The domain portion of the SenderAddress used in sending emails. diff --git a/articles/communication-services/concepts/analytics/logs/voice-and-video-logs.md b/articles/communication-services/concepts/analytics/logs/voice-and-video-logs.md index de0e1a5802ba..86cabe886b97 100644 --- a/articles/communication-services/concepts/analytics/logs/voice-and-video-logs.md +++ b/articles/communication-services/concepts/analytics/logs/voice-and-video-logs.md @@ -84,7 +84,7 @@ The call summary log contains data to help you identify key properties of all ca | `osVersion` | A string representing the operating system and version of each endpoint device. | | `participantTenantId` | The ID of the Microsoft tenant associated with the identity of the participant. The tenant can either be the Azure tenant that owns the Azure Communication Services resource or the Microsoft tenant of a Microsoft 365 identity. This field is used to guide cross-tenant redaction. | | `participantType` | Description of the participant as a combination of its client (Azure Communication Services or Teams), and its identity (Azure Communication Services or Microsoft 365). Possible values include: Azure Communication Services (Azure Communication Services identity and Azure Communication Services SDK), Teams (Teams identity and Teams client), Azure Communication Services as Teams external user (Azure Communication Services identity and Azure Communication Services SDK in Teams call or meeting), Azure Communication Services as Microsoft 365 user (Microsoft 365 identity and Azure Communication Services client), and Teams Voice Apps. | -| `pstnPartcipantCallType` | Represents the type and direction of PSTN participants including Emergency calling, direct routing, transfer, forwarding, and so on. | +| `pstnParticipantCallType` | Represents the type and direction of PSTN participants including Emergency calling, direct routing, transfer, forwarding, and so on. | | `ParticipantEndSubCode `| Represents the Calling SDK error subcode that the SDK emits (when relevant) for each `participantId` value. | | `ResultCategory `| Represents the category of the participant ending the call. It can be one of these 4 values: Success, ExpectedError, UnexpectedClientError, UnexpectedServerError. | diff --git a/articles/communication-services/concepts/call-automation/azure-communication-services-azure-cognitive-services-integration.md b/articles/communication-services/concepts/call-automation/azure-communication-services-azure-cognitive-services-integration.md index 37fc0f323aef..e9bfb0eced86 100644 --- a/articles/communication-services/concepts/call-automation/azure-communication-services-azure-cognitive-services-integration.md +++ b/articles/communication-services/concepts/call-automation/azure-communication-services-azure-cognitive-services-integration.md @@ -51,7 +51,7 @@ You'll need to connect your Azure Communication Services resource with the Azure [![Screenshot of Enable Managed Identity button.](./media/enabled-identity.png)](./media/enabled-identity.png#lightbox) 4. Enable system assigned identity. This action begins the creation of the identity; A pop-up notification appears notifying you that the request is being processed. - [![Screen shot of enable managed identiy.](./media/enable-system-identity.png)](./media/enable-system-identity.png#lightbox) + [![Screen shot of enable managed identity.](./media/enable-system-identity.png)](./media/enable-system-identity.png#lightbox) 5. Once the identity is enabled, you should see something similar. [![Screenshot of enabled identity.](./media/identity-saved.png)](./media/identity-saved.png#lightbox) diff --git a/articles/communication-services/concepts/call-automation/real-time-transcription.md b/articles/communication-services/concepts/call-automation/real-time-transcription.md index 320e473b8a1c..d28f940538b9 100644 --- a/articles/communication-services/concepts/call-automation/real-time-transcription.md +++ b/articles/communication-services/concepts/call-automation/real-time-transcription.md @@ -25,7 +25,7 @@ Out of the box Microsoft utilizes a Universal Language Model as a base model tha ### Improved customer experience Assist agents better understand customer needs and respond more quickly and accurately, leading to a better overall customer experience. -### Increased efficency +### Increased efficiency Help agents focus on the conversation rather than note-taking, allowing them to handle more calls and improve productivity ### Context for agents diff --git a/articles/communication-services/concepts/email-metrics.md b/articles/communication-services/concepts/email-metrics.md index 63f6926e99ff..e7516b8d85fe 100644 --- a/articles/communication-services/concepts/email-metrics.md +++ b/articles/communication-services/concepts/email-metrics.md @@ -40,12 +40,12 @@ The following dimensions are available on the `Email Service Delivery Status Upd | MessageStatus | Terminal state of the Delivered, Failed, Suppressed. Emails are suppressed when a user sends an email to an email address that is known not to exist. Sending emails to addresses that don't exist trigger a hard bounce. | | IsHardBounce | True when a message delivery failed due to a hard bounce or if an item was suppressed due to a previous hard bounce. | | SenderDomain | The domain portion of the senders email address. | -| SmtpStatusCode | Smpt error code from for failed deliveries. | +| SmtpStatusCode | Smtp error code from for failed deliveries. | | EnhancedSmtpStatusCode | The EnhancedSmtpStatusCode status code will be emitted if it's available. This status code provides other details not available with the SmtpStatusCode. | :::image type="content" source="./media/acs-email-delivery-status-hardbounce-metrics.png" alt-text="Screenshot showing the Email delivery status update metric - IsHardBounce."::: -:::image type="content" source="./media/acs-email-delivery-status-smtp-metrics.png" alt-text="Screenshot showing the Email delivery status update metric - SmptStatusCode."::: +:::image type="content" source="./media/acs-email-delivery-status-smtp-metrics.png" alt-text="Screenshot showing the Email delivery status update metric - SmtpStatusCode."::: ### Email Service API requests diff --git a/articles/communication-services/concepts/includes/enable-interoperability-for-teams-tenant.md b/articles/communication-services/concepts/includes/enable-interoperability-for-teams-tenant.md index 2430d962c63e..c388ba527677 100644 --- a/articles/communication-services/concepts/includes/enable-interoperability-for-teams-tenant.md +++ b/articles/communication-services/concepts/includes/enable-interoperability-for-teams-tenant.md @@ -37,7 +37,7 @@ You'll be informed about the modules that will be installed, which you can confi ### 2. Connect to Microsoft Teams module -When the module is installed and ready, you can connect to the MicrosftTeams module with the following command. You'll be prompted with an interactive window to log in. The user account that you're going to use needs to have Teams administrator permissions. Otherwise, you might get an `access denied` response in the next steps. +When the module is installed and ready, you can connect to the MicrosoftTeams module with the following command. You'll be prompted with an interactive window to log in. The user account that you're going to use needs to have Teams administrator permissions. Otherwise, you might get an `access denied` response in the next steps. ```script Connect-MicrosoftTeams diff --git a/articles/communication-services/concepts/includes/identifiers/identifiers-android.md b/articles/communication-services/concepts/includes/identifiers/identifiers-android.md index e7b375e41a78..83d83fe9eb03 100644 --- a/articles/communication-services/concepts/includes/identifiers/identifiers-android.md +++ b/articles/communication-services/concepts/includes/identifiers/identifiers-android.md @@ -132,7 +132,7 @@ else if (communicationIdentifier instanceof PhoneNumberIdentifier) { Log.i(tag, "Phone number: " + ((PhoneNumberIdentifier)communicationIdentifier).getPhoneNumber()); } else if (communicationIdentifier instanceof UnknownIdentifier) { - Log.i(tag, "Unkown user: " + ((UnknownIdentifier)communicationIdentifier).getId()); + Log.i(tag, "Unknown user: " + ((UnknownIdentifier)communicationIdentifier).getId()); } else { // be careful here whether you want to throw because a new SDK version diff --git a/articles/communication-services/concepts/includes/identifiers/identifiers-java.md b/articles/communication-services/concepts/includes/identifiers/identifiers-java.md index 22b14d7b6d4d..3cc4305628b6 100644 --- a/articles/communication-services/concepts/includes/identifiers/identifiers-java.md +++ b/articles/communication-services/concepts/includes/identifiers/identifiers-java.md @@ -132,7 +132,7 @@ else if (communicationIdentifier instanceof PhoneNumberIdentifier) { System.out.println("Phone number: " + ((PhoneNumberIdentifier)communicationIdentifier).getPhoneNumber()); } else if (communicationIdentifier instanceof UnknownIdentifier) { - System.out.println("Unkown user: " + ((UnknownIdentifier)communicationIdentifier).getId()); + System.out.println("Unknown user: " + ((UnknownIdentifier)communicationIdentifier).getId()); } else { // be careful here whether you want to throw because a new SDK version diff --git a/articles/communication-services/concepts/interop/guest/teams-administration.md b/articles/communication-services/concepts/interop/guest/teams-administration.md index a5324c6b4f85..63da0dc2c8e3 100644 --- a/articles/communication-services/concepts/interop/guest/teams-administration.md +++ b/articles/communication-services/concepts/interop/guest/teams-administration.md @@ -89,7 +89,7 @@ Teams administrators can use meeting templates to control meeting settings that ||Enable Watermarks|Specifies if watermarks are used for camera feeds and content that's shared on screen in the meeting. |Audio and video|Enable mic for attendees? | When off, you can unmute individual attendees as needed. ||Enable camera for attendees? | When on, meeting attendees can turn on video. -|Recording and transcription|Record meetings automatically| Speficy if the meeting is recorded automatically. +|Recording and transcription|Record meetings automatically| Specify if the meeting is recorded automatically. ||Who can record meetings?| Specifies who can record the meeting. |Roles|Notify when callers join and leave|A sound plays when someone calling in by phone joins or leaves the meeting. |Meeting engagement|Allow meeting chat| Specifies if the meeting chat is available. It can also be used to prevent chatting before and after the meeting. diff --git a/articles/communication-services/concepts/notifications.md b/articles/communication-services/concepts/notifications.md index 2e5f38defcfa..f29c3bc07a2f 100644 --- a/articles/communication-services/concepts/notifications.md +++ b/articles/communication-services/concepts/notifications.md @@ -28,7 +28,7 @@ Learn more about [event handling in Azure Communication Services](../../event-gr ## Deliver push notifications via Azure Notification Hubs > [!IMPORTANT] -> Azure Notification Hubs has announced that Firebase Cloud Messaging (FCM) legacy API will be deprecated in July 2024. This will affect all Azure Communiation Services Calling and Chat applications who send Android push notifications. Customers impacted will need to migrate their registrations from FCM legacy to FCM v1, and can start doing so in March 2024. For more information including migration steps, please see [Notifcation Hub documentation](../../notification-hubs/notification-hubs-gcm-to-fcm.md). +> Azure Notification Hubs has announced that Firebase Cloud Messaging (FCM) legacy API will be deprecated in July 2024. This will affect all Azure Communication Services Calling and Chat applications who send Android push notifications. Customers impacted will need to migrate their registrations from FCM legacy to FCM v1, and can start doing so in March 2024. For more information including migration steps, please see [Notification Hub documentation](../../notification-hubs/notification-hubs-gcm-to-fcm.md). You can connect an Azure Notification Hub to your Communication Services resource in order to automatically send push notifications to a user's mobile device when they receive an incoming call or to notify them about missed chat activity. You should use these push notifications to wake up your application from the background and display UI that lets the user accept or decline the call or read the newly received chat message. diff --git a/articles/communication-services/concepts/sms/sms-faq.md b/articles/communication-services/concepts/sms/sms-faq.md index 7cdb6b3e1a1e..51e8859dea69 100644 --- a/articles/communication-services/concepts/sms/sms-faq.md +++ b/articles/communication-services/concepts/sms/sms-faq.md @@ -179,7 +179,7 @@ New limits are as follows: After submission of the form, we coordinate with our downstream peer to get the application verified by the toll-free messaging aggregator. While we're reviewing your application, we may reach out to you for more information. - From Application Submitted to Pending = **1-5 business days** -- From Pending to Verdict (Verfied/Rejected/More info needed) = **4-5 weeks**. The toll-free aggregator is currently facing a high volume of applications, so new applications can take around eight weeks to be approved. +- From Pending to Verdict (Verified/Rejected/More info needed) = **4-5 weeks**. The toll-free aggregator is currently facing a high volume of applications, so new applications can take around eight weeks to be approved. The whole toll-free verification process takes about **5-6 weeks**. These timelines are subject to change depending on the volume of applications to the toll-free messaging aggregator and the [quality](#what-is-considered-a-high-quality-toll-free-verification-application) of your application. The toll-free aggregator is currently facing a high volume of applications due to which applications can take around eight weeks to get approved. @@ -203,7 +203,7 @@ Pointers to ensure you're submitting a high quality application: ### What are the ineligible use cases for toll-free verification? -| High-Risk Financial Services | Get Rich Quick Schemes | Debt Forgiveness | Illegal Substances/Activites | General | +| High-Risk Financial Services | Get Rich Quick Schemes | Debt Forgiveness | Illegal Substances/Activities | General | |---------------------------------|-----------------------------------|----------------------------------|------------------------------|--------------------------| | Payday loans | Debt consolidation | Work from home programs | Cannabis | Phishing | | Short-term, high-interest loans | Debt reduction | Risk investment opportunities | Alcohol | Fraud or scams | diff --git a/articles/communication-services/concepts/telephony/emergency-calling-concept.md b/articles/communication-services/concepts/telephony/emergency-calling-concept.md index 804ccbed728f..df6da434934e 100644 --- a/articles/communication-services/concepts/telephony/emergency-calling-concept.md +++ b/articles/communication-services/concepts/telephony/emergency-calling-concept.md @@ -15,7 +15,7 @@ ms.subservice: pstn [!INCLUDE [Emergency Calling Notice](../../includes/emergency-calling-notice-include.md)] -You can use the Azure Communication Services Calling SDK to add Enhanced Emergency dialing and Public Safety Answering Point (PSAP) callback support to your applications in the United States (US), Puerto Rico (PR), the United Kingdom (GB), Canada (CA), Denmark (DK) and Australiua (AU). The capability to dial 911 (in US, PR, and CA), to dial 112 (in DK), to dial 000 (in AU) and to dial 999 or 112 (in GB) and receive a callback might be a requirement for your application. Verify the emergency calling requirements with your legal counsel. +You can use the Azure Communication Services Calling SDK to add Enhanced Emergency dialing and Public Safety Answering Point (PSAP) callback support to your applications in the United States (US), Puerto Rico (PR), the United Kingdom (GB), Canada (CA), Denmark (DK) and Australia (AU). The capability to dial 911 (in US, PR, and CA), to dial 112 (in DK), to dial 000 (in AU) and to dial 999 or 112 (in GB) and receive a callback might be a requirement for your application. Verify the emergency calling requirements with your legal counsel. Calls to an emergency number are routed over the Microsoft network. Microsoft assigns a temporary phone number as the Call Line Identity (CLI) when a user places an emergency call from US, PR, GB, CA, DK or AU. Microsoft temporarily maintains a mapping of the phone number to the caller's identity. diff --git a/articles/communication-services/concepts/telephony/trial-phone-numbers-faq.md b/articles/communication-services/concepts/telephony/trial-phone-numbers-faq.md index 6673c5c1c62b..e9a2d4e0919a 100644 --- a/articles/communication-services/concepts/telephony/trial-phone-numbers-faq.md +++ b/articles/communication-services/concepts/telephony/trial-phone-numbers-faq.md @@ -49,7 +49,7 @@ Verifying the recipient phone number is a security measure that ensures the tria The verification process involves sending a one-time passcode via SMS to the recipient phone number. The recipient needs to enter this code in the Azure portal to complete the verification. ### From where can I verify phone numbers? -Currently, only phone numbers that originate from the United States (i.e., have a +1 preffix) can be verified for use with trial phone numbers. +Currently, only phone numbers that originate from the United States (i.e., have a +1 prefix) can be verified for use with trial phone numbers. ### Can I verify multiple recipient phone numbers for the same trial phone number? Currently the trial phone number can be verified for up to three recipient phone numbers. If you need to make calls to more numbers, then you'll need to [purchase a phone number](../../quickstarts/telephony/get-phone-number.md) diff --git a/articles/communication-services/concepts/voice-video-calling/about-call-types.md b/articles/communication-services/concepts/voice-video-calling/about-call-types.md index 60be5eb49d6f..bea0cd61cbb3 100644 --- a/articles/communication-services/concepts/voice-video-calling/about-call-types.md +++ b/articles/communication-services/concepts/voice-video-calling/about-call-types.md @@ -50,7 +50,7 @@ We support H.264 (MPEG-4) video codec. | **Sending video** | 720P | 720P | 720P | 1080P | | **Sending screen share** | 1080P | 1080P | 1080P | 1080P | -The resolution can vary depending on the number of participants on a call, the amount of bandwidth available to the client, hardware capabilities of local participant who renders remote video streans and other overall call parameters. +The resolution can vary depending on the number of participants on a call, the amount of bandwidth available to the client, hardware capabilities of local participant who renders remote video streams and other overall call parameters. ## Next steps diff --git a/articles/communication-services/concepts/voice-video-calling/calling-sdk-features.md b/articles/communication-services/concepts/voice-video-calling/calling-sdk-features.md index 098b3cee081c..b6c5dd35c809 100644 --- a/articles/communication-services/concepts/voice-video-calling/calling-sdk-features.md +++ b/articles/communication-services/concepts/voice-video-calling/calling-sdk-features.md @@ -177,13 +177,13 @@ The Azure Communication Services Calling SDK supports the following streaming co \* Starting from Azure Communication Services Web Calling SDK version [1.16.3](https://github.com/Azure/Communication/blob/master/releasenotes/acs-javascript-calling-library-release-notes.md#1163-stable-2023-08-24) -While the Calling SDK doesn't enforce these limits, your users might experience performance degradation if they're exceeded. Use the API of [Optimal Video Count](../../how-tos/calling-sdk/manage-video.md?pivots=platform-web#remote-video-quality) to determine how many current incoming video streams your web environment can support. To properly support 16 incoming videos the computer should have a mimimum of 16GB RAM and a 4-core or greater CPU that is no older than 3 years old +While the Calling SDK doesn't enforce these limits, your users might experience performance degradation if they're exceeded. Use the API of [Optimal Video Count](../../how-tos/calling-sdk/manage-video.md?pivots=platform-web#remote-video-quality) to determine how many current incoming video streams your web environment can support. To properly support 16 incoming videos the computer should have a minimum of 16GB RAM and a 4-core or greater CPU that is no older than 3 years old ## Supported video resolutions The Azure Communication Services Calling SDK automatically adjusts resolutions of video and screen share streams during the call. > [!NOTE] -> The resolution can vary depending on the number of participants on a call, the amount of bandwidth available to the client, hardware capabilities of local participant who renders remote video streans and other overall call parameters. +> The resolution can vary depending on the number of participants on a call, the amount of bandwidth available to the client, hardware capabilities of local participant who renders remote video streams and other overall call parameters. The Azure Communication Services Calling SDK supports sending following video resolutions diff --git a/articles/communication-services/concepts/voice-video-calling/includes/media-stats/media-stats-android.md b/articles/communication-services/concepts/voice-video-calling/includes/media-stats/media-stats-android.md index 602354f3cec0..6ddfdf04d46f 100644 --- a/articles/communication-services/concepts/voice-video-calling/includes/media-stats/media-stats-android.md +++ b/articles/communication-services/concepts/voice-video-calling/includes/media-stats/media-stats-android.md @@ -45,7 +45,7 @@ mediaStatisticsCallFeature.addOnReportReceivedListener(handleReportReceivedListe // Optionally, set the interval for media statistics report generation mediaStatisticsCallFeature.updateReportIntervalInSeconds(15); -private void handleReportReceivedListener(MediaStatisticssReportEvent args) { +private void handleReportReceivedListener(MediaStatisticsReportEvent args) { // Obtain the media statistics report instance MediaStatisticsReport report = args.getReport(); diff --git a/articles/communication-services/concepts/voice-video-calling/includes/media-stats/media-stats-web.md b/articles/communication-services/concepts/voice-video-calling/includes/media-stats/media-stats-web.md index c842c7da37fd..c90d031b89af 100644 --- a/articles/communication-services/concepts/voice-video-calling/includes/media-stats/media-stats-web.md +++ b/articles/communication-services/concepts/voice-video-calling/includes/media-stats/media-stats-web.md @@ -237,7 +237,7 @@ Compared to the previous beta versions, we also made some minor changes to the A In the previous beta versions, `pairRttInMs`, `availableBitrate` were included in audio, video, and screenShare statistics. Now these metrics are separated into transport metrics. -We introduced `packets` and `packetsLost` metric fields in audio, video, screenShare statistics. These metrics are useful for calculating the total number of packets sent or recieved between two different time points. +We introduced `packets` and `packetsLost` metric fields in audio, video, screenShare statistics. These metrics are useful for calculating the total number of packets sent or received between two different time points. The `frameRateOutput` in video and screenShare statistics is removed. You can use `frameRateDecoded` instead. diff --git a/articles/communication-services/concepts/voice-video-calling/pre-call-diagnostics.md b/articles/communication-services/concepts/voice-video-calling/pre-call-diagnostics.md index 7126e09df537..ce94f07794ad 100644 --- a/articles/communication-services/concepts/voice-video-calling/pre-call-diagnostics.md +++ b/articles/communication-services/concepts/voice-video-calling/pre-call-diagnostics.md @@ -15,7 +15,7 @@ ms.service: azure-communication-services [!INCLUDE [Public Preview Disclaimer](../../includes/public-preview-include.md)] -The pre-call API feature enables developers to programmatically validate a client’s readiness to join an Azure Communication Services call. You can only access pre-call features using the Calling SDK. The pre-call diagnostic feature provides multiple diagnostics including device, connection, and call quality. The pre-call diagnotic feature is available only for Web (JavaScript). We plan to enable these capabilities across platforms in the future. Provide us with [feedback](../../support.md) about which platforms you want to see pre-call diagnostics enabled. +The pre-call API feature enables developers to programmatically validate a client’s readiness to join an Azure Communication Services call. You can only access pre-call features using the Calling SDK. The pre-call diagnostic feature provides multiple diagnostics including device, connection, and call quality. The pre-call diagnostic feature is available only for Web (JavaScript). We plan to enable these capabilities across platforms in the future. Provide us with [feedback](../../support.md) about which platforms you want to see pre-call diagnostics enabled. ## Prerequisites diff --git a/articles/communication-services/resources/troubleshooting/voice-video-calling/general-troubleshooting-strategies/includes/webjs-client-code-subcode.md b/articles/communication-services/resources/troubleshooting/voice-video-calling/general-troubleshooting-strategies/includes/webjs-client-code-subcode.md index 2a942d2b22ff..7524f95c9931 100644 --- a/articles/communication-services/resources/troubleshooting/voice-video-calling/general-troubleshooting-strategies/includes/webjs-client-code-subcode.md +++ b/articles/communication-services/resources/troubleshooting/voice-video-calling/general-troubleshooting-strategies/includes/webjs-client-code-subcode.md @@ -46,7 +46,7 @@ For client errors, if the resultCategories property is `ExpectedError`, the erro | 41041 | 400| Failed to stop screen share, screen share is already stopped. | ExpectedError | Learn more about [how to start and stop screen sharing while on a call](../../../../../how-tos/calling-sdk/manage-video.md?pivots=platform-web#start-and-stop-screen-sharing-while-on-a-call) | | 41048 | 410| Failed to start video during call setup process. Ensure to allow video permissions in the browser's settings and in the OS settings, and ensure the camera device isn't being used by another process. | UnexpectedClientError |The camera device may be disabled in the system.
Camera is being used by another process.

| | 41056 | 412| Failed to start or join to the call, Teams Enterprise voice policy isn't enabled for this Azure Communication Services resource. Follow the tutorial online to enable it. | ExpectedError |See on [how to enable users for Enterprise Voice online and Phone System Voicemail](/skypeforbusiness/skype-for-business-hybrid-solutions/plan-your-phone-system-cloud-pbx-solution/enable-users-for-enterprise-voice-online-and-phone-system-voicemail) to enable Teams Enterprise voice policy| -| 41071 | 412| Failed to start screen share, call isn't in Connected state. Subscribe to the Call's 'statteChanged' event to know when the call is connected. | ExpectedError |Helpful links:
- [Check call properties](../../../../../how-tos/calling-sdk/manage-calls.md?pivots=platform-web#check-call-properties)
- [Subscribe to SDK events](../../../../../how-tos/calling-sdk/events.md?pivots=platform-web)| +| 41071 | 412| Failed to start screen share, call isn't in Connected state. Subscribe to the Call's 'stateChanged' event to know when the call is connected. | ExpectedError |Helpful links:
- [Check call properties](../../../../../how-tos/calling-sdk/manage-calls.md?pivots=platform-web#check-call-properties)
- [Subscribe to SDK events](../../../../../how-tos/calling-sdk/events.md?pivots=platform-web)| | 41073 | 412| Failed to get or set custom MediaStream, this functionality is currently disabled by Azure Communication Services. | ExpectedError || | 43000 | 412| Failed to start video, video device is being used by another process/application. Stop your camera from being used in the other process/application and try again. | ExpectedError | Understand more about [how to best deal with a camera being used by another process](../../../../../concepts/best-practices.md?tabs=ios&pivots=platform-web#camera-being-used-by-another-process)| | 43001 | 403| Failed to start video, permission wasn't granted to use selected video device. Ensure video device permissions are allowed in the browser's settings and in the system's settings. | ExpectedError |Ensure camera permissions are allowed in the browser settings and device system settings.
Ensure the cameras aren't disabled in the device system settings.
On macOS, ensure screen recording is allowed from the system settings.

Helpful links:
- [Request device permissions](../../../../../concepts/best-practices.md?tabs=ios&pivots=platform-web#request-device-permissions)-
[Screen sharing permissions on macOS](../../../../../concepts/best-practices.md?tabs=ios&pivots=platform-web#request-device-permissions)
- [Enumerating or accessing devices for Safari on macOS and iOS](../../../../../concepts/known-issues.md#enumerating-or-accessing-devices-for-safari-on-macos-and-ios) | diff --git a/articles/communication-services/resources/troubleshooting/voice-video-calling/includes/codes/calling-sdk.md b/articles/communication-services/resources/troubleshooting/voice-video-calling/includes/codes/calling-sdk.md index e20599b918ff..4c11daf73833 100644 --- a/articles/communication-services/resources/troubleshooting/voice-video-calling/includes/codes/calling-sdk.md +++ b/articles/communication-services/resources/troubleshooting/voice-video-calling/includes/codes/calling-sdk.md @@ -62,7 +62,7 @@ For client errors, if the resultCategories property is `ExpectedError`, the erro | 41041 | 400 | Failed to stop screen share, screen share is already stopped. | ExpectedError | Learn more about [how to start and stop screen sharing while on a call](../../../../../how-tos/calling-sdk/manage-video.md?pivots=platform-web#start-and-stop-screen-sharing-while-on-a-call) | | 41048 | 410 | Failed to start video during call setup process. Ensure to allow video permissions in the browser's settings and in the OS settings, and ensure the camera device isn't being used by another process. | UnexpectedClientError | - The camera device might be disabled in the system.
- Camera is being used by another process.| | 41056 | 412 | Failed to start or join to the call, Teams Enterprise voice policy isn't enabled for this Azure Communication Services resource. Follow the tutorial online to enable it. | ExpectedError | See on [how to enable users for Enterprise Voice online and Phone System Voicemail](/skypeforbusiness/skype-for-business-hybrid-solutions/plan-your-phone-system-cloud-pbx-solution/enable-users-for-enterprise-voice-online-and-phone-system-voicemail) to enable Teams Enterprise voice policy| -| 41071 | 412 | Failed to start screen share, call isn't in Connected state. Subscribe to the Call's `statteChanged` event to know when the call is connected. | ExpectedError |Helpful links:
- [Check call properties](../../../../../how-tos/calling-sdk/manage-calls.md?pivots=platform-web#check-call-properties)
- [Subscribe to SDK events](../../../../../how-tos/calling-sdk/events.md?pivots=platform-web)| +| 41071 | 412 | Failed to start screen share, call isn't in Connected state. Subscribe to the Call's `stateChanged` event to know when the call is connected. | ExpectedError |Helpful links:
- [Check call properties](../../../../../how-tos/calling-sdk/manage-calls.md?pivots=platform-web#check-call-properties)
- [Subscribe to SDK events](../../../../../how-tos/calling-sdk/events.md?pivots=platform-web)| | 41073 | 412 | Failed to get or set custom MediaStream, this functionality is currently disabled by Azure Communication Services. | ExpectedError || | 43000 | 412 | Failed to start video, video device is being used by another process/application. Stop your camera from being used in the other process/application and try again. | ExpectedError | Understand more about [how to best deal with a camera being used by another process](../../../../../concepts/best-practices.md?tabs=ios&pivots=platform-web#manage-the-behavior-of-a-camera-that-another-process-is-using)| | 43001 | 403 | Failed to start video, permission wasn't granted to use selected video device. Ensure video device permissions are allowed in the browser's settings and in the system's settings. | ExpectedError |Ensure camera permissions are allowed in the browser settings and device system settings.
Ensure the cameras aren't disabled in the device system settings.
On macOS, ensure screen recording is allowed from the system settings.

Helpful links:
- [Request device permissions](../../../../../concepts/best-practices.md?tabs=ios&pivots=platform-web#request-device-permissions)-
[Screen sharing permissions on macOS](../../../../../concepts/best-practices.md?tabs=ios&pivots=platform-web#request-device-permissions)
- [Enumerating or accessing devices for Safari on macOS and iOS](../../../../../concepts/known-issues.md#enumerating-or-accessing-devices-for-safari-on-macos-and-ios) | diff --git a/articles/communication-services/resources/troubleshooting/voice-video-calling/references/ufd/camera-permission-denied.md b/articles/communication-services/resources/troubleshooting/voice-video-calling/references/ufd/camera-permission-denied.md index 5a2a48daa2d6..9a3bf9b5b462 100644 --- a/articles/communication-services/resources/troubleshooting/voice-video-calling/references/ufd/camera-permission-denied.md +++ b/articles/communication-services/resources/troubleshooting/voice-video-calling/references/ufd/camera-permission-denied.md @@ -21,7 +21,7 @@ The `cameraPermissionDenied` UFD event with a `true` value occurs when the SDK d | value type | DiagnosticFlag | | possible values | true, false | -## Example code to catch a cameraPermissionDenided UFD event +## Example code to catch a cameraPermissionDenied UFD event ```typescript call.feature(Features.UserFacingDiagnostics).media.on('diagnosticChanged', (diagnosticInfo) => { if (diagnosticInfo.diagnostic === 'cameraPermissionDenied') { diff --git a/articles/communication-services/resources/troubleshooting/voice-video-calling/references/ufd/network-receive-quality.md b/articles/communication-services/resources/troubleshooting/voice-video-calling/references/ufd/network-receive-quality.md index 673f813a643f..3b353d347182 100644 --- a/articles/communication-services/resources/troubleshooting/voice-video-calling/references/ufd/network-receive-quality.md +++ b/articles/communication-services/resources/troubleshooting/voice-video-calling/references/ufd/network-receive-quality.md @@ -1,7 +1,7 @@ --- title: Understanding networkReceiveQuality UFD - User Facing Diagnostics titleSuffix: Azure Communication Services - Troubleshooting Guide -description: Overview and detiled reference of networkReceiveQuality UFD +description: Overview and detailed reference of networkReceiveQuality UFD author: sloanster ms.author: micahvivion diff --git a/articles/communication-services/samples/email-detect-sensitive-content.md b/articles/communication-services/samples/email-detect-sensitive-content.md index f22870290f6c..88d5181f8cb8 100644 --- a/articles/communication-services/samples/email-detect-sensitive-content.md +++ b/articles/communication-services/samples/email-detect-sensitive-content.md @@ -138,7 +138,7 @@ Loop through the content to check for any sensitive data. Start the sensitivity Add the following code into the `AnalyzeSensitiveData` function following the line that creates the `TextAnalyticsClient` variable. ```csharp -bool senstiveDataDetected = false; // we start with a baseline that of no sensitive data +bool sensitiveDataDetected = false; // we start with a baseline that of no sensitive data var actions = new TextAnalyticsActions { RecognizePiiEntitiesActions = new List { new RecognizePiiEntitiesAction() } @@ -164,7 +164,7 @@ await foreach (var documentResults in operation.Value) { if (document.Entities.Count > 0) { - senstiveDataDetected = true; // Sensitive data detected + sensitiveDataDetected = true; // Sensitive data detected } } @@ -173,7 +173,7 @@ await foreach (var documentResults in operation.Value) } } -return senstiveDataDetected; +return sensitiveDataDetected; ``` ## Add function that checks for inappropriate content diff --git a/articles/communication-services/samples/includes/android-calling-hero.md b/articles/communication-services/samples/includes/android-calling-hero.md index b5b413118949..cff1989ada30 100644 --- a/articles/communication-services/samples/includes/android-calling-hero.md +++ b/articles/communication-services/samples/includes/android-calling-hero.md @@ -80,7 +80,7 @@ With additional configuration, this sample supports connecting to an **Microsoft - [Register your app under Microsoft Entra ID (using Android platform settings)](/entra/identity-platform/tutorial-v2-android) - [Configure your App Service or Azure Functions app to use Microsoft Entra login](../../../app-service/configure-authentication-provider-aad.md) -2. Go to your registered app overview page under Microsoft Entra App Registrations. Take note of the `Package name`, `Signature hash`, `MSAL Configutaion`. +2. Go to your registered app overview page under Microsoft Entra App Registrations. Take note of the `Package name`, `Signature hash`, `MSAL Configuration`. :::image type="content" source="../media/calling/aad-overview-android.png" alt-text="Microsoft Entra configuration on Azure portal."::: diff --git a/articles/communication-services/tutorials/add-chat-push-notifications.md b/articles/communication-services/tutorials/add-chat-push-notifications.md index 87cf5f289658..13046f084273 100644 --- a/articles/communication-services/tutorials/add-chat-push-notifications.md +++ b/articles/communication-services/tutorials/add-chat-push-notifications.md @@ -182,7 +182,7 @@ In the protocol extension, the Chat SDK provides an implementation of the `decry 2. Download the [GitHub repository for sample apps](https://github.com/Azure-Samples/communication-services-ios-quickstarts/tree/main/add-chat-push-notifications-auto-renew). -3. Put User A's `` and `` values into *AppSettings.plist*. +3. Put User A's `` and `` values into *AppSettings.plist*. 4. Set **Enable Bitcode** to **No** for two Pod targets: **AzureCommunicationChat** and **Trouter**. diff --git a/articles/communication-services/tutorials/audio-quality-enhancements/add-noise-supression.md b/articles/communication-services/tutorials/audio-quality-enhancements/add-noise-supression.md index 0c47386cef7e..cbce8d03d2ff 100644 --- a/articles/communication-services/tutorials/audio-quality-enhancements/add-noise-supression.md +++ b/articles/communication-services/tutorials/audio-quality-enhancements/add-noise-supression.md @@ -28,5 +28,5 @@ zone_pivot_groups: acs-plat-web-ios-android-windows ::: zone-end ::: zone pivot="platform-windows" -[!INCLUDE [Audio effects for Windos](./includes/windows.md)] +[!INCLUDE [Audio effects for Windows](./includes/windows.md)] ::: zone-end diff --git a/articles/communication-services/tutorials/call-readiness/call-readiness-tutorial-part-1-browser-support.md b/articles/communication-services/tutorials/call-readiness/call-readiness-tutorial-part-1-browser-support.md index 98ef47894af3..2c31f93feac7 100644 --- a/articles/communication-services/tutorials/call-readiness/call-readiness-tutorial-part-1-browser-support.md +++ b/articles/communication-services/tutorials/call-readiness/call-readiness-tutorial-part-1-browser-support.md @@ -164,7 +164,7 @@ import { Modal } from '@fluentui/react'; /** * Modal dialog that shows a Browser Version Unsupported Prompt - * Use the `onTroubleShootingClick` argument to redirect the user to further troublshooting. + * Use the `onTroubleShootingClick` argument to redirect the user to further troubleshooting. * Use the `onContinueAnywayClick` argument to allow the user to continue to the next step even though they are on an unsupported browser version. */ export const BrowserVersionUnsupportedPrompt = (props: { isOpen: boolean, onContinueAnyway:() => void }): JSX. Element => ( @@ -178,7 +178,7 @@ export const BrowserVersionUnsupportedPrompt = (props: { isOpen: boolean, onCont /** * Modal dialog that shows a Browser Unsupported Prompt - * Use the `onTroubleShootingClick` argument to redirect the user to further troublshooting. + * Use the `onTroubleShootingClick` argument to redirect the user to further troubleshooting. */ export const BrowserUnsupportedPrompt = (props: { isOpen: boolean }): JSX.Element => ( @@ -190,7 +190,7 @@ export const BrowserUnsupportedPrompt = (props: { isOpen: boolean }): JSX.Elemen /** * Modal dialog that shows an Operating System Unsupported Prompt - * Use the `onTroubleShootingClick` argument to redirect the user to further troublshooting. + * Use the `onTroubleShootingClick` argument to redirect the user to further troubleshooting. */ export const OperatingSystemUnsupportedPrompt = (props: { isOpen: boolean }): JSX.Element => ( diff --git a/articles/communication-services/tutorials/call-readiness/call-readiness-tutorial-part-2-requesting-device-access.md b/articles/communication-services/tutorials/call-readiness/call-readiness-tutorial-part-2-requesting-device-access.md index b602ba19423f..dcefaf96f88e 100644 --- a/articles/communication-services/tutorials/call-readiness/call-readiness-tutorial-part-2-requesting-device-access.md +++ b/articles/communication-services/tutorials/call-readiness/call-readiness-tutorial-part-2-requesting-device-access.md @@ -56,7 +56,7 @@ export const PermissionsDeniedPrompt = (props: { isOpen: boolean }): JSX.Element ); -/** Base component utilitzed by the above prompts for better code separation. */ +/** Base component utilized by the above prompts for better code separation. */ const PermissionsModal = (props: { isOpen: boolean, kind: "denied" | "request" | "check" }): JSX.Element => ( [!IMPORTANT] -> Azure Communication Services doesn't provide a file storage service. You need to use your own file storage service for sharing files. For the pupose of this tutorial, we're using Azure Blob Storage.\*\* +> Azure Communication Services doesn't provide a file storage service. You need to use your own file storage service for sharing files. For the purpose of this tutorial, we're using Azure Blob Storage.\*\* ## Download code @@ -257,7 +257,7 @@ const uploadFileToAzureBlob = async (uploadTask: AttachmentUploadTask) => { url: uri, data: formData, onUploadProgress: (p) => { - // Optionally, you can update the file upload progess. + // Optionally, you can update the file upload progress. uploadTask.notifyUploadProgressChanged(p.loaded / p.total); }, }); diff --git a/articles/communication-services/tutorials/includes/end-of-call-survey-web.md b/articles/communication-services/tutorials/includes/end-of-call-survey-web.md index 6ee95ef462c5..e213b247aa91 100644 --- a/articles/communication-services/tutorials/includes/end-of-call-survey-web.md +++ b/articles/communication-services/tutorials/includes/end-of-call-survey-web.md @@ -161,13 +161,13 @@ Screenshare. However, each API value can be customized from a minimum of ## Custom questions In addition to using the End of Call Survey API, you can create your own survey questions and incorporate them with the End of Call Survey results. Below you find steps to incorporate your own customer questions into a survey and query the results of the End of Call Survey API and your own survey questions. - [Create App Insight resource](/azure/azure-monitor/app/create-workspace-resource#create-a-workspace-based-resource). -- Embed Azure AppInsights into your application [Click here to know more about App Insight initialization using plain JavaScript](/azure/azure-monitor/app/javascript-sdk). Alternatively, you can use NPM to get the App Insights dependences. [Click here to know more about App Insight initialization using NPM](/azure/azure-monitor/app/javascript-sdk-configuration). +- Embed Azure AppInsights into your application [Click here to know more about App Insight initialization using plain JavaScript](/azure/azure-monitor/app/javascript-sdk). Alternatively, you can use NPM to get the App Insights dependencies. [Click here to know more about App Insight initialization using NPM](/azure/azure-monitor/app/javascript-sdk-configuration). - Build a UI in your application that serves custom questions to the user and gather their input, lets assume that your application gathered responses as a string in the `improvementSuggestion` variable - Submit survey results to ACS and send user response using App Insights: ``` javascript currentCall.feature(SDK.Features.CallSurvey).submitSurvey(survey).then(res => { - // `improvementSuggesstion` contains custom, user response + // `improvementSuggestion` contains custom, user response if (improvementSuggestion !== '') { appInsights.trackEvent({ name: "CallSurvey", properties: { diff --git a/articles/communication-services/tutorials/includes/hmac-header-csharp.md b/articles/communication-services/tutorials/includes/hmac-header-csharp.md index 7c4f00de072e..4cfe9ee8bfba 100644 --- a/articles/communication-services/tutorials/includes/hmac-header-csharp.md +++ b/articles/communication-services/tutorials/includes/hmac-header-csharp.md @@ -113,7 +113,7 @@ Replace `resourceEndpoint` with your real resource endpoint value. ## Create a content hash -The content hash is a part of your HMAC signature. Use the following code to compute the content hash. You can add this method to `Progam.cs` under the `Main` method. +The content hash is a part of your HMAC signature. Use the following code to compute the content hash. You can add this method to `Program.cs` under the `Main` method. ```csharp static string ComputeContentHash(string content) diff --git a/articles/communication-services/tutorials/includes/twilio-to-acs-chat-java-tutorial.md b/articles/communication-services/tutorials/includes/twilio-to-acs-chat-java-tutorial.md index 536360da61c8..c373c045b852 100644 --- a/articles/communication-services/tutorials/includes/twilio-to-acs-chat-java-tutorial.md +++ b/articles/communication-services/tutorials/includes/twilio-to-acs-chat-java-tutorial.md @@ -116,7 +116,7 @@ Twilio.init(accountSid, authToken); #### Azure Communication Services -To create a chat client, use the Communications Service endpoint and the access token that was generated as part of prerequisite steps. User access tokens enable you to build client applications that directly authenticate to Azure Communication Services. Once you generate these tokens on your server, pass them back to a client device. You need to use the `CommunicationTokenCredentia`l class from the Common SDK to pass the token to your chat client. +To create a chat client, use the Communications Service endpoint and the access token that was generated as part of prerequisite steps. User access tokens enable you to build client applications that directly authenticate to Azure Communication Services. Once you generate these tokens on your server, pass them back to a client device. You need to use the `CommunicationTokenCredential` class from the Common SDK to pass the token to your chat client. Learn more about [Chat Architecture](../../concepts/chat/concepts.md) diff --git a/articles/communication-services/tutorials/includes/twilio-to-acs-video-ios-tutorial.md b/articles/communication-services/tutorials/includes/twilio-to-acs-video-ios-tutorial.md index 50948b0dbb6f..7e665145a02a 100644 --- a/articles/communication-services/tutorials/includes/twilio-to-acs-video-ios-tutorial.md +++ b/articles/communication-services/tutorials/includes/twilio-to-acs-video-ios-tutorial.md @@ -197,7 +197,7 @@ class ApplicationCallAgentDelegate: NSObject, CallAgentDelegate { func callAgent(_ callAgent: CallAgent, didUpdateCalls args: CallsUpdatedEventArgs) {} - func callAgent(_ callAgent: CallAgent, didRecieveIncomingCall incomingCall: IncomingCall) { + func callAgent(_ callAgent: CallAgent, didReceiveIncomingCall incomingCall: IncomingCall) { // This is called when the application receives an incoming call // An application could use this callback to display an incoming call banner // or report an incoming call to CallKit diff --git a/articles/communication-services/tutorials/includes/twilio-to-acs-video-webjs-tutorial.md b/articles/communication-services/tutorials/includes/twilio-to-acs-video-webjs-tutorial.md index 7d5d8eb41d1a..4f3513b78f06 100644 --- a/articles/communication-services/tutorials/includes/twilio-to-acs-video-webjs-tutorial.md +++ b/articles/communication-services/tutorials/includes/twilio-to-acs-video-webjs-tutorial.md @@ -416,7 +416,7 @@ call.off('isLocalVideoStartedChanged', () => { As soon as a Remote Participant publishes a Video Track, it needs to be attached. The `trackSubscribed` event on Room or Remote Participant enables you to detect when the track can be attached: ```javascript -twilioRoom.on('participantConneted', (participant) => { +twilioRoom.on('participantConnected', (participant) => { participant.on('trackSubscribed', (track) => { const remoteVideoElement = track.attach(); const remoteVideoContainer = document.getElementById(remoteVideoContainerId + participant.identity); @@ -683,7 +683,7 @@ localAudioContainer.appendChild(audioElement); And by Remote Participant: ```javascript -twilioRoom.on('participantConneted', (participant) => { +twilioRoom.on('participantConnected', (participant) => { participant.on('trackSubscribed', (track) => { const remoteAudioElement = track.attach(); const remoteAudioContainer = document.getElementById(remoteAudioContainerId + participant.identity); @@ -861,12 +861,12 @@ const mediaStatsFeature = call.feature(Features.MediaStats); ``` -To receive the media statistics data, you can subscribe `sampleReported` event or `summmaryReported` event: +To receive the media statistics data, you can subscribe `sampleReported` event or `summaryReported` event: - `sampleReported` event triggers every second. Suitable as a data source for UI display or your own data pipeline. -- `summmaryReported` event contains the aggregated values of the data over intervals. Useful when you just need a summary. +- `summaryReported` event contains the aggregated values of the data over intervals. Useful when you just need a summary. -If you want control over the interval of the `summmaryReported` event, you need to define `mediaStatsCollectorOptions` of type `MediaStatsCollectorOptions`. Otherwise, the SDK uses default values. +If you want control over the interval of the `summaryReported` event, you need to define `mediaStatsCollectorOptions` of type `MediaStatsCollectorOptions`. Otherwise, the SDK uses default values. ```javascript const mediaStatsCollectorOptions: SDK.MediaStatsCollectorOptions = { aggregationInterval: 10, @@ -1020,11 +1020,11 @@ You can learn more about ensuring precall readiness in [Pre-Call diagnostics](.. ### Twilio ```javascript -twilioRoom.on('participantConneted', (participant) => { +twilioRoom.on('participantConnected', (participant) => { // Participant connected }); -twilioRoom.on('participantDisconneted', (participant) => { +twilioRoom.on('participantDisconnected', (participant) => { // Participant Disconnected }); diff --git a/articles/communication-services/tutorials/includes/url-shortener-csharp.md b/articles/communication-services/tutorials/includes/url-shortener-csharp.md index 02d5c8117df5..3862ff72d617 100644 --- a/articles/communication-services/tutorials/includes/url-shortener-csharp.md +++ b/articles/communication-services/tutorials/includes/url-shortener-csharp.md @@ -204,7 +204,7 @@ namespace Company.Function ## Test locally >[!NOTE] -> You need to [verify your phone number](../../quickstarts/sms/apply-for-toll-free-verification.md) to send SMS messages with URLs. Once your verification applications is set to pending state (1-2 days), the phone number to be enabled to send URLs. The full verification will take 5-6 weeks. For more information on toll-free number verification, see [Toll Free Veritifcation FAQ](../../concepts/sms/sms-faq.md#toll-free-verification). +> You need to [verify your phone number](../../quickstarts/sms/apply-for-toll-free-verification.md) to send SMS messages with URLs. Once your verification applications is set to pending state (1-2 days), the phone number to be enabled to send URLs. The full verification will take 5-6 weeks. For more information on toll-free number verification, see [Toll Free Verification FAQ](../../concepts/sms/sms-faq.md#toll-free-verification). You can now run your Azure Function locally by pressing `F5` in Visual Studio Code or by running the following command in the terminal: diff --git a/articles/communication-services/tutorials/includes/url-shortener-js.md b/articles/communication-services/tutorials/includes/url-shortener-js.md index 2e7ad81085f5..6527667964e8 100644 --- a/articles/communication-services/tutorials/includes/url-shortener-js.md +++ b/articles/communication-services/tutorials/includes/url-shortener-js.md @@ -171,7 +171,7 @@ const httpTrigger: AzureFunction = async function (context: Context, req: HttpRe ## Test locally >[!NOTE] -> You need to [verify your phone number](../../quickstarts/sms/apply-for-toll-free-verification.md) to send SMS messages with URLs. Once your verification applications is set to pending state (1-2 days), the phone number to be enabled to send URLs. The full verification will take 5-6 weeks. For more information on toll-free number verification, see [Toll Free Veritifcation FAQ](../../concepts/sms/sms-faq.md#toll-free-verification). +> You need to [verify your phone number](../../quickstarts/sms/apply-for-toll-free-verification.md) to send SMS messages with URLs. Once your verification applications is set to pending state (1-2 days), the phone number to be enabled to send URLs. The full verification will take 5-6 weeks. For more information on toll-free number verification, see [Toll Free Verification FAQ](../../concepts/sms/sms-faq.md#toll-free-verification). You can now run your Azure Function locally by pressing `F5` in Visual Studio Code or by running the following command in the terminal: