From ff3206ae541ec4cb8059ad7139307388135b0568 Mon Sep 17 00:00:00 2001 From: Dobrinka Yordanova Date: Thu, 7 Aug 2025 19:10:11 +0300 Subject: [PATCH 1/9] add initial articles for speechtotext button. --- controls/speechtotextbutton/commands.md | 18 +++++ controls/speechtotextbutton/configuration.md | 25 ++++++ controls/speechtotextbutton/events.md | 19 +++++ .../speechtotextbutton/getting-started.md | 79 +++++++++++++++++++ controls/speechtotextbutton/overview.md | 36 +++++++++ controls/speechtotextbutton/states.md | 19 +++++ controls/speechtotextbutton/styling.md | 67 ++++++++++++++++ controls/speechtotextbutton/visual-states.md | 67 ++++++++++++++++ .../speechtotextbutton/visual-structure.md | 28 +++++++ controls/speechtotextbutton/winui-support.md | 7 ++ spell-ignore.txt | 4 +- 11 files changed, 368 insertions(+), 1 deletion(-) create mode 100644 controls/speechtotextbutton/commands.md create mode 100644 controls/speechtotextbutton/configuration.md create mode 100644 controls/speechtotextbutton/events.md create mode 100644 controls/speechtotextbutton/getting-started.md create mode 100644 controls/speechtotextbutton/overview.md create mode 100644 controls/speechtotextbutton/states.md create mode 100644 controls/speechtotextbutton/styling.md create mode 100644 controls/speechtotextbutton/visual-states.md create mode 100644 controls/speechtotextbutton/visual-structure.md create mode 100644 controls/speechtotextbutton/winui-support.md diff --git a/controls/speechtotextbutton/commands.md b/controls/speechtotextbutton/commands.md new file mode 100644 index 00000000..c6118160 --- /dev/null +++ b/controls/speechtotextbutton/commands.md @@ -0,0 +1,18 @@ +--- +title: Commands +page_title: .NET MAUI SpeechToTextButton Documentation - Commands +description: Use the exposed commands of the Telerik UI for .NET MAUI SpeechToTextButton +position: 3 +tags: .net maui, telerik speech to text button for .net maui, ui for .net maui, template contet, microsoft .net maui +slug: speechtotextbutton-commands +--- + +# .NET MAUI SpeechToTextButton Commands + + + +## See Also + +- [Set Visual States]({%slug speechtotextbutton-visual-states%}) +- [Events]({%slug speechtotextbutton-events%}) +- [Style the SpeechToTextButton]({%slug speechtotextbutton-styling%}) \ No newline at end of file diff --git a/controls/speechtotextbutton/configuration.md b/controls/speechtotextbutton/configuration.md new file mode 100644 index 00000000..1deb6fb7 --- /dev/null +++ b/controls/speechtotextbutton/configuration.md @@ -0,0 +1,25 @@ +--- +title: Configuration +page_title: .NET MAUI SpeechToTextButton Documentation - Configuration +description: Learn how to define language, get the text from the speech to text recognizer when using the Telerik SpeechToTextButton for .NET MAUI. +position: 3 +tags: .net maui, telerik speech to text button for .net maui, ui for .net maui, template contet, microsoft .net maui +slug: speechtotextbutton-configuration +--- + +# .NET MAUI SpeechToTextButton Configuration + +The purpose of this help article is to show you the main configuration options of the control. + +## Getting Full Text from the Speech to Text Recognizer + + + +## Language + + +## See Also + +- [Set Visual States]({%slug speechtotextbutton-visual-states%}) +- [Execute Commands]({%slug speechtotextbutton-commands%}) +- [Style the SpeechToTextButton]({%slug speechtotextbutton-styling%}) \ No newline at end of file diff --git a/controls/speechtotextbutton/events.md b/controls/speechtotextbutton/events.md new file mode 100644 index 00000000..e6eb8c51 --- /dev/null +++ b/controls/speechtotextbutton/events.md @@ -0,0 +1,19 @@ +--- +title: Events +page_title: .NET MAUI SpeechToTextButton Documentation - Events +description: Learn what are the different states the SpeechToTextControl for .NET MAUI uses. +position: 3 +tags: .net maui, telerik speech to text button for .net maui, ui for .net maui +slug: speechtotextbutton-events +--- + +# .NET MAUI SpeechToTextButton Events + + + +## See Also + +- [Set Visual States]({%slug speechtotextbutton-visual-states%}) +- [Events]({%slug speechtotextbutton-events%}) +- [Execute Commands]({%slug speechtotextbutton-commands%}) +- [Style the SpeechToTextButton]({%slug speechtotextbutton-styling%}) \ No newline at end of file diff --git a/controls/speechtotextbutton/getting-started.md b/controls/speechtotextbutton/getting-started.md new file mode 100644 index 00000000..1ce5fa8e --- /dev/null +++ b/controls/speechtotextbutton/getting-started.md @@ -0,0 +1,79 @@ +--- +title: Getting Started +page_title: .NET MAUI SpeechToTextButton Documentation - Getting Started +description: Get started with the Telerik UI for .NET MAUI SpeechToTextButton control and add the control to your .NET MAUI project. +position: 2 +slug: speechtotextbutton-getting-started +--- + +# Getting Started with the .NET MAUI SpeechToTextButton + +This guide provides the information you need to start using the Telerik UI for .NET MAUI SpeechToTextButton by adding the control to your project. + +At the end, you will achieve the following result. + +![.NET MAUI SpeechToTextButton Getting Started](images/speechtotextbutton-getting-started.png) + +## Prerequisites + +Before adding the SpeechToTextButton, you need to: + +1. [Set up your .NET MAUI application]({%slug maui-getting-started %}#step-1-set-up-your-net-maui-application). + +1. [Download Telerik UI for .NET MAUI]({% slug maui-getting-started %}#step-2-download-telerik-ui-for-net-maui). + +1. [Install Telerik UI for .NET MAUI]({%slug maui-getting-started %}#step-3-install-telerik-ui-for-net-maui). + +## Define the Control + +**1.** When your .NET MAUI application is set up, you are ready to add a SpeechToTextButton control to your page: + + + + +**2.** Add the `telerik` namespace: + +```XAML +xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui" +``` +```C# +using Telerik.Maui.Controls; +``` + +**3.** Register the Telerik controls through the `Telerik.Maui.Controls.Compatibility.UseTelerik` extension method called inside the `CreateMauiApp` method of the `MauiProgram.cs` file of your project: + +```C# +using Telerik.Maui.Controls.Compatibility; +public static class MauiProgram +{ + public static MauiApp CreateMauiApp() + { + var builder = MauiApp.CreateBuilder(); + builder + .UseTelerik() + .UseMauiApp() + .ConfigureFonts(fonts => + { + fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular"); + }); + return builder.Build(); + } +} +``` + +> For a runnable example with the SpeechToTextButton Getting Started scenario, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Getting Started** category. + +## Additional Resources + +- [Configure the SpeechToTextButton]({%slug speechtotextbutton-configuration%}) +- [Set Visual States]({%slug speechtotextbutton-visual-states%}) +- [Events]({%slug speechtotextbutton-events%}) +- [Execute Commands]({%slug speechtotextbutton-commands%}) +- [Style the SpeechToTextButton]({%slug speechtotextbutton-styling%}) + +## See Also + +- [.NET MAUI SpeechToTextButton Product Page](https://www.telerik.com/maui-ui/speechtotextbutton) +- [.NET MAUI SpeechToTextButton Forum Page](https://www.telerik.com/forums/maui?tagId=1764) +- [Telerik .NET MAUI Blogs](https://www.telerik.com/blogs/mobile-net-maui) +- [Telerik .NET MAUI Roadmap](https://www.telerik.com/support/whats-new/maui-ui/roadmap) \ No newline at end of file diff --git a/controls/speechtotextbutton/overview.md b/controls/speechtotextbutton/overview.md new file mode 100644 index 00000000..d2ee0a17 --- /dev/null +++ b/controls/speechtotextbutton/overview.md @@ -0,0 +1,36 @@ +--- +title: Overview +page_title: .NET MAUI SpeechToTextButton Documentation - Overview +description: Try now the Telerik UI for .NET MAUI SpeechToTextButton control +tags: speach to text for .net maui, .net maui, ui for .net maui, microsoft .net maui +position: 0 +slug: speechtotextbutton-overview +--- + +# .NET MAUI SpeechToTextButton Overview + +The Telerik UI for .NET MAUI SpeechToTextButton is a UI component that enables users to convert spoken words into text within .NET MAUI applications. + +When the user taps the button, the control uses a speech recognition service, listens for voice input, and then transcribes the recognized speech into text. The text can be displayed in a text field or used for further processing. + +![.NET MAUI SpeechToTextButton Overview](images/speechtotext-overview.png) + +## Key Features of the Telerik .NET MAUI SpeechToTextButton + +* [States]({%slug speechtotextbutton-states%})— +* [Language]({%slug %})—SpeechToTextButton for MAUI allows you to set the language +* [Events]({%slug speechtotextbutton-events%})— +* [Command]({%slug speechtotextbutton-commands%})— +* [Styling API]({%slug speechtotextbutton-styling%})— + +## Next Steps + +- [Getting Started with Telerik UI for .NET MAUI SpeechToTextButton]({%slug speechtotextbutton-getting-started%}) +- [Telerik UI for .NET MAUI SpeechToTextButton Support on WinUI]({%slug speechtotextbutton-winui-support%}) + +## See Also + +- [.NET MAUI SpeechToTextButton Product Page](https://www.telerik.com/maui-ui/speechtotextbutton) +- [.NET MAUI SpeechToTextButton Forum Page](https://www.telerik.com/forums/maui?tagId=1764) +- [Telerik .NET MAUI Blogs](https://www.telerik.com/blogs/mobile-net-maui) +- [Telerik .NET MAUI Roadmap](https://www.telerik.com/support/whats-new/maui-ui/roadmap) \ No newline at end of file diff --git a/controls/speechtotextbutton/states.md b/controls/speechtotextbutton/states.md new file mode 100644 index 00000000..cade30de --- /dev/null +++ b/controls/speechtotextbutton/states.md @@ -0,0 +1,19 @@ +--- +title: States +page_title: .NET MAUI SpeechToTextButton Documentation - States +description: Learn what are the different states the SpeechToTextControl for .NET MAUI uses. +position: 3 +tags: .net maui, telerik speech to text button for .net maui, ui for .net maui +slug: speechtotextbutton-states +--- + +# .NET MAUI SpeechToTextButton States + + + +## See Also + +- [Set Visual States]({%slug speechtotextbutton-visual-states%}) +- [Events]({%slug speechtotextbutton-events%}) +- [Execute Commands]({%slug speechtotextbutton-commands%}) +- [Style the SpeechToTextButton]({%slug speechtotextbutton-styling%}) \ No newline at end of file diff --git a/controls/speechtotextbutton/styling.md b/controls/speechtotextbutton/styling.md new file mode 100644 index 00000000..86641346 --- /dev/null +++ b/controls/speechtotextbutton/styling.md @@ -0,0 +1,67 @@ +--- +title: Styling +page_title: .NET MAUI SpeechToTextButton Documentation - Styling +description: Learn how to set background color, border color, corner radius, and other properties of the SpeechToTextButton for .NET MAUI. +tags: speech to text for .net maui, .net maui, ui for .net maui, listening state +position: 0 +slug: speechtotextbutton-styling +--- + +# .NET MAUI SpeechToTextButton Styling + +The SpeechToTextButton for .NET MAUI provides extensive styling options that allow you to customize its visual appearance to match your application's design. You can modify colors, borders, spacing, and leverage visual states to provide clear feedback during different interaction phases. + +## Styling Properties + +The following properties control the visual appearance of the SpeechToTextButton: + +* `Background` (`Brush`)—Specifies the background brush of the control. +* `BorderBrush` (`Brush`)—Specifies the border brush of the control. +* `BorderColor` (`Color`)—Specifies the border color of the control. +* `BorderThickness` (`Thickness`)—Specifies the border thickness of the control. +* `CornerRadius` (`CornerRadius`)—Specifies the corner radius of the control. +* `Padding` (`Thickness`)—Specifies the padding of the control. +* `TextColor` (`Color`)—Specifies the color of the button icon. + +The SpeechToTextButton uses the .NET MAUI Visual State Manager and defines a visual state group named `CommonStates` with the following visual states: + +* `Normal`—The default state when the button is not being interacted with and speech recognition is not active. +* `Pressed`—The state when the user is physically pressing the button but speech recognition hasn't started yet. +* `Listening`—The active state when the button is listening for speech input. This is the primary feedback state for users. +* `Error`—The state displayed when speech recognition encounters an error or fails to process input. +* `Disabled`—The state when the control is disabled and cannot be interacted with. + +Each visual state can have different styling applied, allowing you to provide clear visual feedback for different interaction phases. + +## Styling Example + +### Using the Styling API + +The following example demonstrates how to style the SpeechToTextButton with custom colors and visual state styling. + +**1.** Define the SpeechToTextButton in XAML: + + + +**2.** Define the style in the page's resources: + + + +**3.** Add the `telerik` namespace: + +```XAML +xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui" +``` + +This is the result on Android and iOS: + +![.NET MAUI SpeechToTextButton Visual States](images/speechtotextbutton-styling.gif "SpeechToTextButton for .NET MAUI") + +> For a runnable example demonstrating the SpeechToTextButton Styling API, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Styling** category. + +## See Also + +- [Visual States in the SpeechToTextButton]({%slug speechtotextbutton-visual-states%}) +- [Configure the SpeechToTextButton]({%slug speechtotextbutton-configuration%}) +- [Events]({%slug speechtotextbutton-events%}) +- [Execute Commands]({%slug speechtotextbutton-commands%}) diff --git a/controls/speechtotextbutton/visual-states.md b/controls/speechtotextbutton/visual-states.md new file mode 100644 index 00000000..943170a4 --- /dev/null +++ b/controls/speechtotextbutton/visual-states.md @@ -0,0 +1,67 @@ +--- +title: Visual States +page_title: .NET MAUI SpeechToTextButton Documentation - Visual States +description: Learn how to set the border color, border thickness and other styling options for the different visual states of the Telerik SpeechToTextButton for .NET MAUI. +position: 10 +tags: .net maui, telerik .net maui, ui for .net maui, templated, button, microsoft .net maui +slug: speechtotextbutton-visual-states +--- + +# .NET MAUI SpeechToTextButton Visual States + +The SpeechToTextButton control provides visual states that allow you to customize its appearance based on different interaction and operational states. Visual states enable you to create responsive UI that provides clear feedback to users about the control's current status. + +You can use visual states to change the visual appearance of the control depending on its current state—whether it's disabled, pressed, listening for speech, or encountering an error. + +## Available Visual States + +The SpeechToTextButton provides the following `CommonStates` visual states: + +| Visual State | Description | +| ------------ | ----------- | +| `Normal` | Applied when the button is in its default, inactive state. | +| `Pressed` | Applied when the button is being pressed or tapped by the user. | +| `Listening` | Applied when the button is actively listening for speech input. | +| `Error` | Applied when an error occurs during speech recognition (e.g., no internet connection, speech recognizer issues, permission denied). | +| `Disabled` | Applied when the button is disabled and cannot be interacted with. | + +## Visual State Transitions + +The SpeechToTextButton automatically transitions between visual states based on user interaction and speech recognition status: + +- `Normal` → `Pressed`—When user starts pressing the button +- `Pressed` → `Listening`—When speech recognition begins +- `Listening` → `Normal`—When speech recognition completes successfully +- Any State → `Error`—When an error occurs during operation +- Any State → `Disabled`—When the control is programmatically disabled + +## Using Visual States + +The following example demonstrates how to customize the SpeechToTextButton visual states with different styling for each state. + +**1.** Define the SpeechToTextButton in XAML: + + + +**2.** Define the visual states in the page's resources with custom styling: + + + +**3.** Add the `telerik` namespace: + +```XAML +xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui" +``` + +This is the result on WinUI: + +![.NET MAUI SpeechToTextButton Visual States](images/speechtotextbutton-styling.gif "SpeechToTextButton for .NET MAUI") + +> For a runnable example demonstrating the SpeechToTextButton visual states, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Styling** category. + +## See Also + +- [Style the SpeechToTextButton]({%slug speechtotextbutton-styling%}) +- [Configure the SpeechToTextButton]({%slug speechtotextbutton-configuration%}) +- [Events]({%slug speechtotextbutton-events%}) +- [Execute Commands]({%slug speechtotextbutton-commands%}) \ No newline at end of file diff --git a/controls/speechtotextbutton/visual-structure.md b/controls/speechtotextbutton/visual-structure.md new file mode 100644 index 00000000..dcfdfe04 --- /dev/null +++ b/controls/speechtotextbutton/visual-structure.md @@ -0,0 +1,28 @@ +--- +title: Visual Structure +page_title: .NET MAUI SpeechToTextButton Documentation - SpeechToTextButton Visual Structure +description: Learn what visual elements are displayed by the Telerik UI for .NET MAUI SpeechToTextButton, and see how these elements build the visual structure of the control. +position: 1 +slug: speechtotextbutton-visual-structure +--- + +# .NET MAUI SpeechToTextButton Visual Structure + +The visual structure of the .NET MAUI SpeechToTextButton represents the anatomy of the UI component. Being familiar with the visual elements of the SpeechToTextButton allows you to quickly find the information required to configure them. + +The following image shows the anatomy of the SpeechToTextButton. + +![.NET MAUI SpeechToTextButton Visual Structure](images/speechtotextbutton-visual-structure.png "Visual elements of The SpeechToTextButton control") + +## Displayed Elements + +* **Content**—The content of the SpeechToTextButton. + +## See Also + +- [Getting Started with Telerik UI for .NET MAUI SpeechToTextButton]({%slug speechtotextbutton-getting-started%}) +- [Configure the SpeechToTextButton]({%slug speechtotextbutton-configuration%}) +- [Set Visual States]({%slug speechtotextbutton-visual-states%}) +- [Events]({%slug speechtotextbutton-events%}) +- [Execute Commands]({%slug speechtotextbutton-commands%}) +- [Style the SpeechToTextButton]({%slug speechtotextbutton-styling%}) \ No newline at end of file diff --git a/controls/speechtotextbutton/winui-support.md b/controls/speechtotextbutton/winui-support.md new file mode 100644 index 00000000..6b6cb588 --- /dev/null +++ b/controls/speechtotextbutton/winui-support.md @@ -0,0 +1,7 @@ +--- +title: WinUI Support +page_title: .NET MAUI SpeechToTextButton Documentation - WinUI Support +description: Review what are the options and limitations using the .NET MAUI SpeechToTextButton on WinUI. +position: 1 +slug: speechtotextbutton-winui-support +--- diff --git a/spell-ignore.txt b/spell-ignore.txt index 67519ddb..f568a3ff 100644 --- a/spell-ignore.txt +++ b/spell-ignore.txt @@ -85,4 +85,6 @@ PieChart TextInput telerik TreeDataGrid -Theming \ No newline at end of file +Theming +SpeechToTextButton +SpeechToText \ No newline at end of file From 2cb18e4ad67f1c52260a4655145f3bda6cfd7c79 Mon Sep 17 00:00:00 2001 From: Dobrinka Yordanova Date: Fri, 8 Aug 2025 14:10:54 +0300 Subject: [PATCH 2/9] update articles --- controls/speechtotextbutton/commands.md | 28 ++++++++++- controls/speechtotextbutton/configuration.md | 26 ++++++++++- .../speechtotextbutton/custom-recognizer.md | 46 +++++++++++++++++++ controls/speechtotextbutton/events.md | 43 ++++++++++++++++- controls/speechtotextbutton/overview.md | 15 +++--- controls/speechtotextbutton/styling.md | 4 +- controls/speechtotextbutton/winui-support.md | 7 +++ 7 files changed, 154 insertions(+), 15 deletions(-) create mode 100644 controls/speechtotextbutton/custom-recognizer.md diff --git a/controls/speechtotextbutton/commands.md b/controls/speechtotextbutton/commands.md index c6118160..3364903c 100644 --- a/controls/speechtotextbutton/commands.md +++ b/controls/speechtotextbutton/commands.md @@ -3,16 +3,42 @@ title: Commands page_title: .NET MAUI SpeechToTextButton Documentation - Commands description: Use the exposed commands of the Telerik UI for .NET MAUI SpeechToTextButton position: 3 -tags: .net maui, telerik speech to text button for .net maui, ui for .net maui, template contet, microsoft .net maui +tags: .net maui, telerik speech to text button for .net maui, ui for .net maui, microsoft .net maui slug: speechtotextbutton-commands --- # .NET MAUI SpeechToTextButton Commands +The .NET MAUI SpeechToTextButton provides commands that execute when specific actions occur, such as when speech is recognized or when an error occurs. This allows you to handle these events in a more MVVM-friendly way. +The .NET MAUI SpeechToTextButton exposes the following commands: + +* `SpeechRecognizedCommand` (`ICommand`)—Specifies a command to execute when the speech recognition is successful and the recognized text is available. The command context is `SpeechToTextButtonSpeechRecognizedCommandContext`, which contains the recognized text—`FullText` and confidence score—`FullTextConfidenceScore`. +* `ErrorOccurredCommand` (`ICommand`)—Specifies a command to execute when an error occurs during the speech recognition process. The command context is `SpeechToTextButtonErrorOccurredCommandContext`, which contains the error message—`Message` and the exception—`Exception`. + +## Example + +Here is an example using the `SpeechRecognizedCommand` and `ErrorOccurredCommand`: + +**1.** Define the `SpeechToTextButton` in XAML: + + + +**2.** Add the `telerik` namespace: + +```XAML +xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui" +``` + +**3.** Define the `ViewModel` with `SpeechRecognizedCommand` and `ErrorOccurredCommand` definitions: + + + +> For a runnable example with the SpeechToTextButton Commands scenario, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Features** category. ## See Also - [Set Visual States]({%slug speechtotextbutton-visual-states%}) - [Events]({%slug speechtotextbutton-events%}) +- [Custom Recognizer]({%slug speechtotextbutton-custom-recognizer%}) - [Style the SpeechToTextButton]({%slug speechtotextbutton-styling%}) \ No newline at end of file diff --git a/controls/speechtotextbutton/configuration.md b/controls/speechtotextbutton/configuration.md index 1deb6fb7..7eec384d 100644 --- a/controls/speechtotextbutton/configuration.md +++ b/controls/speechtotextbutton/configuration.md @@ -3,7 +3,7 @@ title: Configuration page_title: .NET MAUI SpeechToTextButton Documentation - Configuration description: Learn how to define language, get the text from the speech to text recognizer when using the Telerik SpeechToTextButton for .NET MAUI. position: 3 -tags: .net maui, telerik speech to text button for .net maui, ui for .net maui, template contet, microsoft .net maui +tags: .net maui, telerik speech to text button for .net maui, ui for .net maui, microsoft .net maui slug: speechtotextbutton-configuration --- @@ -11,12 +11,34 @@ slug: speechtotextbutton-configuration The purpose of this help article is to show you the main configuration options of the control. -## Getting Full Text from the Speech to Text Recognizer +## Getting Full Text from Speech Recognition +The SpeechToTextButton allows you to retrieve the full text recognized by the speech recognition service. +This is done through the `FullText` property, which provides the complete transcription of the spoken input. +To get the full text, you can subscribe to the `SpeechRecognized` event, which is triggered when the speech recognition is successful. + +## Continuous Recognition + +The SpeechToTextButton supports continuous speech recognition, allowing it to listen for speech input without stopping after each recognition. + +You can disable the continuous recognition by setting the `IsContinuousRecognition` property to `false`. The default value is `true`, meaning that the button will listen for speech input continuously, until it is explicitly stopped or the user taps the button again. + +```XAML + +``` ## Language +The SpeechToTextButton allows you to set the language for speech recognition. This is important for accurate transcription of spoken words into text. + +You can set the language using the `LanguageTag` property, which accepts a string representing the language code (e.g., "en-US" for English, "fr-FR" for French). + + + +> For a runnable example with the SpeechToTextButton Getting Started scenario, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Configuration** category. ## See Also diff --git a/controls/speechtotextbutton/custom-recognizer.md b/controls/speechtotextbutton/custom-recognizer.md new file mode 100644 index 00000000..d94a0b29 --- /dev/null +++ b/controls/speechtotextbutton/custom-recognizer.md @@ -0,0 +1,46 @@ +--- +title: Custom Recognizer +page_title: .NET MAUI SpeechToTextButton Documentation - Custom Recognizer +description: Learn how to use a custom speech recognizer with the Telerik SpeechToTextButton for .NET MAUI. +position: 3 +tags: .net maui, telerik speech to text button for .net maui, ui for .net maui, custom recognizer, microsoft .net maui +slug: speechtotextbutton-custom-recognizer +--- + +# .NET MAUI SpeechToTextButton Custom Recognizer + +The .NET MAUI SpeechToTextButton allows you to use a custom speech recognizer by implementing the `IRadSpeechRecognizer` interface. This enables you to integrate third-party speech recognition services or customize the behavior of the speech recognition process. + +## Implementation Steps + +Follow these steps to implement a custom speech recognizer: + +**1.** Define the `SpeechToTextButton` in XAML: + + + +**2.** Add the `telerik` namespace: + +```XAML +xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui" +``` + +**3.** Create a class `MyCustomSpeechRecognizer` that implements the `IRadSpeechRecognizer` interface: + + + +**4.** Set the `SpeechRecognizer` property of the `RadSpeechToTextButton` to an instance of your custom recognizer: + + + +**5.** Handle the `SpeechRecognized` event to process the recognition results: + + + +> For a runnable example with the SpeechToTextButton Commands scenario, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Features** category. + +## See Also + +- [Set Visual States]({%slug speechtotextbutton-visual-states%}) +- [Events]({%slug speechtotextbutton-events%}) +- [Style the SpeechToTextButton]({%slug speechtotextbutton-styling%}) \ No newline at end of file diff --git a/controls/speechtotextbutton/events.md b/controls/speechtotextbutton/events.md index e6eb8c51..df8749ad 100644 --- a/controls/speechtotextbutton/events.md +++ b/controls/speechtotextbutton/events.md @@ -1,7 +1,7 @@ --- title: Events page_title: .NET MAUI SpeechToTextButton Documentation - Events -description: Learn what are the different states the SpeechToTextControl for .NET MAUI uses. +description: Learn about the events that the SpeechToTextButton for .NET MAUI exposes. position: 3 tags: .net maui, telerik speech to text button for .net maui, ui for .net maui slug: speechtotextbutton-events @@ -9,11 +9,50 @@ slug: speechtotextbutton-events # .NET MAUI SpeechToTextButton Events +The .NET MAUI SpeechToTextButton emits a set of events that allow you to configure the component's behavior in response to speech recognition. +The .NET MAUI SpeechToTextButton exposes the following events: + +* `SpeechRecognized`—Raised when the speech recognition is successful and the recognized text is available. The `SpeechRecognized` event handler receives two parameters: + * The `sender` argument which is of type `object` but can be cast to `RadSpeechToTextButton`. + * A `SpeechRecognizerSpeechRecognizedEventArgs` argument which has a reference to the: + * `FullText` (`string`) property that contains the current full text recognized from the speech input. + * `FullTextConfidenceScore` property that indicates the confidence level of the recognition. The value is between 0 and 1, indicating how confident the speech-to-text transcription is. If the value is -1, a confidence score could not be provided. + +* `ErrorOccurred`—Raised when an error occurs during the speech recognition process. The `ErrorOccurred` event handler receives two parameters: + * The `sender` argument which is of type `object` but can be cast to `RadSpeechToTextButton`. + * A `SpeechRecognizerErrorOccurredEventArgs` argument which has a reference to the: + * `Message` (`string`) property that contains the error message describing the issue that occurred during speech recognition. + * `Exception` (`System.Exception`) property that contains the exception associated with the speech recognizer error, if any. + * `Handled` (`bool`) property that determines whether the error has been handled. Set this to `true` to prevent the default error handling behavior. + +## Example + +Here is an example using the `SpeechRecognized` and `ErrorOccurred` events: + +**1.** Define the `SpeechToTextButton` in XAML: + + + +**2.** Add the `telerik` namespace: + +```XAML +xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui" +``` + +**3.** Handle the `SpeechRecognized` event: + + + +**4.** Handle the `ErrorOccurred` event: + + + +> For a runnable example with the SpeechToTextButton Events scenario, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Features** category. ## See Also - [Set Visual States]({%slug speechtotextbutton-visual-states%}) -- [Events]({%slug speechtotextbutton-events%}) +- [Custom Recognizer]({%slug speechtotextbutton-custom-recognizer%}) - [Execute Commands]({%slug speechtotextbutton-commands%}) - [Style the SpeechToTextButton]({%slug speechtotextbutton-styling%}) \ No newline at end of file diff --git a/controls/speechtotextbutton/overview.md b/controls/speechtotextbutton/overview.md index d2ee0a17..b098d016 100644 --- a/controls/speechtotextbutton/overview.md +++ b/controls/speechtotextbutton/overview.md @@ -2,7 +2,7 @@ title: Overview page_title: .NET MAUI SpeechToTextButton Documentation - Overview description: Try now the Telerik UI for .NET MAUI SpeechToTextButton control -tags: speach to text for .net maui, .net maui, ui for .net maui, microsoft .net maui +tags: speech to text for .net maui, .net maui, ui for .net maui, microsoft .net maui position: 0 slug: speechtotextbutton-overview --- @@ -11,17 +11,18 @@ slug: speechtotextbutton-overview The Telerik UI for .NET MAUI SpeechToTextButton is a UI component that enables users to convert spoken words into text within .NET MAUI applications. -When the user taps the button, the control uses a speech recognition service, listens for voice input, and then transcribes the recognized speech into text. The text can be displayed in a text field or used for further processing. +When the user taps the button, the control uses a speech recognition service, listens for voice input, and then transcribes the recognized speech into text. The recognized text can be displayed in a text field or used for further processing in your application. ![.NET MAUI SpeechToTextButton Overview](images/speechtotext-overview.png) ## Key Features of the Telerik .NET MAUI SpeechToTextButton -* [States]({%slug speechtotextbutton-states%})— -* [Language]({%slug %})—SpeechToTextButton for MAUI allows you to set the language -* [Events]({%slug speechtotextbutton-events%})— -* [Command]({%slug speechtotextbutton-commands%})— -* [Styling API]({%slug speechtotextbutton-styling%})— +* [Visual States]({%slug speechtotextbutton-visual-states%})—The SpeechToTextButton supports different visual states such as Normal, Listening, Error, and more, providing visual feedback to users during speech recognition. +* [Language Configuration]({%slug speechtotextbutton-configuration%}#language)—The SpeechToTextButton allows you to set the language for speech recognition, ensuring accurate transcription of spoken words into text. +* [Events]({%slug speechtotextbutton-events%})—The SpeechToTextButton emits a set of events that allow you to configure the component's behavior in response to speech recognition, including `SpeechRecognized` and `ErrorOccurred` events. +* [Commands]({%slug speechtotextbutton-commands%})—The SpeechToTextButton supports command execution, allowing you to bind commands to the button's actions in an MVVM-friendly way. +* [Custom Speech Recognizer]({%slug speechtotextbutton-custom-recognizer%})—Implement your own speech recognition logic by creating a custom recognizer that implements the `IRadSpeechRecognizer` interface. +* [Styling API]({%slug speechtotextbutton-styling%})—You can customize the appearance of the SpeechToTextButton using the styling API, which allows you to set properties like background color, border color, corner radius, and more. ## Next Steps diff --git a/controls/speechtotextbutton/styling.md b/controls/speechtotextbutton/styling.md index 86641346..ea695eb3 100644 --- a/controls/speechtotextbutton/styling.md +++ b/controls/speechtotextbutton/styling.md @@ -33,9 +33,7 @@ The SpeechToTextButton uses the .NET MAUI Visual State Manager and defines a vis Each visual state can have different styling applied, allowing you to provide clear visual feedback for different interaction phases. -## Styling Example - -### Using the Styling API +## Example The following example demonstrates how to style the SpeechToTextButton with custom colors and visual state styling. diff --git a/controls/speechtotextbutton/winui-support.md b/controls/speechtotextbutton/winui-support.md index 6b6cb588..800fc565 100644 --- a/controls/speechtotextbutton/winui-support.md +++ b/controls/speechtotextbutton/winui-support.md @@ -5,3 +5,10 @@ description: Review what are the options and limitations using the .NET MAUI Spe position: 1 slug: speechtotextbutton-winui-support --- + +# .NET MAUI SpeechToTextButton WinUI Support Specifics + +The Telerik UI for .NET MAUI SpeechToTextButton control is designed to work seamlessly across all supported platforms, including WinUI. + +However, there are some platform-specific considerations and limitations to be aware of when using the control on WinUI. + From d204f913905e268fbee64b905288a8816ba3a06f Mon Sep 17 00:00:00 2001 From: Dobrinka Yordanova Date: Fri, 8 Aug 2025 16:58:47 +0300 Subject: [PATCH 3/9] update articles --- .../speechtotextbutton/custom-recognizer.md | 2 +- controls/speechtotextbutton/events.md | 4 +++ .../speechtotextbutton/getting-started.md | 29 +++++++++++++++ .../images/speechtotext-architecture.png | Bin 0 -> 305829 bytes controls/speechtotextbutton/overview.md | 2 +- controls/speechtotextbutton/states.md | 8 ++++- controls/speechtotextbutton/winui-support.md | 34 +++++++++++++++++- 7 files changed, 75 insertions(+), 4 deletions(-) create mode 100644 controls/speechtotextbutton/images/speechtotext-architecture.png diff --git a/controls/speechtotextbutton/custom-recognizer.md b/controls/speechtotextbutton/custom-recognizer.md index d94a0b29..c7d6164e 100644 --- a/controls/speechtotextbutton/custom-recognizer.md +++ b/controls/speechtotextbutton/custom-recognizer.md @@ -29,7 +29,7 @@ xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui" -**4.** Set the `SpeechRecognizer` property of the `RadSpeechToTextButton` to an instance of your custom recognizer: +**4.** Set the `SpeechRecognizerCreator` property of the `RadSpeechToTextButton` to an instance of your custom recognizer: diff --git a/controls/speechtotextbutton/events.md b/controls/speechtotextbutton/events.md index df8749ad..281e0f7f 100644 --- a/controls/speechtotextbutton/events.md +++ b/controls/speechtotextbutton/events.md @@ -26,6 +26,10 @@ The .NET MAUI SpeechToTextButton exposes the following events: * `Exception` (`System.Exception`) property that contains the exception associated with the speech recognizer error, if any. * `Handled` (`bool`) property that determines whether the error has been handled. Set this to `true` to prevent the default error handling behavior. +* `StateChanged`—Raaised when the state of the speech recognizer changes. The `StateChanged` event handler receives two parameters: + * The `sender` argument which is of type `object` but can be cast to `RadSpeechToTextButton`. + * An `System.EventArgs`. + ## Example Here is an example using the `SpeechRecognized` and `ErrorOccurred` events: diff --git a/controls/speechtotextbutton/getting-started.md b/controls/speechtotextbutton/getting-started.md index 1ce5fa8e..85cbbe41 100644 --- a/controls/speechtotextbutton/getting-started.md +++ b/controls/speechtotextbutton/getting-started.md @@ -24,6 +24,35 @@ Before adding the SpeechToTextButton, you need to: 1. [Install Telerik UI for .NET MAUI]({%slug maui-getting-started %}#step-3-install-telerik-ui-for-net-maui). +## Required Permissions + +Before adding the contol, ensure that you have the required permissions set up in your project: + +### Android + +Add the following permissions to your `AndroidManifest.xml` file: + +```xml + +``` + +### iOS and MacCatalyst + +Add the `NSMicrophoneUsageDescription` and `NSSpeechRecognitionUsageDescription` permissions to your `Info.plist` file: + +```xml +NSMicrophoneUsageDescription +The SpeechToTextButton requires access to microphone. +NSSpeechRecognitionUsageDescription +The SpeechToTextButton requires access to the Speech Recognition service. +``` + +### WinUI + +There are limitations when using the SpeechToTextButton on WinUI. When clicking on the control, the InvalidOperationException occurs. + +To turn speech recognition on WinUI, review the [WinUI Support]({%slug speechtotextbutton-winui-support%}) article. + ## Define the Control **1.** When your .NET MAUI application is set up, you are ready to add a SpeechToTextButton control to your page: diff --git a/controls/speechtotextbutton/images/speechtotext-architecture.png b/controls/speechtotextbutton/images/speechtotext-architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..2be20a322d6e061f8654eebcd7a8808f8507864f GIT binary patch literal 305829 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%0A8JS`0%=rfNHl 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�o8M8X(2%gld_mRF}%%1ZYmFq{hkgcyyh&5ZX=531p| zlSy=`N!{*^yjDAVt)ew@TYd0qpUM#wtr_p`Qlp^s`rj?J7rtNGw^E>(=^!qVmiuVS zRk^0$sEhw9ZM_s~3N9=9*3a-O8Q7uZ`{FRInn6Wqu+x35M+3IeH0cgWX6|1iqchC< zdtF|Jxp5{B_g=XAOL6qv&&0TcQN_6GYvBT%4m1lw6lBQhlS!+y)Fn@_-z}B@xqTjn zB5Buli#vUgcBN7-RXy*19*+QR4h74v@^fl_egN^~t!JX+HC7&>#Faw(k64{5OgvXj z&)+Or(M2!ilYghUM$H_D-?Sr*iLJZx$Rw(ZQ?oEL;cnk`pG+#jMJvB_;6j>W6!rW7 z*5vs{mf$S=a5*#4{T#p6VSKxoaUg%E>|#)UO@MLCnXLJMb|Lys0(_M8Db@}HOlCgUYepg zLd?`pz@YO2RNk~?9CO?mFw`kSK3eo1nX9C8K_@O&&jKgpEmbw5OhD%Z9+RNm`K-zE zvctW;_N08`^a}GaeJIClK+0p+_5OXV6TcvrU(9{aUO*2g-fa(WCwM3oBJMNQEHGpa zq^}(f6yEphW9WDc1CgLBVODL9R~id_i@Wu%mMc2D5tR-SQ3aEKF99yHP4n&WPBj`B zf?LAEI8w&N`X@-miF_{}ZBjRSG0xsc#!&xKL=Q(#-OFUz`aK?Xe#3>~Qg#Wd$yd5) zN~`|j+~wTb!%o5C0$q`04N%t`AB-bR_>t)E-#=J6!-o@ z>(Hn_TlR&b{s)Q+Q4S!sfPnQafQaoZGM5Me| zS`hEgQMrC(lZyRLNY4`}39nuNrEhr`e&bdYt8!o)g2aZjYV@Na=k8gc=QCWMYD2I@ z2%^&417(58HyDCEggh-2VR?S18+^V*08L}d)o5Ai>BHW<0FQ1wp>Fk#9qZ77&i-mRtMYJ=t z#5V(5+s3;AK*~mg;h2dbXS@;xRnh|Kj;HH3R>)f&dZBI6{PvEL+rd*|5WMZkm zzw2zV-#k@cFZ?a#ImN}BMjM3dkc+B8P&{!D8qPUmjJe7eB=ev}nn}|RD&TLh1$Ma1 zhmP6xSX5u}E1POD2*|uh&u|~Rs>a8FcySLA*0X-|3``d77R>eGm6%nixum)$W5dae zN4Q>uyWL}j@Iq%Vu$#oo?0Lh;ySFV!#Ii3WfW#3-iBdTojBGzf9U-TCqDk@UIx2tJHsA{`+{gbZDJCrX^s z^&9(9PXUO&!xZ*TiKNFfHRH~1kTlQM9Vi8CAxA-BruGu?>Q@O0(hd3?*@iF<|q@o?)ZEz3*2u9L=>J)GWgWL!x{7ntfQJ01}A zS-w@{q8HFoxH(@Xw%$|;fF4a|+Pg)8mojC5#rs-9i=mqKK*(Z-!yJSHpInh66{6dA z(t!gHd&Q@K=lYG1xua@@8l*UDcq7n6@%DYu+qHN3!R!(^RXxe}>+o2s1-<57;J)N< zY#9EGvIJGa5r)CxCOuE>zVo#R;@r*;F^ciED;dc-17S{H$0PY+~%8wrqV8|GN8ZlN_x|;u#N&@N6 zZwmH>Q=qfW!A?wRPVhQ~J~_#bY6@PTj&ZCZUh zviSev?k%ILT-Ww*K@<>a1qoqNB2o&{U4kNF(xEWv66uzZZbV8NladKc8VtHcBqgLJ z1*GdeZ&+*XwV&}k?m>%Q(Q&ht2a#|37`;ogIv<3iQT#CA}iE~(Yt zI?rOY-?XKYB)FE{c1nMug{7*#>D*1qAO+UCJtJ#^Un>eBHJkL$2TEqNtFvlHwl5mg zgfdpW?w`Xw_p{}gJJW1-9i6CW@g8P)lKj^_sT{f|U=xzV)qF+=9*eYANdva0%U+0p zZYtTfo(9nsUV$g;)uI!JT1F&{fP-)P0V1R(2U3YYkun#~k|HM+0;VI)7E_Mg3C$v_ z-r#Qrp;U$T$zs}(pL{7Ws!V)S9@1YmO|_nWk)x>X$k+?&^v9P*(+5Sqf2K~(8r;)L zIk+4do}<;o^W9*r2WdpDo98VgEkq2jRnBiQe||6Fxz>lN z;kr&2@p~1x0M>;4E+;h6UXOSNdoA?WvYW~e*py$eGKbQ;y8l}Lvxymh-|>iRMzFZE zyJ?MZJ-~AI0lpX7%HHGp9q8-#4H!Nk(si}k$TcyW4rx6AU)LDd_)u&*ZS?h2>;+?J z-(J|Zlg?L{j8cynxtcCC;RMk=+NrN3ws7T$3fGrTD9rcf%y;PRw2@a(Exo;y8O>Yv zr$eqGe~Qf_J-b!@VsE)Vl(84db2>dwVa|RwR=-2>k<$V!=Mmaik4aAbE7ZF7cbHpe z^+lO#Jy(-Pt|9{N!E(eObzP72rwme&Og|Em^7=WwMI~KO3c8rZm@$zqyns`y?$y37 zM|3XlbPDrc5V2YRO<^g}YM@QbE4P?P(dh!KU3i?EZ|CM;5n}T2(d74v`(8{x(k*>W z=qt=Cds9n7=27m>`q3k>xBc!|F5Kweok3pv0DabCS$kuNHeYl6j)qCq>zu)k75v^< z0sW%3yz)p_OEX7JpJ=MfP{pslg0F8o`oMCFS$11>hp%2BZfz6O;JyCs`|E5;Kn_o{cbnZ%ZpyLI_`!PVCFMwk z3W^Fc8UBvSjkXheuhRFParNALP9nWUw`X*ApnFwk@J_9#grv@#k9&LB@ZwjR`MYm~ z?03ztRc}p<_h+p_wfjsP$&RcH_RG_L_dj^{FLDH_KIa7HZ;x!#8aG^H)T33x{Ynw2 z`#W@~I`X6cDU4at-O_<33Xj@raq%yVYgCV2>`Kk&Nw!i>2~%bLc2}cG?va|~D~|}z z%PQH0)Xb$G7}uIL3bEV;pZ@dC2y#_+AA-x!A7gICvKJL}Q$H zdU}|BEC+TMu~N}&OYgaJd*4K^it^J6JZJJNo83M&o#B(idrOmzwMfcruVu4{e^tT0 zCFy#qvB?nF-nXI!B{2qB{4b62rZuM*EbMo6QjIiIr}H`rJC`kX&aLc(+nk0@`H6l} z#e9Q7jz+c9FNYMae{7F#Gh{6^T)jOe0F$mdAc}7;KK6Q&&-@QhVO`SF&)3bdWd^7< zSguVZx1>;jF~n{`2g2Nn)=k+a{)uNe)2&%u}f?>R=s!O zxyx*bY7c#DuC4s3G=F&?-V42H z!|rl4|A~GcZ`0gFyw^hZWpfDeW<@y&=}ZlI20$M z9*deA_g{4pLF5dR5jHQ+NJMaT{dLJ;v%AfBjuJyo>$ynTjcE^PKe#QUme-qKVe5tu*IH%TuMpJaGN`fH^*e?6&4k_^ zkPO(bCjXpstM_hX?!BUNOHLRT{HH^Tawt|L0P(9|n17_S72%Q0Txs<0L5WmxTac)2 z7ncpMWy_LE)yIapFq~Q#u#@~LyVGMPqgGp&bN=Hblc356l@M(Psc(ziVsdJ`@?Myb zb%;|k`HfGLq`B9h5nNl@icFX&N7>m2Q%#YviDfR&l+LRMav;jpi#urwLNtTvG?=@R zpM|P}ji3A1elIbuI~r;6!M6k}tcYi?_f<NY-tTzaydQ2NJZ1JV*&V{>^k5YDLwQ~{vj znYy{OiW>dUU2nqJQ&Dq+!mVp%Q-krhtKSmtF_TD|;)q*iN~*v7X8uH3XU)Wze8*$_ z4b*`fcsq;(xio)^8Jt0Tq_T>S95%kZ@%E*>#SzxsWFXWVFZxQ)`%ON^$y-s(5^bZD=E}f=)O5vq+qgcdgU@_p;}E!|GU$g zBi7#potr4yTm>AU731M|L*M;91=@r3r|31FgFp4+&;(GDr%G*nxTE&nJ!&~Ab~#jI ztQ49xtsudU@ltlz^)!=o;X}W={|Qo27tZAB(vq}?7I4Aeu=)>=2sdE>d0H0>)jZ<$=wkb#*l_R74g6p~@rF%fD z*T{wRa(a0fNkgXlk;La~1o49`dZ;rb9aV(kSV4Fvrx72H72d`|#i+Prk{_uo*{ZRD1`!S7 z&}w+RP=HH^>U@||Q6H>a`_)i&V=3tX6qw}0)iMuzM_aX|3^x=Tz88ObEtx-^z~J;- zKYxiit-RV#dFP2teuwLES&3Vq@s$%q?^BbbCtI%OP{#YFC;TxRZ(?us*@OI;lpGb; z_D>9~oev9d_D;Xgu~;`rrg~6f+25s_qf&T}D8;4cl$oLz1CocC%Nva8;rc;m?$z&O z8MVwQ+2R_r_BzzY!>k#MrYb?`6P~c_ALFZddlqPSz`g9b^c;vE85jOKF@IXfLJ^5g zFwq^<`!+(;suduFT0R<$Jgt&AnWkP^AME>0L*lnx$>~=%vkJ>bH-O$2gKzRDNXj{l zlw5fA6v0Y!XP@_Yfaa<3HJ}v!q1VXipLy9gFi{;H)iZSO%)qIMW+vg{dJ9*b6=~m!98kgBG~Et?y}Y0Nm@AyxmIp;oW-Ng;a3dP zk7pd}!YfiJ*F{-9(ulcfsS^%BfiJf2>OtI=rAntPDbvGH@mZm7e08FUJ#~JgCupwl zRw3y-1*`nRYKO0S%9#4_y}DOL=l>pBY>P0Da?!?eIC2E}w;fRwNBsp?pldA^4hn?9WTx9dvzz4He?DjN4l^I#<*|S^B z`?CcnMxYfOGjE!zMk3!#EbU(BeZ?J2fvj%$KLB`Ec0%(j`yWkol~R%-Stx?d?4iCDU8NC=(#A@C7Uzzk-+Ps7h6KcT zYnYjsH*1A-9H(*8w2doR13pLg8r$*u?~`%*DLHLd5W)F0Ft};9S6+A|Jd<7t-c9>=;UahM=@rW2(mCF+u#xdLW1j)=976OqrOIk0JS)tS(GC9A@jWU@VneVc{kIuF>R?q$sIQYKUw;KI_9$<@ zzYbst1rN0+$uHWirmf@{D9cJSykv@3O}yF!uCd6+P(R;~J2tDc)K~Du5_%xh2}(5h z==%1TB84L-10+ZTk5S;>4JV*GYw$&m;YjDi1m>_)7?6LcI_}loN=5wR(0g-wveQb0 z^mtGwagU!oeHmyNZ@^`GA49nVYXrToW>GqbTo8xb|1EOS5RzFhn@-^eQ%r)(pRbBE z;z)_Y^o%#)257ryMMs|=r=6ruwxv9rdy?Ut|3|OIfdY*{7cS)A96bjF8WC`tw^7$@ zDinfyj|QE%d^kL!o6)%8QPGyAfypQ25Dn54fusEN- zEcvG&i2Oxb5fP+Z95xovqn1$%DImK9W&X|_=}tNr_Z0Tapd$7y4$rW(IsNR=8#ots zN0#^B4X{~IhFKFX za$aqrwm)fiCb$03y?I6^i~PUjD`|*$?Qx?@8i@~=U%@*CO(yg&q2-Orz* z5q~3`dM##8w5^jL4I!g`%D?TJsQ;L&LjGkcO)P*cyu2%Bi6EYr#@!-BOr`HQ+(2`a zgut2(!YVO>e>qiKApc<#p0`-yR`ft7m-`uKu~A=gwRqf)Xh6++^gbF@o% zmK_#zaVz)Ky32&Uv5gOzp)NZ?~|GbtP-VSy*bla zG#NjTIJ$=W#}5{*iPUcBRbs>EoMKaLs)R4Nelj_QsUn+eHDSEUD!U>I+_mXg7>0wvXExGC_qeit1 zBb+vuV|pmRx_^CCj&b{T*AU28)Qw8!v*8Vv%BrKh6cWbt+ z*_%)K@3t5XG~a6k@2K0rx@8QxwNt>_QEAU?9|vQ$8DxFM?~Y7IfVeqNQOs=3?(04T z&$Rxn+;L1-6Ij%&aI|V+sC;$RxHZ1E9h&y6y*~Yf>@Pbz7%Rf97!KUiOw6*$=41La12Zw&DckS0b}N`5G3-(zSSTriZ*(=E3*Tj}u)73s@qP<-)}!-4n} zaZ!-1pv%gH8l&j7w{js8=Kx;x{12fU==95bHf7yFD$Iw_>8gT$nyZdwosj(D2Gpo? z&wHZ^LbeQhFMZ#Kd)V8KcvVBxUa=wLKi`0nhd<*|;*`5&bh2_LWO3;t&o$Id0J%uSIJWC9H^qDKrq)j^i z`*1z93nLNlMwn^bkIs<36-M0%>b&H`>KTsz19Uq{h?h}bNgVH1k|1~QsP98OoE!2S zzii-a%(vekRM!CN9;KMh<-27tGo($HoDC!+N@(sN6 z@Yh^6*UrNls!s~7*IJ8-$A(qfqJ3T z$5pk;>&+iEUhJS#yaoL1c8D^eEtw^ty4KfaHF*}jR?cem%b}^*WfWiwrl_L1wfiHP z4Zb##Z*uWLn!$uTvMos|Bp$binqgg|an&UTo067WwAIzVNf?y+;aB&x`tbTfM}*^U z$$0X{D)-!~*wS>;pY!Ef({C|8=R39j-yqDj!Y_xk4bS_X2QSE_NNnFWN?n!}WN&{)Fd}(C&M%HP*IK}}Z#3|x@Z-E~T1USji6t16 zlR||gB)jnXA)V?1vsCr5r!y?F?>Mh%eT>c#(TU(Co3OE@4HEAAK_-PZl{-^Zb2Bpj zi}4W8eyX6CrQ|u^Xscww>W3y3>kby;XA)FJ_11;I>TmZYEV)X2GvF>w@mTNYP8VEq zy`bOI*E?61RWlQ{h9@`zH$x9UB?*QJ?o?0fV3Ucu zdT(O&b)!3nsAq6({90qPxoMK8~pju#pGCUv3?d!yQ3*yaLSsibeM;kgf|d6qOZIo-bkbK3#HcGgG{w6tsXsBPoPHiKo1?z(P~+^t zs2P>lDxfn>q4SgQ+~Q`-p9QA;($7a|TbI3xIQRY;s_A~u z=wnYf{#-xF-F(~h>qoZwAdMIGDucOo1_jg`K=iNHKZ&i?i-_ft{QXIwy7@zg0QNmC zY5MB*2F|&VGh%v}lzz>G(f20~;Igm!2T$zCBdV-k&HCXPKTT5J@>9F?RBp*ZcQztf z7*ZeB{c^r%wv6p8l)A%>7gt>Fp{viFmr@w({nf$i{`zxj5!bycs^H(c-3K|KOQ=3u zz?+?#ky=wGDeQ7b9XWwr+IMvTv4GxkMlp`=nG(5k3TT39UZ=q%ECq|cH!2V>+ zkU!Ox=DwR94_H(gd~}&_B&tfv+$F+md^-pmTMTe;llIHF>9-lqS$UK7zLEG~93~7u+)s@xj)nDDIF)pVk#PUm)pJ-b(Ao# zZ*5;%*&4i+R9Qj`Yijn-AAx%C#xjT611B-f8zz}in}K2A?NfG5C$ofi z*rzYlYa@41&KajaB7xEq5#6WjT)52%dn4DO!1;&WAW^sGj-c+1!QVt1V?U{?5mLeR zsyn*W4p6@5p0CDNdnfZNIHp^+wFTAf_3Ink$Lrcg{nM26g;RI*WCSf%>8SNnpT@46 zms@ixUu+9b+T>(Tj)<6ZuULOZ@W&_uUyQ+JDu!1tZ#9}DzBnZ)GSw-iKk0JQg}WN6 zsIFPp&yJd>dxg7;-PWjeV45gweoQG6xG`uR(OcAUHkEkYLqW3G3*Tx5RBT&gyp$Tb7o z$AX=r$#;2{ar@xa5|<2?YsY>3J$OZVc~hmMOhQXI8-sHtCG%Dn2Gr#tdtE#&xpQkG zByO%Uf^$C70?d{_j;C*62d(Eys2-mGXdGZS-L7)mENSHf9J|-9Pifjv_SJLkF*w|{X*mWYrxC|2R;d0woHB$2Gee;0%P{HUs zpaDv7!SoE|Brb6cc`1(TO?-NNgSlWZuI{sun`!;sl-^%!i;d2=89`y!Z&R}uEk!0* zh$oYJENzdIS?R_LCcd+_X`wjsXDd#=t11+A?*pAu8&tAic7Hrk5*dBMg}+_4{t5ZP zS5K;gqTU?2`On3YIImy?R7{Jk)(P>MXx?gdlQs#TdDPhOX6UqLoQJ~oX=&TPwE%ei zn0h%VK!vD(J+1k!gAUWvs3H4e7tUqT#M6Mwh;=XUlj{psF?%H{+dG{z7xMe-s+8)r zl6?8Fj+2A?8L2`FQ=o|8k`cV>=~B&ApgEyiBgcRHm7^{BfybOX4GqSuIM!iAp@%4S zL7WjE>G-fH~h1?P;29;fMeTV$RgpYCE{_=e}>2qw?=dFFi!nQKJ$E{NlEn({Va zW<3PZuc}|6m$vYN9W9Dphn?-EUtRtsPux!?gPmW#jh5URn-on|tZZgUn?64m{fO6) zOO?2*2n&0SyZc1gu|IE~Js1)0SWQ4lPQaPXCHSrYLXoU~e!Q@=BZ+ynuAxE5Q?@$v z_xDJvjaB9PYfv556hN;U6YSJi<+G{=dT4r_g{n1n)tw#|gL?7+Ee-GuQ$5OvLgoWv zF)H+B_-m0QI*SI*fNuV`?PUqPIecesvY^t}{5$rHJml$tC=MUO?N2yvx^zKXd?^z+ z;xG(IjmlIOwXW7$8R-srwk$GK41s-nv|z=lFvId@MqW;uP2 zcl@3cyZ_C(MPglxdb@v&(rYd0)FB4InETpT{u~h@`V1+fq<9nS3z4IZ*vx6y?{Fh# z-mRz>m$yXUG)u2|d!SixixM5u7dPz`TO^XWzBRYkIdMXl9o~*PrneC|fbcu?_^@^& zT^m8MVPqrz7C2NbPAby({05OHypI88h`7M$!~_{R!9fShL(`~_RPw){I`?d6}@YU6lHh8o%p8bHG)b2Nj%5$=>A3cxxCx4);9#x`5Ta5@%gUB93LpJad zLbE@!*>GR`qucF8or+mlCA?@vfO&{2C`w?KjA2*3<%gmvk@S`gQDnM8k@BH|f!B2& z2s<&kF4O>~Lez$mC_2QSUSp$oeq)F~C*Iiz?RFzqe z2OJGye_EY%8=d>_lejm;XB=`Hr&Xf1x)wLRJ6y(*jdwv=FDZCC^{j>FoKETjnUNf{ zZ||Y2-fla|tgDB@)y?3C>k1F3$Y>x=5Uf+jVa>51%M!d9de~j(`t#P~)bcUriP2BK zZOBa@VFYR03&y@20nuRgwG7Tdu3TR3+f3si5ArsKL;XoQ_w)ro{GrINzPXh=a7pSZ z)_zF1KxXlai&%_68)GVplXS!M8&<}>t2dAvQz7X0b9uahUDj9E;`Z#lu|vrroaQC^ z|1_+tw$Gif_)1keqdOQ<`)%55z@@E5cgG#~hNcgf-xmZeINohk7@n`1cFbakVV{(# ziJIjn2VGUrdDr=Y)rJQ41$Qynt-uc5%e>k|ou9MnDiI@KI#lk^WdHe~fMjaRhp@N8 zvZ2GlZN1VV_l>J~Dc||Rp6Mb7lto)@pMH_)ohRAKk;F9l)e-j8He0*WQrj(o%*b-3 ztU2DWra2L;|3<1tXU?uC-n`+U$T`5XdaK@DOA1!1k#mzrH_?W=ZRz%xj^CpJ<47XW z=TJ|Nz+?Wzr^7|2;&lYwr}$H^JG0Qu0vEHxA!3fXQqUPB^K41%_Tz!xUP8O!WvWQI z_l?KkA<2uE6PL^mDNC#QzfU&v#g_~`6TQdrnFaGwzO;?<5&9aFvLy)qf(Sy6GdDsE zvjtq7ql%=An$MUxUb6IaW}}<>=nrP0r2ayajY1~mDJHDXmMtW~X2Q@~P}U0|Q;M%= z@~@0{(v<%`Uri{tQ;hx-wsYs+*SZV&=R!O~wo~igz_xn$=!Bnct)FOaOtRNckN@tPf7N z(2~wvwMSN8F`JEmbHk6n5TERD?u+CFLgnC{Yj`woH>=bHSDI-lOYzqqaev!*s58rJ zW`Egz&Te3UXs{Xz?`!0N5MI54p0AkFj9N}K8KS<1S#NTEH*&Ib!Owm8OagE9a@4fD z(k@zMablXGgKY8} z!svRpCpi}Ukw~AZmv-&H?6mxZ#R((<7d%`&P=(5^IfwVj`V^+isib!1+-8XwHqlWE z0DB5W`BI11w%+-#GD}J*N!)7QV`GK!RBL=V;k|m{k{;~di^#^OyI(vDC7ayOlUJz{ z3ZU*{!(7iyM@7Q{AXD=>EdsFQQhJSlD3mfJM;ivplfwb0qJkTQ1^9y;5wHZTXw>)J zJ#60Aox3+6kE?P)+B>`Ht5u2(eSTXAhXk{CIYO+6Q&M;cAV~tB&ewz^TkTG*P~5dx z|6!+!$hZ;_8hJl+GY+&)vNyMjoljv77@9q&e;j~IcNylDZL3$R*;!TX2o+MT^jK`wKJts5k}fGEC-n3b7-R0Ejudc)m= zZmevLAnB)dw~?I`7icB5LM~E@PO$4EMS5F5q%*YhT`N|QX*+{w!Kr2kP+bI{;8^6C zx{dAP-Bxxp(kls=bHMWQ`9MEvvwI-d(eZMgVwm)NIkESEv6_6O3WC)B@Yd>?md)J& zqP=7Y(lQ2i1os4ml-S9;vQ~* ztj7M%94gp}I8(4f|NS7(l#YcEa^GP8xZL~|6k?s+$VpG3+J6ru7>_!+V%X%UaEDrW zYhETY&8?g<7y`L)E3m96qRxuRjz?-?x&%E>GTEehtY2@RQ~6@~^ETd%z*JLe<_XUH z%ILtSP=>NF_mY%(+?92G3OeCd{e-sE3*#R}2->$F_wPfgruc?fpjElGwI(q0e{udO zs?s9xPaZkg-_X8kOVWT?;AA<+SU+Qn@Lw}W4iYqr!Q{(CA(+WAyD6pp!n^obK;m=TO2l}v=5m%0>uq-UhI40fc?NID zU|Vo5rn_}VN&v-}(v~FSl4FAeWMFL@<-K-@Rl^*kNkPEh(Sw$sNIeYjjRO-M3GtF0 zLXzLSO5tAg-lQ&n7iUfSIlFznJ7W%ZiXn>2#iehp0*Egz9eYHr_y*el;&^=bp^>po z<;vY{E?9~J@da9t1=|;NuNOZB!Y!lsg2$l(a~V>=RQ7WVt(ht%5!tcbz{&YYuKsdh zB`-K8dJ%q0zoP=^lKa9tB9w=y$~K1cfBxa3Lvti891a>iSIl)WWr3)jk%PUFrtIlW z-_{C*zJ5~b3*+vN*Z#EEjn$L+nd37(?W?aux_qXb$XY`BhZ zK#q4)8(kp@Mg?O4qav$|Sy}W2xUOi4f8Uo&d-gG>(61Pk{YSGzu$_X?+6tkwqvPAYJNF}Dud6Y)uGw4nl-3c@ zQD}S;6lE&Sr!2XKPHoiGQ4d&pzVbL?PGFL{o{Lemf(0WP%^eJ`;!RM`y?%qO z`39T}Sw?^%J7Eef3dUShQAsAOASJ_ok&1|@vWFBIV@0w5#}L{jqCyg1B7k;-v+^3d z-pAC}WMl-BgawC1p`ah*`qnJJXpSmt_oHq>^+#fIdZ^k$P3MWx&Y*EuC31x3pfnBXf_J^-_d3zwlK$Kfw! z5X$ji*y9;1SUlXs_GN}E@cKb&lLXxpRvI_5-|GNpOcQLWjQ7b&eH|$1dM~@ELT3`M z3s1BE+#CpSZLMb~vqiKViTf+_TfaCx%Ha1Fh`H4p*%qAm$BL+5!J@HzdlvlKBwh!m zOSznfmxg~W)c>-$%_8@#^O-$tNmepye1`a^&qW3n3^fLSzj(268~>zWXgNsMi7^_m zBx_FBtC}kGsHRU@edZu0l9vGwk$whiZy$3OK^B?)tD7elDen;Hx4>RH&Ye!ZW{ON3gsEH<%6V6= zXEEQj-b$^9_jGr{7f0@)TYwI^Cx2f(SA!h$ZQB#pj%~~BSN!JWU%(uQE%oi^c=Iy4 z_5l%ghzjk%CAay%e(yVx-0gWY$!56OyFaKJI2x(g7OEq}TPB-&j?82O0P(;|cuF{w z5MamxZsSunuuE+<<-OqO#7RRX*$6XpuEKU^`JG**g2+~{z(66DODpg><5r_$v^J`G z5!1pm1*vB@1T&*)3&>nag-4%G(9*CY=l8b51BFSsXD+XtpsE)Wu8o#gw8*I))czuf z#IE;Ts#V?$viyDZPPd}&$TX#&fY>iasV_e$ztZnr@5$>6wxkuwFN~Vpg{`_PSjbPm z`(142Adt{6ejaJ4>TL&Ffn%-VAdYx**sXSvRE%D_BT9oFup8aMCFgJ{<1npIH|DH=Q7@BtGVrXcKG@BJC%cQgp%M z!tJekgI4-^vXqx6bNeh7Vo|#$&bpA3J5Xh*LT*$0;u6?5xr(l9sCkibK!U>5i@?)N zjz~`qKIgi>%^Pss5=8AH&<60sX@qdrc8^C$4Ws59fIUA)Nu=WiEz}FLS4h+axeS(( z!$SriN#6m)1C;6O7?PnM>0dn9&8!m216<0y@KNoiP*Kr#2~-{?>g&lMYrN3B{+Blp zdZe(lvdlINjK-9+tz zM5qj9p6FKyp<4Ti+Dlu4gqF!f(Zr5J)vK2~2Z128+EZ!x&`Mpm^mgpur0+i7gZogl zkcX@@Bw-~_K_!u2yTn?h9AD@|{nE#`B_Vws0524IvnMf^Q@H*6%Y_oed}#1yt4uFJ zYW6L77K|5;3mALk_xa9^)rHuFMKG^#<1+GjW#vY0TBOtJUmbV4QcLOHAv_*BL1Y*D z9h81w%r1=uZ9X~;DxI$_{Pxw)^p?h(R*#MVRSK}$+0<2V+Z3aA3L-pO>FqmZtcumw z+mL56K)1kTL4}Wb9MxpO82!M)Bz^s4a=Y90{mIL(QQ9O88rngJ>r+wb7;zwSNzY)y zOF=q;uxuCA3Rk4OAKpzxITN8&90fn~XBjS^4~9gkeSgSh zIYp^&_lDGk>qz1TjRhuQ%I`v zLxq=jycidVD2u$qdN6pJR{5b3NawOz<3oeuz$Q2CQs>q^*8Q=X&^y0BiPvocg&}4O zwC|~{0dU&R?uaAiqx#@YJMb}%ebeXF`4mS+g(;Jq)GI|toa;0(cwZd@+_>Go`^+PS zS24qkOD3QsP$<{jQ)+wQCdcQ@k%azp;;pzZaIX`gH?(3q+!(vY zE*XST^*_#~N-QE^@uAA|miFtCihgw}9lt-1OkiRCkfUnp`#4}--dW)_icih9o$5){ zmM}!~%BNMV^=R(|sx%fQOSn0XQOR>8yIj(LF(_!7?g%kDK|=$KVj&Os$*!~rN!hz; zZ7N_dx%=0EW~DSHYRZHt2stdv3nittT>JB^!>$(Rri1_cspJb-Um=V+Ti!Oq<`M;Z zc@;Rf1Kr9RUxtx7o8?63_&9u9%VbWd#;pP`N`SX^9tf$b_0gdmA+4fl3#LEP@kt_f#+*bCh_sl^ zXR!+1-Wu8bvdhg^J+WW`_0%_(%c3BE5R%O-`#LC{nZk_ehNp2zm;p<>6zGm}yG{)- z4wV=`J*^wpH)-&G@XOr#I@7w0IG){3;~4&x(+=MjxD0;y@~TG3gb?#6gmz!)+%p{( z^{-f}c3W|KYQZ(*1}#t+Bnot$p8AWcyAB0Be-BN5PG4y=Riks)I5&)i&`!u{8ZqIB zR-NZ6Pc`(>p7q;XvK2?GVL37+8-2ZbCgf;fBdGgYM)Z*&bp9;Kb?Gxmcte{Uu)zl| z5+#|RcbSN4^4Hv~OH!OBi1gaAfpT%Mvjsta*r?^aOuhsEi8maWE`c;tJsF|J+I z4fsG-po$@IsDJB`+Q&4;$tQ*MZ*?vtc&tk>bHR|vXB738EC{+Mxo))wVA+`sUU&#f zkuPI5&BQEUigJwe79XQT9*=L^q$QM$G4ojZLDr8aED(&+M zNa|vhhE$u{3-!M_4rN-r4ITwm;Eeef_R{V4L96XN>YXgf?3N4fbUFJYKl5_ieYIxc z{PsOO6HTG4W~F6(Wznu~cpCP;e)09s#%|(g;M-^(ew$Rq$g>QhG1~HKVs<^>^-?6S z24t-Ak42nIJYrLIvcV2kfmaCrcko2DfZ7^jG{Tm0@Jra;d%h?re6QdYlsH`WO*4J)de87)JFX1hfO!!=@`& zzxI;+mAH2mDF{u~6&W%Fp+W|(SIlFS8@4$HE}!Vnm~duldueJ{vNSXxcRic?H)>K?+Y&R+e8YKZp85qAdWC`nPvf z&XN5U-8gd|xeu`SSh>NR(3>XOdQq_uZYKz6E%u9gFxZ{K@bBrUyCg~K4#jm*U(=o5 zmsmW0ZFS?BXK*(}8MfTZ?3#?p_vaE6@tF}c>&ikO=Sn>`Eyj4M5rClPCBL$nIP+hJ zH1^#h*6gjnZJ??K{T^?Ae_9OFI#q&LX@darTjrxU>71FeJ>W>xbj>9%Y$&)VvQF3? zT$?c}`y`-kvk9Bd_<@WXA~Ljr^46gCvUQ6#Il3W~#&91pZa?H=MQy=`bnCWJ5^TK= zC^)o|+__|JcsK*f8s+{}LM@AUwxk-E7<)Wl>Gt}3xOj#U0uXH>^C>eXCC`%uHei%N zZijo@(dD}Uk=L~_yfTuvly`o@qoQxn;Fap*wPZkZ*HvGYxgF24O4k1Zh+bC`e{HYL z?JQH$DX>yAb+Xle(mSu-L|@lYXx`Dxxmpn4Tgu@?hG<*@D3hqn7nx9R8 z_cm2M^6Z7p9XKQN7n*bk=7o)R4a96+pqn$RAwK{}b`nBCXpHCJlM3;|{eA0D*6IBk zsZ@41I)3COM=ulY!KJ+0n_<8LE`Dyi&O$Ig9>~P9nP1UhIJ_R4g(}=Hu&5hzjdN!8 zp=y`A>Q~Bw%egNBvMc$buaktRsZcN{aCoOZyH@0F2RS@KFbv9qXTJI5wqGt%U>=I2 zA}H=N9bsAc<=K2@W;7ySB6-V#KVSjQXIJ5LwQ%nO?!xQ3>voaq--?~7x&r!0Brj@u zujmLD>27+xIiabobc>R#xC)dqSIDv^I}H_UFiRm3OO+B4veT+jn*m@9F{!)N8+XBM z;TP|%tEv);Yt)3W>8BK@^d8Ae{~)otRcDv5m1kwB#7G;QVb{8HsVE2vN2g$hW~cqA zlKg8Kexmi#n@kAuA}8*m+hjG0>qNMHeu|R>UKMkkSMrmmcYWjZi(0lDLOh}cCmD9D z5QOJ}qtugBs(4g4F@ty?U|(_{jP!huBTzQ|;t)X<;(_~esj^L=V{Jh4QQlU+tk8Dn zuFghZLL|>{wPa_+6tNi8MB-}+JjO`n*KQF)0+;%>9^4<9w+EAM8-xaA zI1Pt8&Fp^KOJ61>M*}8%O?P$W`MH_mQN%0|a~5_c{~q~U+7+92M-SQ<$qWh=RvS~8 z_u*m?M@T*spG+YQDE9IrgrUINX@#q?fuesn6cZL$ZbiAn8+W7*H&Qr0cHWP(JK*`2 z?+808?a+p=7uDnA=RhN2UFl@o3R5RZ5pvbJyCMWHZgsuhfUGSzG$$!gCan8%nJ`Nhn`{ zWZ88W$%wnu*eucL6KhNG(|LDu`TA6GxC8rGn4sKL#AVVTFG#mrFT6oITA45LyjcSX zY$0!2@8po@Jz+^-jq$N8OAWI;jANNa_=rO+8tHqG*>VvBaQ6=O{N0~%)`v+QokVz% z2?5)Vf6G%{KTW2rUO7A&Hq%~qInjXGHWXVXBV*#uHMS6c(M56iKoEK9KlOVPcqV)b zp1*w=&!Ka5o;0zMlVuVfJ`@*Rp&|Qw(N)h{^FckGxq2QG(EOL=ToVVtlT=Nc1D{^& zUDULNSiFrEKYOd$GpYDRfe7C*e(1xKzqJ6!2_?-Msf%(O=oSe%$~bPVOiqRJw=410 z-ChmCM;60BxHy3X&i~1=;Vu1PCwU}<);#X-W2wnHZlP#%`5`_b%8$Opk=tM{>KBIX|K%}q6KdPIe`~pDs+bA1~fTO%_yxe^xfCFKbZDZ?&GIXX z9&0@JJ*_9OCE!JfOta9whhzDzUa_Ut6gUP+nygE9M3MbotTO4@?Mdu6kuq68Ot-9^ zM!0V&oneTQpcqi`)~!)hh;V|(dCFQ}_YTxl}w&`#9-EACtv(2O&OTzQ3mtGLx{#GOpG^{Am$OfRXl9 zcSZ^WJ{0E7kcJ#PA1srL`zN793exHFK?H;}SVMoF@N|sy;+*p0 zI`KEBd5GZnSD{h|9y1?L2JEF_*Xk%0A*d>d++H-`Chl?O$er!z3XkJYC@cOO4`&K{ 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 z
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 Hzg#@7Imvf$CRW1=5HG&;;KKTXny>2G@ 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 BUS9wJ literal 0 HcmV?d00001 diff --git a/controls/speechtotextbutton/overview.md b/controls/speechtotextbutton/overview.md index b098d016..ab5f4ceb 100644 --- a/controls/speechtotextbutton/overview.md +++ b/controls/speechtotextbutton/overview.md @@ -17,11 +17,11 @@ When the user taps the button, the control uses a speech recognition service, li ## Key Features of the Telerik .NET MAUI SpeechToTextButton -* [Visual States]({%slug speechtotextbutton-visual-states%})—The SpeechToTextButton supports different visual states such as Normal, Listening, Error, and more, providing visual feedback to users during speech recognition. * [Language Configuration]({%slug speechtotextbutton-configuration%}#language)—The SpeechToTextButton allows you to set the language for speech recognition, ensuring accurate transcription of spoken words into text. * [Events]({%slug speechtotextbutton-events%})—The SpeechToTextButton emits a set of events that allow you to configure the component's behavior in response to speech recognition, including `SpeechRecognized` and `ErrorOccurred` events. * [Commands]({%slug speechtotextbutton-commands%})—The SpeechToTextButton supports command execution, allowing you to bind commands to the button's actions in an MVVM-friendly way. * [Custom Speech Recognizer]({%slug speechtotextbutton-custom-recognizer%})—Implement your own speech recognition logic by creating a custom recognizer that implements the `IRadSpeechRecognizer` interface. +* [Visual States]({%slug speechtotextbutton-visual-states%})—The SpeechToTextButton supports different visual states such as Normal, Listening, Error, and more, providing visual feedback to users during speech recognition. * [Styling API]({%slug speechtotextbutton-styling%})—You can customize the appearance of the SpeechToTextButton using the styling API, which allows you to set properties like background color, border color, corner radius, and more. ## Next Steps diff --git a/controls/speechtotextbutton/states.md b/controls/speechtotextbutton/states.md index cade30de..6de85f88 100644 --- a/controls/speechtotextbutton/states.md +++ b/controls/speechtotextbutton/states.md @@ -7,9 +7,15 @@ tags: .net maui, telerik speech to text button for .net maui, ui for .net maui slug: speechtotextbutton-states --- -# .NET MAUI SpeechToTextButton States +# .NET MAUI SpeechToTextButton Architecture and States +The SpeechTextButton control provides visual feedback and handle user interactions. The button uses a speech recognition service. The service provides per platform implementation or an AI agent conenction. Almost all operations are asynconous. +The SpeechToTextButton control in .NET MAUI has several states that reflect its current operation and user interaction. + +The image below explains how the control works and how the states are managed: + +![.NET MAUI SpeechToTextButton States](images/speechtotext-architecture.png) ## See Also diff --git a/controls/speechtotextbutton/winui-support.md b/controls/speechtotextbutton/winui-support.md index 800fc565..6ccc507a 100644 --- a/controls/speechtotextbutton/winui-support.md +++ b/controls/speechtotextbutton/winui-support.md @@ -10,5 +10,37 @@ slug: speechtotextbutton-winui-support The Telerik UI for .NET MAUI SpeechToTextButton control is designed to work seamlessly across all supported platforms, including WinUI. -However, there are some platform-specific considerations and limitations to be aware of when using the control on WinUI. +The Speech Recognizer uses platform-specific speech recognition services. On WinUI, it relies on the [`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). However, there are specific considerations when using the control on WinUI due to platform limitations. +## Limitations in Windows.Media.SpeechRecognition + +* The app crashes when trying to close the application via the "X" button and the app is **Packaged**. There is an open bug report: [Application crashes after using SpeechRecognizer in a Packaged App](https://github.com/microsoft/microsoft-ui-xaml/issues/10697) + +* Based on this issue, the SpeechToTextButton control is not fully supported on WinUI. When you click the control, an `InvalidOperationException` is thrown. + +## Solutions + +To use the SpeechToTextButton on WinUI, you can use one of the following approaches: + +* Set the `SpeechRecognizerCreator` property of the `RadSpeechToTextButton` to `RadSpeechRecognizer` for **Unpackaged** apps: + +```csharp +this.speechToTextButton.SpeechRecognizerCreator = () => new RadSpeechRecognizer(); +``` + +* Create a [custom recognizer]({%slug speechtotextbutton-custom-recognizer%}) for **Packaged** and **Unpackaged** apps. + +* Use an **Unpackaged** app deployment model. + +## Language Support + +When setting the `LanguageTag` to a specific value, ensure that the language is supported by the `Windows.Media.SpeechRecognition.SpeechRecognizer` on WinUI. + +For more details, review the [Microsoft documentation](https://learn.microsoft.com/en-us/windows/apps/design/input/speech-recognition#predefined-grammars). + +## See Also + +- [Visual States in the SpeechToTextButton]({%slug speechtotextbutton-visual-states%}) +- [Configure the SpeechToTextButton]({%slug speechtotextbutton-configuration%}) +- [Events]({%slug speechtotextbutton-events%}) +- [Execute Commands]({%slug speechtotextbutton-commands%}) \ No newline at end of file From f937fe8e0f28dfac1de076d76cbce91be33d6c21 Mon Sep 17 00:00:00 2001 From: Dobrinka Yordanova Date: Fri, 8 Aug 2025 17:06:14 +0300 Subject: [PATCH 4/9] update winui support --- controls/speechtotextbutton/winui-support.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/controls/speechtotextbutton/winui-support.md b/controls/speechtotextbutton/winui-support.md index 6ccc507a..1e27f615 100644 --- a/controls/speechtotextbutton/winui-support.md +++ b/controls/speechtotextbutton/winui-support.md @@ -32,9 +32,13 @@ this.speechToTextButton.SpeechRecognizerCreator = () => new RadSpeechRecognizer( * Use an **Unpackaged** app deployment model. +## configure Speech Recognition + +Confirm that **Online speech recognition** (Settings -> Privacy -> Speech) is enabled. + ## Language Support -When setting the `LanguageTag` to a specific value, ensure that the language is supported by the `Windows.Media.SpeechRecognition.SpeechRecognizer` on WinUI. +When setting the `RadSpeechToTextButton.LanguageTag` property to a specific value, ensure that the language is supported by the `Windows.Media.SpeechRecognition.SpeechRecognizer` on WinUI. For more details, review the [Microsoft documentation](https://learn.microsoft.com/en-us/windows/apps/design/input/speech-recognition#predefined-grammars). From e6bb5bb32bbdb7f1c61ed21443b230a2dc28f6e7 Mon Sep 17 00:00:00 2001 From: Dobrinka Yordanova Date: Fri, 8 Aug 2025 18:08:32 +0300 Subject: [PATCH 5/9] update articles order and config file --- _config.yml | 5 +++++ controls/speechtotextbutton/commands.md | 2 +- controls/speechtotextbutton/configuration.md | 2 +- controls/speechtotextbutton/custom-recognizer.md | 2 +- controls/speechtotextbutton/events.md | 2 +- controls/speechtotextbutton/states.md | 2 +- controls/speechtotextbutton/styling.md | 2 +- controls/speechtotextbutton/winui-support.md | 6 +++--- 8 files changed, 14 insertions(+), 9 deletions(-) diff --git a/_config.yml b/_config.yml index 877e1bcc..31abe860 100644 --- a/_config.yml +++ b/_config.yml @@ -493,6 +493,10 @@ navigation: position: 15 ## End SlideView Sub-Folders ##End SlideView + ## SpeechToTextButton + controls/speechtotextbutton: + title: "SpeechToTextButton" + ## End SpeechToTextButton ## SpreadProcessing controls/spreadprocessing: title: "SpreadProcessing" @@ -743,6 +747,7 @@ intro_columns: "Segmented Control": "segmentedcontrol-overview" "Button": "button-overview" "CheckBox": "checkbox-overview" + "SpeechToTextButton": "speechtotextbutton-overview" "TemplatedButton": "templatedbutton-overview" "ToggleButton": "togglebutton-overview" - diff --git a/controls/speechtotextbutton/commands.md b/controls/speechtotextbutton/commands.md index 3364903c..caef4219 100644 --- a/controls/speechtotextbutton/commands.md +++ b/controls/speechtotextbutton/commands.md @@ -2,7 +2,7 @@ title: Commands page_title: .NET MAUI SpeechToTextButton Documentation - Commands description: Use the exposed commands of the Telerik UI for .NET MAUI SpeechToTextButton -position: 3 +position: 9 tags: .net maui, telerik speech to text button for .net maui, ui for .net maui, microsoft .net maui slug: speechtotextbutton-commands --- diff --git a/controls/speechtotextbutton/configuration.md b/controls/speechtotextbutton/configuration.md index 7eec384d..2dda7f72 100644 --- a/controls/speechtotextbutton/configuration.md +++ b/controls/speechtotextbutton/configuration.md @@ -2,7 +2,7 @@ title: Configuration page_title: .NET MAUI SpeechToTextButton Documentation - Configuration description: Learn how to define language, get the text from the speech to text recognizer when using the Telerik SpeechToTextButton for .NET MAUI. -position: 3 +position: 5 tags: .net maui, telerik speech to text button for .net maui, ui for .net maui, microsoft .net maui slug: speechtotextbutton-configuration --- diff --git a/controls/speechtotextbutton/custom-recognizer.md b/controls/speechtotextbutton/custom-recognizer.md index c7d6164e..bb0589e3 100644 --- a/controls/speechtotextbutton/custom-recognizer.md +++ b/controls/speechtotextbutton/custom-recognizer.md @@ -2,7 +2,7 @@ title: Custom Recognizer page_title: .NET MAUI SpeechToTextButton Documentation - Custom Recognizer description: Learn how to use a custom speech recognizer with the Telerik SpeechToTextButton for .NET MAUI. -position: 3 +position: 6 tags: .net maui, telerik speech to text button for .net maui, ui for .net maui, custom recognizer, microsoft .net maui slug: speechtotextbutton-custom-recognizer --- diff --git a/controls/speechtotextbutton/events.md b/controls/speechtotextbutton/events.md index 281e0f7f..c2559013 100644 --- a/controls/speechtotextbutton/events.md +++ b/controls/speechtotextbutton/events.md @@ -2,7 +2,7 @@ title: Events page_title: .NET MAUI SpeechToTextButton Documentation - Events description: Learn about the events that the SpeechToTextButton for .NET MAUI exposes. -position: 3 +position: 8 tags: .net maui, telerik speech to text button for .net maui, ui for .net maui slug: speechtotextbutton-events --- diff --git a/controls/speechtotextbutton/states.md b/controls/speechtotextbutton/states.md index 6de85f88..f8a8bc3e 100644 --- a/controls/speechtotextbutton/states.md +++ b/controls/speechtotextbutton/states.md @@ -2,7 +2,7 @@ title: States page_title: .NET MAUI SpeechToTextButton Documentation - States description: Learn what are the different states the SpeechToTextControl for .NET MAUI uses. -position: 3 +position: 4 tags: .net maui, telerik speech to text button for .net maui, ui for .net maui slug: speechtotextbutton-states --- diff --git a/controls/speechtotextbutton/styling.md b/controls/speechtotextbutton/styling.md index ea695eb3..d640b7a6 100644 --- a/controls/speechtotextbutton/styling.md +++ b/controls/speechtotextbutton/styling.md @@ -3,7 +3,7 @@ title: Styling page_title: .NET MAUI SpeechToTextButton Documentation - Styling description: Learn how to set background color, border color, corner radius, and other properties of the SpeechToTextButton for .NET MAUI. tags: speech to text for .net maui, .net maui, ui for .net maui, listening state -position: 0 +position: 11 slug: speechtotextbutton-styling --- diff --git a/controls/speechtotextbutton/winui-support.md b/controls/speechtotextbutton/winui-support.md index 1e27f615..053c26a2 100644 --- a/controls/speechtotextbutton/winui-support.md +++ b/controls/speechtotextbutton/winui-support.md @@ -2,7 +2,7 @@ title: WinUI Support page_title: .NET MAUI SpeechToTextButton Documentation - WinUI Support description: Review what are the options and limitations using the .NET MAUI SpeechToTextButton on WinUI. -position: 1 +position: 3 slug: speechtotextbutton-winui-support --- @@ -18,7 +18,7 @@ The Speech Recognizer uses platform-specific speech recognition services. On Win * Based on this issue, the SpeechToTextButton control is not fully supported on WinUI. When you click the control, an `InvalidOperationException` is thrown. -## Solutions +## Solution To use the SpeechToTextButton on WinUI, you can use one of the following approaches: @@ -32,7 +32,7 @@ this.speechToTextButton.SpeechRecognizerCreator = () => new RadSpeechRecognizer( * Use an **Unpackaged** app deployment model. -## configure Speech Recognition +## Configure Speech Recognition Confirm that **Online speech recognition** (Settings -> Privacy -> Speech) is enabled. From 618f616a20f1de41e4cd19d8c25fdc129c26bcba Mon Sep 17 00:00:00 2001 From: Dobrinka Yordanova Date: Mon, 11 Aug 2025 09:37:58 +0300 Subject: [PATCH 6/9] update winui support --- controls/speechtotextbutton/events.md | 2 +- controls/speechtotextbutton/styling.md | 8 ++++++++ controls/speechtotextbutton/winui-support.md | 14 +++++--------- 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/controls/speechtotextbutton/events.md b/controls/speechtotextbutton/events.md index c2559013..820bf23e 100644 --- a/controls/speechtotextbutton/events.md +++ b/controls/speechtotextbutton/events.md @@ -26,7 +26,7 @@ The .NET MAUI SpeechToTextButton exposes the following events: * `Exception` (`System.Exception`) property that contains the exception associated with the speech recognizer error, if any. * `Handled` (`bool`) property that determines whether the error has been handled. Set this to `true` to prevent the default error handling behavior. -* `StateChanged`—Raaised when the state of the speech recognizer changes. The `StateChanged` event handler receives two parameters: +* `StateChanged`—Raised when the state of the speech recognizer changes. The `StateChanged` event handler receives two parameters: * The `sender` argument which is of type `object` but can be cast to `RadSpeechToTextButton`. * An `System.EventArgs`. diff --git a/controls/speechtotextbutton/styling.md b/controls/speechtotextbutton/styling.md index d640b7a6..1fa0edc9 100644 --- a/controls/speechtotextbutton/styling.md +++ b/controls/speechtotextbutton/styling.md @@ -51,6 +51,14 @@ The following example demonstrates how to style the SpeechToTextButton with cust xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui" ``` +**4.** The `SpeechRecognized` event handler: + + + +**5.** The `ErrorOccurred` event handler: + + + This is the result on Android and iOS: ![.NET MAUI SpeechToTextButton Visual States](images/speechtotextbutton-styling.gif "SpeechToTextButton for .NET MAUI") diff --git a/controls/speechtotextbutton/winui-support.md b/controls/speechtotextbutton/winui-support.md index 053c26a2..caf03ddd 100644 --- a/controls/speechtotextbutton/winui-support.md +++ b/controls/speechtotextbutton/winui-support.md @@ -2,7 +2,7 @@ title: WinUI Support page_title: .NET MAUI SpeechToTextButton Documentation - WinUI Support description: Review what are the options and limitations using the .NET MAUI SpeechToTextButton on WinUI. -position: 3 +position: 1 slug: speechtotextbutton-winui-support --- @@ -10,15 +10,15 @@ slug: speechtotextbutton-winui-support The Telerik UI for .NET MAUI SpeechToTextButton control is designed to work seamlessly across all supported platforms, including WinUI. -The Speech Recognizer uses platform-specific speech recognition services. On WinUI, it relies on the [`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). However, there are specific considerations when using the control on WinUI due to platform limitations. +The Speech Recognizer uses platform-specific speech recognition services. On WinUI, it relies on the [`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). However, there are specific considerations and limitations when using the control on WinUI due to known platform issues. ## Limitations in Windows.Media.SpeechRecognition * The app crashes when trying to close the application via the "X" button and the app is **Packaged**. There is an open bug report: [Application crashes after using SpeechRecognizer in a Packaged App](https://github.com/microsoft/microsoft-ui-xaml/issues/10697) -* Based on this issue, the SpeechToTextButton control is not fully supported on WinUI. When you click the control, an `InvalidOperationException` is thrown. +* Based on this issue, the SpeechToTextButton control is not fully supported on WinUI. When you click the control, an `InvalidOperationException` occurs. -## Solution +## Solutions To use the SpeechToTextButton on WinUI, you can use one of the following approaches: @@ -32,13 +32,9 @@ this.speechToTextButton.SpeechRecognizerCreator = () => new RadSpeechRecognizer( * Use an **Unpackaged** app deployment model. -## Configure Speech Recognition - -Confirm that **Online speech recognition** (Settings -> Privacy -> Speech) is enabled. - ## Language Support -When setting the `RadSpeechToTextButton.LanguageTag` property to a specific value, ensure that the language is supported by the `Windows.Media.SpeechRecognition.SpeechRecognizer` on WinUI. +When setting the `LanguageTag` to a specific value, ensure that the language is supported by the `Windows.Media.SpeechRecognition.SpeechRecognizer` on WinUI. For more details, review the [Microsoft documentation](https://learn.microsoft.com/en-us/windows/apps/design/input/speech-recognition#predefined-grammars). From 6fd87ab1c793f96d2a2f2d51eb2c5a3f630add6e Mon Sep 17 00:00:00 2001 From: Dobrinka Yordanova Date: Mon, 11 Aug 2025 09:52:25 +0300 Subject: [PATCH 7/9] fix winui article --- controls/speechtotextbutton/winui-support.md | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/controls/speechtotextbutton/winui-support.md b/controls/speechtotextbutton/winui-support.md index caf03ddd..84db8500 100644 --- a/controls/speechtotextbutton/winui-support.md +++ b/controls/speechtotextbutton/winui-support.md @@ -2,7 +2,7 @@ title: WinUI Support page_title: .NET MAUI SpeechToTextButton Documentation - WinUI Support description: Review what are the options and limitations using the .NET MAUI SpeechToTextButton on WinUI. -position: 1 +position: 3 slug: speechtotextbutton-winui-support --- @@ -10,14 +10,16 @@ slug: speechtotextbutton-winui-support The Telerik UI for .NET MAUI SpeechToTextButton control is designed to work seamlessly across all supported platforms, including WinUI. -The Speech Recognizer uses platform-specific speech recognition services. On WinUI, it relies on the [`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). However, there are specific considerations and limitations when using the control on WinUI due to known platform issues. +The Speech Recognizer uses platform-specific speech recognition services. By default, the `RadSpeechToTextButton` control uses the `RadSpeechRecognizer` as a speech recognizer creator. + +On WinUI, the `RadSpeechRecognizer` is not set to the `RadSpeechToTextButton`. When you click the control, an `InvalidOperationException` is thrown. The reason behind this is a limitation in the WinUI platform speech recognition service—[`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). + +The `RadSpeechRecognizer` on WinUI implements the [`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). There are specific considerations when using the control on WinUI due to limitations in the `Windows.Media.SpeechRecognition` API. ## Limitations in Windows.Media.SpeechRecognition * The app crashes when trying to close the application via the "X" button and the app is **Packaged**. There is an open bug report: [Application crashes after using SpeechRecognizer in a Packaged App](https://github.com/microsoft/microsoft-ui-xaml/issues/10697) -* Based on this issue, the SpeechToTextButton control is not fully supported on WinUI. When you click the control, an `InvalidOperationException` occurs. - ## Solutions To use the SpeechToTextButton on WinUI, you can use one of the following approaches: @@ -32,9 +34,13 @@ this.speechToTextButton.SpeechRecognizerCreator = () => new RadSpeechRecognizer( * Use an **Unpackaged** app deployment model. -## Language Support +### Configure Speech Recognition + +Confirm that **Online speech recognition** (Settings -> Privacy -> Speech) is enabled. + +### Language Support -When setting the `LanguageTag` to a specific value, ensure that the language is supported by the `Windows.Media.SpeechRecognition.SpeechRecognizer` on WinUI. +When setting the `RadSpeechToTextButton.LanguageTag` property to a specific value, ensure that the language is supported by the `Windows.Media.SpeechRecognition.SpeechRecognizer` on WinUI. For more details, review the [Microsoft documentation](https://learn.microsoft.com/en-us/windows/apps/design/input/speech-recognition#predefined-grammars). From 0fc58ce7bd28fc8e68a6703b70f4313651e71a85 Mon Sep 17 00:00:00 2001 From: Dobrinka Yordanova Date: Mon, 11 Aug 2025 14:19:46 +0300 Subject: [PATCH 8/9] address comments --- controls/speechtotextbutton/configuration.md | 16 ++- .../speechtotextbutton/custom-recognizer.md | 2 +- controls/speechtotextbutton/events.md | 2 +- controls/speechtotextbutton/styling.md | 7 +- controls/speechtotextbutton/visual-states.md | 5 +- controls/speechtotextbutton/winui-support.md | 7 +- .../speechtotextbutton-language-support.md | 106 ++++++++++++++++++ 7 files changed, 133 insertions(+), 12 deletions(-) create mode 100644 knowledge-base/speechtotextbutton-language-support.md diff --git a/controls/speechtotextbutton/configuration.md b/controls/speechtotextbutton/configuration.md index 2dda7f72..2d9a66a6 100644 --- a/controls/speechtotextbutton/configuration.md +++ b/controls/speechtotextbutton/configuration.md @@ -14,7 +14,7 @@ The purpose of this help article is to show you the main configuration options o ## Getting Full Text from Speech Recognition The SpeechToTextButton allows you to retrieve the full text recognized by the speech recognition service. -This is done through the `FullText` property, which provides the complete transcription of the spoken input. +This is done through the `FullText` property, which provides the complete transcription of the spoken input from the beginning of the current listening session. To get the full text, you can subscribe to the `SpeechRecognized` event, which is triggered when the speech recognition is successful. @@ -25,9 +25,8 @@ The SpeechToTextButton supports continuous speech recognition, allowing it to li You can disable the continuous recognition by setting the `IsContinuousRecognition` property to `false`. The default value is `true`, meaning that the button will listen for speech input continuously, until it is explicitly stopped or the user taps the button again. ```XAML - + ``` ## Language @@ -38,7 +37,14 @@ You can set the language using the `LanguageTag` property, which accepts a strin -> For a runnable example with the SpeechToTextButton Getting Started scenario, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Configuration** category. +### Language Support + +The SpeechToTextButton supports a variety of languages for speech recognition. The available languages depend on the underlying platform and the speech recognition service used. + +Check the following articles for more information on supported languages: [SpeechToTextButton Language Support in .NET MAUI]({%slug speechtotextbutton-language-support%}) + + +> For a runnable example with the SpeechToTextButton Configuration scenario, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Features** category. ## See Also diff --git a/controls/speechtotextbutton/custom-recognizer.md b/controls/speechtotextbutton/custom-recognizer.md index bb0589e3..105a0ba2 100644 --- a/controls/speechtotextbutton/custom-recognizer.md +++ b/controls/speechtotextbutton/custom-recognizer.md @@ -37,7 +37,7 @@ xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui" -> For a runnable example with the SpeechToTextButton Commands scenario, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Features** category. +> For a runnable example with the SpeechToTextButton Custom Recognizer scenario, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Features** category. ## See Also diff --git a/controls/speechtotextbutton/events.md b/controls/speechtotextbutton/events.md index 820bf23e..bdcb61a0 100644 --- a/controls/speechtotextbutton/events.md +++ b/controls/speechtotextbutton/events.md @@ -16,7 +16,7 @@ The .NET MAUI SpeechToTextButton exposes the following events: * `SpeechRecognized`—Raised when the speech recognition is successful and the recognized text is available. The `SpeechRecognized` event handler receives two parameters: * The `sender` argument which is of type `object` but can be cast to `RadSpeechToTextButton`. * A `SpeechRecognizerSpeechRecognizedEventArgs` argument which has a reference to the: - * `FullText` (`string`) property that contains the current full text recognized from the speech input. + * `FullText` (`string`) property that contains the current full text recognized from the speech input from the beginning of the current listening session. * `FullTextConfidenceScore` property that indicates the confidence level of the recognition. The value is between 0 and 1, indicating how confident the speech-to-text transcription is. If the value is -1, a confidence score could not be provided. * `ErrorOccurred`—Raised when an error occurs during the speech recognition process. The `ErrorOccurred` event handler receives two parameters: diff --git a/controls/speechtotextbutton/styling.md b/controls/speechtotextbutton/styling.md index 1fa0edc9..4762cea8 100644 --- a/controls/speechtotextbutton/styling.md +++ b/controls/speechtotextbutton/styling.md @@ -27,7 +27,10 @@ The SpeechToTextButton uses the .NET MAUI Visual State Manager and defines a vis * `Normal`—The default state when the button is not being interacted with and speech recognition is not active. * `Pressed`—The state when the user is physically pressing the button but speech recognition hasn't started yet. +* (Desktop) `PointerOver`—The state when the mouse cursor is hovering over the button. * `Listening`—The active state when the button is listening for speech input. This is the primary feedback state for users. +* (Desktop) `ListeningPointerOver`—The state when the mouse cursor is hovering over the button when in `Listening` state. +* `ListeningPressed`—The state when the button is pressed when actively listening for speech input. * `Error`—The state displayed when speech recognition encounters an error or fails to process input. * `Disabled`—The state when the control is disabled and cannot be interacted with. @@ -53,11 +56,11 @@ xmlns:telerik="http://schemas.telerik.com/2022/xaml/maui" **4.** The `SpeechRecognized` event handler: - + **5.** The `ErrorOccurred` event handler: - + This is the result on Android and iOS: diff --git a/controls/speechtotextbutton/visual-states.md b/controls/speechtotextbutton/visual-states.md index 943170a4..4ae76bba 100644 --- a/controls/speechtotextbutton/visual-states.md +++ b/controls/speechtotextbutton/visual-states.md @@ -21,7 +21,10 @@ The SpeechToTextButton provides the following `CommonStates` visual states: | ------------ | ----------- | | `Normal` | Applied when the button is in its default, inactive state. | | `Pressed` | Applied when the button is being pressed or tapped by the user. | +| `PointerOver`| (Desktop) Applied when the mouse cursor is hovering over the button. | | `Listening` | Applied when the button is actively listening for speech input. | +| `ListeningPointerOver` | (Desktop) Applied when the mouse cursor is hovering over the button when in `Listening` state. | +| `ListeningPressed` | Applied when the button is pressed when actively listening for speech input. | | `Error` | Applied when an error occurs during speech recognition (e.g., no internet connection, speech recognizer issues, permission denied). | | `Disabled` | Applied when the button is disabled and cannot be interacted with. | @@ -57,7 +60,7 @@ This is the result on WinUI: ![.NET MAUI SpeechToTextButton Visual States](images/speechtotextbutton-styling.gif "SpeechToTextButton for .NET MAUI") -> For a runnable example demonstrating the SpeechToTextButton visual states, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Styling** category. +> For a runnable example demonstrating the SpeechToTextButton Visual States scenario, see the [SDKBrowser Demo Application]({%slug sdkbrowser-app%}) and go to the **SpeechToTextButton > Styling** category. ## See Also diff --git a/controls/speechtotextbutton/winui-support.md b/controls/speechtotextbutton/winui-support.md index 84db8500..a112c741 100644 --- a/controls/speechtotextbutton/winui-support.md +++ b/controls/speechtotextbutton/winui-support.md @@ -14,7 +14,7 @@ The Speech Recognizer uses platform-specific speech recognition services. By def On WinUI, the `RadSpeechRecognizer` is not set to the `RadSpeechToTextButton`. When you click the control, an `InvalidOperationException` is thrown. The reason behind this is a limitation in the WinUI platform speech recognition service—[`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). -The `RadSpeechRecognizer` on WinUI implements the [`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). There are specific considerations when using the control on WinUI due to limitations in the `Windows.Media.SpeechRecognition` API. +The `RadSpeechRecognizer` on WinUI utilizes the [`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). There are specific considerations when using the control on WinUI due to limitations in the `Windows.Media.SpeechRecognition` API. ## Limitations in Windows.Media.SpeechRecognition @@ -36,7 +36,10 @@ this.speechToTextButton.SpeechRecognizerCreator = () => new RadSpeechRecognizer( ### Configure Speech Recognition -Confirm that **Online speech recognition** (Settings -> Privacy -> Speech) is enabled. +Confirm the following are enabled in your WinUI app: + +* Online speech recognition—(Settings -> Privacy -> Privacy & Security) is enabled. +* Microphone—(Settings -> Privacy & Security -> Microphone) has the necessary permissions for the app. ### Language Support diff --git a/knowledge-base/speechtotextbutton-language-support.md b/knowledge-base/speechtotextbutton-language-support.md new file mode 100644 index 00000000..a0422916 --- /dev/null +++ b/knowledge-base/speechtotextbutton-language-support.md @@ -0,0 +1,106 @@ +--- +title: SpeechToTextButton Language Support in .NET MAUI +description: Learn what are the supported languages for the SpeechToTextButton in .NET MAUI and how to set them. +type: how-to +page_title: How to check the supported languages for the SpeechToTextButton in .NET MAUI +slug: speechtotextbutton-language-support +tags: .net maui, speechtotext, languages, supported languages, .net maui, microsoft .net maui +res_type: kb +--- + +## Environment + +| Version | Control | Author | +| ------- | ------- | ------ | +| SpeechToTextButton for .NET MAUI | [Dobrinka Yordanova](https://www.telerik.com/blogs/author/dobrinka-yordanova) | + +## Description + +This article explains how to check the supported languages for the SpeechToTextButton in .NET MAUI and how to set them. + +## Solution + +Here is an example of how to check the supported languages for the SpeechToTextButton in .NET MAUI. For the demo we will use +* An Editor for displaying the recognized text. +* Entry for setting the language. +* Label for displaying whether the language is supported or not. + +**1.** Define the `RadSpeechToTextButton` control in XAML. + +```XAML + + + + + + + +``` + +**2.** In the code-behind, handle the `TextChanged` event of the Entry to check if the entered language is supported. + +```C# +private void EntryLanguage_TextChanged(object sender, Microsoft.Maui.Controls.TextChangedEventArgs e) +{ + bool isSupported = IsLanguageSupported(e.NewTextValue); + this.label1.Text = isSupported ? "supported" : "not supported"; + + if (isSupported) + { + this.label1.Text = "supported"; + this.speechToTextButton.LanguageTag = e.NewTextValue; + } + else + { + this.label1.Text = "not supported"; + } +} + +private static bool IsLanguageSupported(string languageTag) +{ + try + { +#if ANDROID + //// There is no programmatic way to check if a language is supported on Android but most languages are. + //// https://cloud.google.com/speech-to-text/docs/speech-to-text-supported-languages +#elif IOS + var locale = Foundation.NSLocale.FromLocaleIdentifier(languageTag); + var localSpeechRecognizer = new Speech.SFSpeechRecognizer(locale); + localSpeechRecognizer.Dispose(); +#elif WINDOWS + var language = new global::Windows.Globalization.Language(languageTag); + var localSpeechRecognizer = new global::Windows.Media.SpeechRecognition.SpeechRecognizer(language); + localSpeechRecognizer.Dispose(); +#endif + return true; + } + catch + { + return false; + } +} +``` + +**3.** Handle the SpeechToTextButton's `SpeechRecognized` event to display the recognized text in the Editor. + +```C# +private void SpeechToTextButton_SpeechRecognized(object sender, SpeechRecognizerSpeechRecognizedEventArgs args) +{ + this.editor.Text = args.FullText; +} +``` + +## See Also + +- [SpeechToTextButton for .NET MAUI]({%slug speechtotextbutton-overview%}) +- [Configure the SpeechToTextButton]({%slug speechtotextbutton-configuration%}) +- [Set Visual States]({%slug speechtotextbutton-visual-states%}) +- [Events]({%slug speechtotextbutton-events%}) +- [Execute Commands]({%slug speechtotextbutton-commands%}) +- [Style the SpeechToTextButton]({%slug speechtotextbutton-styling%}) \ No newline at end of file From 8c66e57a45b080f0b84952f42c29737370b627fa Mon Sep 17 00:00:00 2001 From: Dobrinka Yordanova Date: Mon, 11 Aug 2025 14:51:21 +0300 Subject: [PATCH 9/9] address comments --- _contentTemplates/get-started.md | 1 + controls/bottomsheet/getting-started.md | 6 +++--- .../speechtotextbutton/getting-started.md | 10 ++++----- controls/speechtotextbutton/overview.md | 2 +- controls/speechtotextbutton/states.md | 4 +--- controls/speechtotextbutton/visual-states.md | 12 +++++------ controls/speechtotextbutton/winui-support.md | 21 +++++++++---------- 7 files changed, 27 insertions(+), 29 deletions(-) diff --git a/_contentTemplates/get-started.md b/_contentTemplates/get-started.md index f44e089b..3d294191 100644 --- a/_contentTemplates/get-started.md +++ b/_contentTemplates/get-started.md @@ -37,6 +37,7 @@ To visualize the Telerik controls, register them in the `MauiProgram.cs` file of .UseTelerik() ``` + #end #add-telerik-component diff --git a/controls/bottomsheet/getting-started.md b/controls/bottomsheet/getting-started.md index 95790451..76b897df 100644 --- a/controls/bottomsheet/getting-started.md +++ b/controls/bottomsheet/getting-started.md @@ -18,11 +18,11 @@ At the end, you will achieve the following result. Before adding the BottomSheet, you need to: -1. [Set up your .NET MAUI application]({%slug maui-getting-started %}#step-1-set-up-your-net-maui-application). +1. [Set up your .NET MAUI application]({%slug maui-getting-started%}#prerequisites). -1. [Download Telerik UI for .NET MAUI]({% slug maui-getting-started %}#step-2-download-telerik-ui-for-net-maui). +1. [Download Telerik UI for .NET MAUI]({% slug maui-getting-started%}#step-0-start-your-free-trial). -1. [Install Telerik UI for .NET MAUI]({%slug maui-getting-started %}#step-3-install-telerik-ui-for-net-maui). +1. [Install Telerik UI for .NET MAUI]({%slug maui-getting-started%}#step-3-add-the-telerik-nuGet-server). ## Define the Control diff --git a/controls/speechtotextbutton/getting-started.md b/controls/speechtotextbutton/getting-started.md index 85cbbe41..91303867 100644 --- a/controls/speechtotextbutton/getting-started.md +++ b/controls/speechtotextbutton/getting-started.md @@ -18,15 +18,15 @@ At the end, you will achieve the following result. Before adding the SpeechToTextButton, you need to: -1. [Set up your .NET MAUI application]({%slug maui-getting-started %}#step-1-set-up-your-net-maui-application). +1. [Set up your .NET MAUI application]({%slug maui-getting-started%}#prerequisites). -1. [Download Telerik UI for .NET MAUI]({% slug maui-getting-started %}#step-2-download-telerik-ui-for-net-maui). +1. [Download Telerik UI for .NET MAUI]({% slug maui-getting-started%}#step-0-start-your-free-trial). -1. [Install Telerik UI for .NET MAUI]({%slug maui-getting-started %}#step-3-install-telerik-ui-for-net-maui). +1. [Install Telerik UI for .NET MAUI]({%slug maui-getting-started%}#step-3-add-the-telerik-nuGet-server). ## Required Permissions -Before adding the contol, ensure that you have the required permissions set up in your project: +Before adding the contol, ensure that you have the required permissions set up in your project. ### Android @@ -49,7 +49,7 @@ Add the `NSMicrophoneUsageDescription` and `NSSpeechRecognitionUsageDescription` ### WinUI -There are limitations when using the SpeechToTextButton on WinUI. When clicking on the control, the InvalidOperationException occurs. +There are limitations when using the SpeechToTextButton on WinUI. When clicking on the control, the `InvalidOperationException` occurs. To turn speech recognition on WinUI, review the [WinUI Support]({%slug speechtotextbutton-winui-support%}) article. diff --git a/controls/speechtotextbutton/overview.md b/controls/speechtotextbutton/overview.md index ab5f4ceb..b5834aa6 100644 --- a/controls/speechtotextbutton/overview.md +++ b/controls/speechtotextbutton/overview.md @@ -1,7 +1,7 @@ --- title: Overview page_title: .NET MAUI SpeechToTextButton Documentation - Overview -description: Try now the Telerik UI for .NET MAUI SpeechToTextButton control +description: Learn how the Telerik UI for .NET MAUI SpeechToTextButton enables seamless speech-to-text conversion in your applications. tags: speech to text for .net maui, .net maui, ui for .net maui, microsoft .net maui position: 0 slug: speechtotextbutton-overview diff --git a/controls/speechtotextbutton/states.md b/controls/speechtotextbutton/states.md index f8a8bc3e..de41c994 100644 --- a/controls/speechtotextbutton/states.md +++ b/controls/speechtotextbutton/states.md @@ -9,9 +9,7 @@ slug: speechtotextbutton-states # .NET MAUI SpeechToTextButton Architecture and States -The SpeechTextButton control provides visual feedback and handle user interactions. The button uses a speech recognition service. The service provides per platform implementation or an AI agent conenction. Almost all operations are asynconous. - -The SpeechToTextButton control in .NET MAUI has several states that reflect its current operation and user interaction. +The SpeechTextButton control handles user interactions and provides visual feedback about its current state, for example, when it's listening or ready. The button uses a speech recognition service that varies by platform and also provides an AI agent connection. Almost all operations are asynchronous. The image below explains how the control works and how the states are managed: diff --git a/controls/speechtotextbutton/visual-states.md b/controls/speechtotextbutton/visual-states.md index 4ae76bba..5395ac2b 100644 --- a/controls/speechtotextbutton/visual-states.md +++ b/controls/speechtotextbutton/visual-states.md @@ -9,7 +9,7 @@ slug: speechtotextbutton-visual-states # .NET MAUI SpeechToTextButton Visual States -The SpeechToTextButton control provides visual states that allow you to customize its appearance based on different interaction and operational states. Visual states enable you to create responsive UI that provides clear feedback to users about the control's current status. +The SpeechToTextButton control provides visual states that allow you to customize its appearance based on user interactions and operational states. Visual states enable you to create responsive UI that provides clear feedback to users about the control's current status. You can use visual states to change the visual appearance of the control depending on its current state—whether it's disabled, pressed, listening for speech, or encountering an error. @@ -32,11 +32,11 @@ The SpeechToTextButton provides the following `CommonStates` visual states: The SpeechToTextButton automatically transitions between visual states based on user interaction and speech recognition status: -- `Normal` → `Pressed`—When user starts pressing the button -- `Pressed` → `Listening`—When speech recognition begins -- `Listening` → `Normal`—When speech recognition completes successfully -- Any State → `Error`—When an error occurs during operation -- Any State → `Disabled`—When the control is programmatically disabled +- `Normal` → `Pressed`—When the user presses the button. +- `Pressed` → `Listening`—When speech recognition begins. +- `Listening` → `Normal`—When speech recognition completes successfully. +- Any State → `Error`—When an error occurs during operation. +- Any State → `Disabled`—When the control is programmatically disabled. ## Using Visual States diff --git a/controls/speechtotextbutton/winui-support.md b/controls/speechtotextbutton/winui-support.md index a112c741..a7ba3b84 100644 --- a/controls/speechtotextbutton/winui-support.md +++ b/controls/speechtotextbutton/winui-support.md @@ -14,26 +14,25 @@ The Speech Recognizer uses platform-specific speech recognition services. By def On WinUI, the `RadSpeechRecognizer` is not set to the `RadSpeechToTextButton`. When you click the control, an `InvalidOperationException` is thrown. The reason behind this is a limitation in the WinUI platform speech recognition service—[`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). -The `RadSpeechRecognizer` on WinUI utilizes the [`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). There are specific considerations when using the control on WinUI due to limitations in the `Windows.Media.SpeechRecognition` API. +The `RadSpeechRecognizer` on WinUI utilizes the [`Windows.Media.SpeechRecognition`](https://learn.microsoft.com/en-us/uwp/api/windows.media.speechrecognition?view=winrt-26100). There are specific considerations when using the control on WinUI due to limitations in the `Windows.Media.SpeechRecognition` API. The app crashes when trying to close the application via the "X" button and the app is **Packaged**. -## Limitations in Windows.Media.SpeechRecognition - -* The app crashes when trying to close the application via the "X" button and the app is **Packaged**. There is an open bug report: [Application crashes after using SpeechRecognizer in a Packaged App](https://github.com/microsoft/microsoft-ui-xaml/issues/10697) +> See the following bug report for more details: [Application crashes after using SpeechRecognizer in a Packaged App](https://github.com/microsoft/microsoft-ui-xaml/issues/10697). ## Solutions -To use the SpeechToTextButton on WinUI, you can use one of the following approaches: +To use the SpeechToTextButton on WinUI, you can use one of the following approaches described in the table below: + +| Packaged Apps | Unpackaged Apps | +| ------------- | --------------- | +| Create a [custom recognizer]({%slug speechtotextbutton-custom-recognizer%}) | Create a [custom recognizer]({%slug speechtotextbutton-custom-recognizer%}) | +| | Use the `RadSpeechRecognizer` | -* Set the `SpeechRecognizerCreator` property of the `RadSpeechToTextButton` to `RadSpeechRecognizer` for **Unpackaged** apps: +If you want to use the `RadSpeechRecognizer` on WinUI, set the `SpeechRecognizerCreator` property of the `RadSpeechToTextButton` to `RadSpeechRecognizer`: -```csharp +```C# this.speechToTextButton.SpeechRecognizerCreator = () => new RadSpeechRecognizer(); ``` -* Create a [custom recognizer]({%slug speechtotextbutton-custom-recognizer%}) for **Packaged** and **Unpackaged** apps. - -* Use an **Unpackaged** app deployment model. - ### Configure Speech Recognition Confirm the following are enabled in your WinUI app: