, AzureSmsSettingsDisplayDriver>();
+ }
+
+ ///
+ public override void Configure(IApplicationBuilder builder, IEndpointRouteBuilder routes, IServiceProvider serviceProvider)
+ {
+ routes.MapAreaControllerRoute(
+ name: "AzureSmsTest",
+ areaName: "OrchardCoreContrib.Sms.Azure",
+ pattern: _adminOptions.AdminUrlPrefix + "/AzureSms",
+ defaults: new { controller = typeof(AdminController).ControllerName(), action = nameof(AdminController.Index) }
+ );
+ }
+}
diff --git a/src/OrchardCoreContrib.Sms.Azure/ViewModels/AzureSmsSettingsViewModel.cs b/src/OrchardCoreContrib.Sms.Azure/ViewModels/AzureSmsSettingsViewModel.cs
new file mode 100644
index 0000000..92c038f
--- /dev/null
+++ b/src/OrchardCoreContrib.Sms.Azure/ViewModels/AzureSmsSettingsViewModel.cs
@@ -0,0 +1,12 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace OrchardCoreContrib.Sms.Azure.ViewModels;
+
+public class AzureSmsSettingsViewModel
+{
+ [Required]
+ public string PhoneNumber { get; set; }
+
+ [Required]
+ public string Message { get; set; }
+}
diff --git a/src/OrchardCoreContrib.Sms.Azure/Views/Admin/Index.cshtml b/src/OrchardCoreContrib.Sms.Azure/Views/Admin/Index.cshtml
new file mode 100644
index 0000000..7ac3fd8
--- /dev/null
+++ b/src/OrchardCoreContrib.Sms.Azure/Views/Admin/Index.cshtml
@@ -0,0 +1,22 @@
+@using OrchardCoreContrib.Sms.Azure.ViewModels
+@model AzureSmsSettingsViewModel
+
+@RenderTitleSegments(T["Test Azure SMS Settings"])
+
+
diff --git a/src/OrchardCoreContrib.Sms.Azure/Views/AzureSmsSettings.Edit.cshtml b/src/OrchardCoreContrib.Sms.Azure/Views/AzureSmsSettings.Edit.cshtml
new file mode 100644
index 0000000..a758d76
--- /dev/null
+++ b/src/OrchardCoreContrib.Sms.Azure/Views/AzureSmsSettings.Edit.cshtml
@@ -0,0 +1,19 @@
+@using OrchardCoreContrib.Sms.Azure
+
+@model AzureSmsSettings
+
+@T["The current tenant will be reloaded when the settings are saved."]
+
+
+
+
+ @T["The phone number that provided by Azure Communication Services (ACS) to send the SMS."]
+
+
+
+
+
+
+
+ @T["The connection string that provided by Azure Communication Services (ACS)."]
+
diff --git a/src/OrchardCoreContrib.Sms.Azure/Views/AzureSmsSettings.TestButton.cshtml b/src/OrchardCoreContrib.Sms.Azure/Views/AzureSmsSettings.TestButton.cshtml
new file mode 100644
index 0000000..14097f2
--- /dev/null
+++ b/src/OrchardCoreContrib.Sms.Azure/Views/AzureSmsSettings.TestButton.cshtml
@@ -0,0 +1 @@
+@T["Test settings"]
diff --git a/src/OrchardCoreContrib.Sms.Azure/Views/NavigationItemText-azuresms.Id.cshtml b/src/OrchardCoreContrib.Sms.Azure/Views/NavigationItemText-azuresms.Id.cshtml
new file mode 100644
index 0000000..f30e615
--- /dev/null
+++ b/src/OrchardCoreContrib.Sms.Azure/Views/NavigationItemText-azuresms.Id.cshtml
@@ -0,0 +1 @@
+@T["Azure SMS"]
diff --git a/src/OrchardCoreContrib.Sms.Azure/Views/_ViewImports.cshtml b/src/OrchardCoreContrib.Sms.Azure/Views/_ViewImports.cshtml
new file mode 100644
index 0000000..252fd65
--- /dev/null
+++ b/src/OrchardCoreContrib.Sms.Azure/Views/_ViewImports.cshtml
@@ -0,0 +1,5 @@
+@inherits OrchardCore.DisplayManagement.Razor.RazorPage
+
+@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
+@addTagHelper *, OrchardCore.DisplayManagement
+@addTagHelper *, OrchardCore.ResourceManagement