Inicio rápido: Creación y administración de recursos de Communication Services

Aprovisione su primer recurso de Communication Services a fin de empezar a usar Azure Communication Services. Los recursos de Communication Services se pueden aprovisionar mediante Azure Portal o con el SDK de administración para .NET. El SDK de administración y Azure Portal le permiten crear, configurar, actualizar y eliminar los recursos y la interfaz con el nuevo servicio de implementación y administración: Azure Resource Manager. Todas las funciones disponibles en los SDK están disponibles en Azure Portal.

Advertencia

Observe que no puede crear un grupo de recursos al mismo tiempo que un recurso de Azure Communication Services. Para crear un recurso, primero debe crear un grupo de recursos.

Requisitos previos

Si planea usar números de teléfono, no puede usar la cuenta de evaluación gratuita. Compruebe que la suscripción cumple todos los requisitos si tiene previsto comprar números de teléfono antes de crear el recurso.

Creación de un recurso de Azure Communication Services

Para crear un recurso de Azure Communication Services, inicie sesión en Azure Portal. En la esquina superior izquierda de la página, seleccione + Crear un recurso.

Captura de pantalla que resalta el botón Crear un recurso en Azure Portal.

Escriba Comunicación en la entrada Buscar en Marketplace o en la barra de búsqueda de la parte superior del portal.

Captura de pantalla que muestra una búsqueda de Communication Services en la barra de búsqueda.

Seleccione Communication Services en los resultados y Crear.

Captura de pantalla que muestra el panel de Communication Services con el botón Crear resaltado.

Ahora puede configurar el recurso de Communication Services. En la primera página del proceso de creación, tendrá que especificar lo siguiente:

  • La suscripción
  • El grupo de recursos (puede crear uno nuevo o elegir uno existente).
  • El nombre del recurso de Communication Services
  • La geografía asociada al recurso

En el paso siguiente, puede asignar etiquetas al recurso. Puede usar etiquetas para organizar los recursos de Azure. Para más información sobre las etiquetas, consulte Uso de etiquetas para organizar los recursos de Azure y la jerarquía de administración.

Por último, puede revisar la configuración y crear el recurso. La implementación tarda unos minutos en completarse.

Administración del recurso de Communication Services

Para administrar el recurso de Communication Services, inicie sesión en Azure Portal y busque y seleccione Azure Communication Services.

En la página Communication Services, seleccione el nombre del recurso.

La página Información general del recurso contiene opciones para la administración básica, como examinar, detener, iniciar, reiniciar y eliminar. Para obtener más opciones de configuración, consulte el menú de la izquierda de la página de recursos.

Requisitos previos

Si planea usar números de teléfono, no puede usar la cuenta de evaluación gratuita. Compruebe que la suscripción cumple todos los requisitos si tiene previsto comprar números de teléfono antes de crear el recurso.

Creación de un recurso de Azure Communication Services

Para crear un recurso de Azure Communication Services, inicie sesión en la CLI de Azure. Para iniciar sesión, ejecute el comando az login desde el terminal y proporcione sus credenciales. Ejecute el siguiente comando para crear el recurso:

az communication create --name "<acsResourceName>" --location "Global" --data-location "United States" --resource-group "<resourceGroup>"

Si quiere seleccionar una suscripción específica, también puede especificar la marca --subscription y proporcionar el identificador de la suscripción.

az communication create --name "<acsResourceName>" --location "Global" --data-location "United States" --resource-group "<resourceGroup>" --subscription "<subscriptionId>"

Puede configurar el recurso de Communication Services con las opciones siguientes:

  • El grupo de recursos
  • El nombre del recurso de Communication Services
  • La geografía asociada al recurso

En el paso siguiente, puede asignar etiquetas al recurso. Puede usar etiquetas para organizar los recursos de Azure. Para más información sobre las etiquetas, consulte Uso de etiquetas para organizar los recursos de Azure y la jerarquía de administración.

Administración del recurso de Communication Services

Para agregar etiquetas al recurso de Communication Services, ejecute los siguientes comandos: También puede usar una suscripción específica como destino.

az communication update --name "<communicationName>" --tags newTag="newVal1" --resource-group "<resourceGroup>"

az communication update --name "<communicationName>" --tags newTag="newVal2" --resource-group "<resourceGroup>" --subscription "<subscriptionId>"

az communication show --name "<communicationName>" --resource-group "<resourceGroup>"

az communication show --name "<communicationName>" --resource-group "<resourceGroup>" --subscription "<subscriptionId>"

Para más información sobre otros comandos, consulte CLI de Azure Communication.

Requisitos previos

Si planea usar números de teléfono, no puede usar la cuenta de evaluación gratuita. Compruebe que la suscripción cumple todos los requisitos si tiene previsto comprar números de teléfono antes de crear el recurso.

Instalar el SDK

En primer lugar, incluya el SDK de administración de Communication Services en el proyecto de C#:

using Azure.ResourceManager.Communication;

Id. de suscripción

Necesita saber el identificador de su suscripción a Azure. Se puede adquirir en el portal:

  1. Inicie sesión en su cuenta en Azure Portal.
  2. Seleccione Suscripciones en la barra lateral izquierda.
  3. Seleccione la suscripción que quiere usar.
  4. Haga clic en Descripción general.
  5. Seleccione el identificador de suscripción.

Para que funcionen los ejemplos de este inicio rápido, debe almacenar el identificador de suscripción en una variable de entorno denominada AZURE_SUBSCRIPTION_ID.

Autenticación

Para comunicarse con Azure Communication Services, primero debe autenticarse en Azure. Normalmente, lo hará mediante la identidad de entidad de servicio.

Opción 1: Identidad administrada

Si el código se ejecuta como un servicio de Azure, la manera más sencilla de autenticarse es adquirir una identidad administrada de Azure. Para más información, vea:

Identidad administrada asignada por el sistema

using Azure.Identity;
using Azure.ResourceManager.Communication;
using Azure.ResourceManager.Communication.Models;
using System;
...
var subscriptionId = "AZURE_SUBSCRIPTION_ID";
var acsClient = new CommunicationManagementClient(subscriptionId, new ManagedIdentityCredential());

Identidad administrada asignada por el usuario

El valor de ClientId de la identidad administrada que creó debe pasarse al elemento ManagedIdentityCredential explícitamente.

using Azure.Identity;
using Azure.ResourceManager.Communication;
using Azure.ResourceManager.Communication.Models;
using System;
...
var subscriptionId = "AZURE_SUBSCRIPTION_ID";
var managedIdentityCredential = new ManagedIdentityCredential("AZURE_CLIENT_ID");
var acsClient = new CommunicationManagementClient(subscriptionId, managedIdentityCredential);

Opción 2: Entidad de servicio

En lugar de usar una identidad administrada, es posible que quiera autenticarse en Azure con una entidad de servicio que administre. Para más información, consulte Creación y administración de una entidad de servicio en Microsoft Entra ID.

Una vez que haya creado la entidad de servicio, deberá recopilar la siguiente información sobre esta en Azure Portal:

  • Id de cliente
  • Secreto de cliente
  • Id. de inquilino

Almacene estos valores como variables de entorno denominadas AZURE_CLIENT_ID, AZURE_CLIENT_SECRET y AZURE_TENANT_ID, respectivamente. A continuación, puede crear un cliente de administración de Communication Services como el siguiente:

using Azure.Identity;
using Azure.ResourceManager.Communication;
using Azure.ResourceManager.Communication.Models;
using System;
...
var subscriptionId = Environment.GetEnvironmentVariable("AZURE_SUBSCRIPTION_ID");
var acsClient = new CommunicationManagementClient(subscriptionId, new EnvironmentCredential());

Opción 3: Identidad del usuario

Si quiere llamar a Azure en nombre de un usuario interactivo, en lugar de usar una identidad de servicio, puede usar el código siguiente para crear un cliente de administración de Azure Communication Services. Se abre una ventana del explorador para pedir al usuario que especifique sus credenciales de MSA o Microsoft Entra.

using Azure.Identity;
using Azure.ResourceManager.Communication;
using Azure.ResourceManager.Communication.Models;
using System;
...
var subscriptionId = Environment.GetEnvironmentVariable("AZURE_SUBSCRIPTION_ID");
var communicationServiceClient = new CommunicationManagementClient(subscriptionId, new InteractiveBrowserCredential());

Administración de recursos de Communication Services

Interacción con los recursos de Azure

Ahora que se autenticó, puede usar el cliente de administración para realizar llamadas a la API.

En cada uno de los ejemplos siguientes, asignaremos los recursos de Communication Services a un grupo de recursos existente.

Si necesita crear un grupo de recursos, puede hacerlo mediante Azure Portal o el SDK de Azure Resource Manager.

Creación y administración de un recurso de Communication Services

La instancia del cliente SDK de administración de Communication Services (Azure.ResourceManager.Communication.CommunicationManagementClient) se puede usar para realizar operaciones en los recursos de Communication Services.

Creación de un recurso de Communication Services

Cuando cree un recurso de Communication Services, especifique el nombre del grupo de recursos y el nombre del recurso. La propiedad Location siempre es global y, durante la versión preliminar pública, el valor de DataLocation debe ser UnitedStates.

var resourceGroupName = "myResourceGroupName";
var resourceName = "myResource";
var resource = new CommunicationServiceResource { Location = "Global", DataLocation = "UnitedStates"  };
var operation = await acsClient.CommunicationService.StartCreateOrUpdateAsync(resourceGroupName, resourceName, resource);
await operation.WaitForCompletionAsync();

Actualización de un recurso de Communication Services

...
var resourceGroupName = "myResourceGroupName";
var resourceName = "myResource";
var resource = new CommunicationServiceResource { Location = "Global", DataLocation = "UnitedStates" };
resource.Tags.Add("environment","test");
resource.Tags.Add("department","tech");
// Use existing resource name and new resource object
var operation = await acsClient.CommunicationService.StartCreateOrUpdateAsync(resourceGroupName, resourceName, resource);
await operation.WaitForCompletionAsync();

Enumeración de todos los recursos de Communication Services

var resources = acsClient.CommunicationService.ListBySubscription();
foreach (var resource in resources)
{
    Console.WriteLine(resource.Name);
}

Eliminación de un recurso de Communication Services

var resourceGroupName = "myResourceGroupName";
var resourceName = "myResource";
await acsClient.CommunicationService.StartDeleteAsync(resourceGroupName, resourceName);

Administración de las claves y las cadenas de conexión

Cada recurso de Communication Services tiene un par de claves de acceso y las cadenas de conexión correspondientes. Se puede acceder a estas claves con el SDK de administración y, a continuación, hacer que estén disponibles para otros SDK de Communication Services para autenticarse en Azure Communication Services.

Obtención de las claves de acceso de un recurso de Communication Services

var resourceGroupName = "myResourceGroupName";
var resourceName = "myResource";
var keys = await acsClient.CommunicationService.ListKeysAsync(resourceGroupName, resourceName);

Console.WriteLine(keys.Value.PrimaryConnectionString);
Console.WriteLine(keys.Value.SecondaryConnectionString);

Regeneración de una clave de acceso para un recurso de Communication Services

var resourceGroupName = "myResourceGroupName";
var resourceName = "myResource";
var keyParams = new RegenerateKeyParameters { KeyType = KeyType.Primary };
var keys = await acsClient.CommunicationService.RegenerateKeyAsync(resourceGroupName, resourceName, keyParams);

Console.WriteLine(keys.Value.PrimaryKey);

Requisitos previos

Si planea usar números de teléfono, no puede usar la cuenta de evaluación gratuita. Compruebe que la suscripción cumple todos los requisitos si tiene previsto comprar números de teléfono antes de crear el recurso.

Creación de un recurso de Azure Communication Services

Para crear un recurso de Azure Communication Services, inicie sesión en la CLI de Azure. Puede crear un recurso mediante el terminal con el comando Connect-AzAccount y proporcionando sus credenciales.

En primer lugar, instale el módulo Az.Communication de Azure Communication Services con el siguiente comando.

PS C:\> Install-Module Az.Communication

Ejecute el siguiente comando para crear el recurso:

PS C:\> New-AzCommunicationService -ResourceGroupName ContosoResourceProvider1 -Name ContosoAcsResource1 -DataLocation UnitedStates -Location Global

Si quiere seleccionar una suscripción específica, también puede especificar la marca --subscription y proporcionar el identificador de la suscripción.

PS C:\> New-AzCommunicationService -ResourceGroupName ContosoResourceProvider1 -Name ContosoAcsResource1 -DataLocation UnitedStates -Location Global -SubscriptionId SubscriptionID

Puede configurar el recurso de Communication Services con las opciones siguientes:

  • El grupo de recursos
  • El nombre del recurso de Communication Services
  • La geografía que se va a asociar al recurso.

En el paso siguiente, puede asignar etiquetas al recurso. Puede usar etiquetas para organizar los recursos de Azure. Para obtener más información, consulte Uso de etiquetas para organizar los recursos de Azure y la jerarquía de administración.

Administración del recurso de Communication Services

Para agregar etiquetas al recurso de Communication Services, ejecute los siguientes comandos: También puede usar una suscripción específica como destino.

PS C:\> Update-AzCommunicationService -Name ContosoAcsResource1 -ResourceGroupName ContosoResourceProvider1 -Tag @{ExampleKey1="ExampleValue1"}

PS C:\> Update-AzCommunicationService -Name ContosoAcsResource1 -ResourceGroupName ContosoResourceProvider1 -Tag @{ExampleKey1="ExampleValue1"} -SubscriptionId SubscriptionID

Para enumerar todos los recursos de Azure Communication Services en una suscripción determinada, use el siguiente comando:

PS C:\> Get-AzCommunicationService -SubscriptionId SubscriptionID

Para mostrar toda la información de un recurso determinado, use el siguiente comando:

PS C:\> Get-AzCommunicationService -Name ContosoAcsResource1 -ResourceGroupName ContosoResourceProvider1

Acceso a las cadenas de conexión y los puntos de conexión de servicio

Las cadenas de conexión permiten que los SDK de Communication Services se conecten y se autentiquen en Azure. Puede acceder a las cadenas de conexión de Communication Services y a los puntos de conexión de servicio desde Azure Portal o mediante programación con las API de Azure Resource Manager.

Después de ir al recurso de Communication Services, seleccione Claves en el menú de navegación y copie el valor de Cadena de conexión o Punto de conexión para que lo usen los SDK de Communication Services. Tiene acceso a las claves principal y secundaria. Podría resultarle útil al proporcionar acceso temporal a los recursos de Communication Services a un entorno de ensayo o de terceros.

Captura de pantalla de la página de claves de Communication Services.

Acceso a las cadenas de conexión y los puntos de conexión de servicio mediante la CLI de Azure

También puede acceder a la información principal mediante la CLI de Azure, como el grupo de recursos o las claves de un recurso específico.

Instale la CLI de Azure y use el siguiente comando para iniciar sesión. Es necesario proporcionar las credenciales para conectarse con la cuenta de Azure.

az login

Ahora puede acceder a información importante sobre los recursos.

az communication list --resource-group "<resourceGroup>"

az communication list-key --name "<acsResourceName>" --resource-group "<resourceGroup>"

Si quiere seleccionar una suscripción específica, también puede especificar la marca --subscription y proporcionar el identificador de la suscripción.

az communication list --resource-group  "<resourceGroup>"  --subscription "<subscriptionId>"

az communication list-key --name "<acsResourceName>" --resource-group "<resourceGroup>" --subscription "<subscriptionId>"

Almacenamiento de la cadena de conexión

Los SDK de Communication Services usan cadenas de conexión para autorizar las solicitudes realizadas a Communication Services. Tiene varias opciones para almacenar una cadena de conexión:

  • Una aplicación que se ejecuta en el escritorio o en un dispositivo puede almacenar la cadena de conexión en un archivo app.config o web.config. Agregue la cadena de conexión a la sección AppSettings en estos archivos.
  • Una aplicación que se ejecuta en una instancia de Azure App Service puede almacenar la cadena de conexión en la configuración de la aplicación de App Service. Agregue la cadena de conexión a la sección Cadenas de conexión de la pestaña Configuración de la aplicación en el portal.
  • Puede almacenar la cadena de conexión en Azure Key Vault. Puede seguir administrando de forma segura su cadena de conexión.
  • Si ejecuta la aplicación localmente, le recomendamos que almacene la cadena de conexión en una variable de entorno.

Almacenamiento de la cadena de conexión en una variable de entorno

Para configurar una variable de entorno, abra una ventana de la consola y seleccione el sistema operativo en las pestañas siguientes. Reemplace <yourconnectionstring> por la cadena de conexión real.

Abra una ventana de consola y escriba el siguiente comando:

setx COMMUNICATION_SERVICES_CONNECTION_STRING "<yourConnectionString>"

Después de agregar la variable de entorno, puede que tenga que reiniciar todos los programas en ejecución que lean la variable de entorno, incluyendo la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.

Limpieza de recursos

Si quiere limpiar y quitar una suscripción a Communication Services, puede eliminar el recurso o grupo de recursos. Para eliminar el recurso de comunicación, ejecute el siguiente comando.

az communication delete --name "acsResourceName" --resource-group "resourceGroup"

Al eliminar el grupo de recursos, también se elimina cualquier otro recurso que esté asociado a él.

Si tiene números de teléfono asignados a su recurso cuando lo elimine, estos se liberarán automáticamente del recurso al mismo tiempo.

Nota:

La eliminación de recursos es permanente y, si los elimina, no se puede recuperar ningún dato, filtros de Event Grid, números de teléfono u otros datos vinculados a los recursos incluidos.

Pasos siguientes

En este inicio rápido, aprendió a hacer lo siguiente:

  • Crear un recurso de Communication Services
  • Configurar la geografía y las etiquetas de recursos
  • Acceder a las claves de ese recurso
  • Eliminar el recurso