Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Important
Las capacidades de SMS dependen del número de teléfono que use y del país o región en el que trabaja, según lo que especifique la dirección de facturación de Azure. Para obtener más información, consulte Elegibilidad de la suscripción.
Para empezar a usar Azure Communication Services, utilice el módulo de Comunicación en la CLI de Azure para enviar mensajes SMS.
Completar este artículo conlleva un pequeño costo de unos pocos centavos de USD o menos en su cuenta de Azure.
Prerequisites
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Recurso activo de Communication Services y una cadena de conexión. Cree un recurso de Communication Services.
- Un número de teléfono habilitado para SMS, código corto o identificador alfanumérico de remitente. Obtenga un número de teléfono.
- La versión más reciente de la CLI de Azure para el sistema operativo.
Comprobación de requisitos previos
- En una ventana de terminal o de comandos, ejecute
az --versionpara comprobar que la CLI de Azure está instalada.
Configuración
Instalación del módulo de comunicación
Para instalar el módulo de comunicación, ejecute el siguiente comando en un terminal o ventana de comandos.
az extension add --name communication
Inicio de sesión en la CLI de Azure
Deberá iniciar sesión en la CLI de Azure. Para iniciar sesión, ejecute el comando az login desde el terminal y proporcione sus credenciales.
Asegúrese de que está usando la suscripción correcta
Si tiene varias suscripciones en su cuenta, asegúrese de que usa la correcta para este tutorial.
En una ventana de terminal o comando, ejecute el siguiente comando para comprobar la suscripción actual.
az account show
Si necesita cambiar de suscripción, puede ejecutar el siguiente comando para hacerlo.
az account set --subscription "<yourSubscriptionId>"
Debe reemplazar <yourSubscriptionId> por el identificador de suscripción actual, que puede encontrar en la sección Suscripciones de Azure Portal.
(Opcional) Uso de operaciones SMS de la CLI de Azure sin pasar una cadena de conexión
Puede configurar la variable de entorno AZURE_COMMUNICATION_CONNECTION_STRING para usar operaciones de SMS de la CLI de Azure sin tener que usar --connection_string para pasar la cadena de conexión. Para configurar una variable de entorno, abra una ventana de 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 AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"
Después de agregar la variable de entorno, puede que tenga que reiniciar todos los programas en ejecución que necesiten leer la variable de entorno, incluida la ventana de consola. Por ejemplo, si usa Visual Studio como editor, reinícielo antes de ejecutar el ejemplo.
Operations
Envío de un SMS de un remitente a un solo destinatario
Para enviar un mensaje SMS a un solo destinatario, llame al método send desde el módulo SMS con un único número de teléfono de destinatario.
az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"
Haga estas sustituciones en el código:
- Sustituye
<fromPhoneNumber>por un número de teléfono compatible con SMS asociado con tu recurso de Servicios de Comunicación. - Reemplace
<toPhoneNumber>con un número de teléfono al que desea enviar un mensaje. - Reemplace
<yourConnectionString>por una cadena de conexión.
Warning
Proporcione números de teléfono en formato estándar internacional E.164, por ejemplo, +14255550123. El valor <fromPhoneNumber> también puede ser un código corto, por ejemplo, 23456 o un identificador de remitente alfanumérico, por ejemplo, CONTOSO.
Envío de un SMS de un remitente a varios destinatarios
Para enviar un mensaje SMS a una lista de destinatarios, llame al método send desde el módulo de SMS con varios números de teléfono de destinatarios.
az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber1>" "<toPhoneNumber2>" "<toPhoneNumber3>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"
Haga estas sustituciones en el código:
- Sustituye
<fromPhoneNumber>por un número de teléfono compatible con SMS asociado con tu recurso de Servicios de Comunicación. - Reemplace
<toPhoneNumberN>por el número de teléfono al que desea enviar un mensaje. - Reemplace
<yourConnectionString>por una cadena de conexión.
Warning
Proporcione números de teléfono en formato estándar internacional E.164, como +14255550123. El valor <fromPhoneNumber> de también puede ser un código corto, como 23456 o un identificador de remitente alfanumérico, como CONTOSO.
Enviar un mensaje SMS con DeliveryReport y Tag
az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>" --deliveryReport --tag "<yourCustomTag>"
El deliveryReport parámetro es un parámetro opcional que puede usar para configurar los informes de entrega. Use esta función si desea emitir eventos cuando se entreguen mensajes SMS. Consulte Control de eventos de SMS para configurar los informes de entrega de los mensajes SMS.
El parámetro tag es un parámetro opcional que puede usar para aplicar una etiqueta al informe de entregas.
Haga estas sustituciones en el código:
- Sustituye
<fromPhoneNumber>por un número de teléfono compatible con SMS asociado con tu recurso de Servicios de Comunicación. - Reemplace
<toPhoneNumber>con un número de teléfono al que desea enviar un mensaje. - Reemplace
<yourConnectionString>por una cadena de conexión. - Reemplace
<yourCustomTag>con su etiqueta personalizada.
Warning
Proporcione números de teléfono en formato estándar internacional E.164, por ejemplo, +14255550123. El valor <fromPhoneNumber> también puede ser un código corto, por ejemplo, 23456 o un identificador de remitente alfanumérico, por ejemplo, CONTOSO.
Para empezar a usar Azure Communication Services, utilice el SDK de SMS de Communication Services para C# para enviar mensajes SMS.
Completar este artículo conlleva un pequeño costo de unos pocos centavos de USD o menos en su cuenta de Azure.
Note
Consulte el código finalizado en Ejemplos de Azure GitHub Enviar un mensaje SMS mediante .NET.
Prerequisites
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- La versión más reciente del SDK de .NET Core para su sistema operativo.
- Recurso activo de Communication Services y una cadena de conexión. Cree un recurso de Communication Services.
- Un número de teléfono habilitado para SMS, código corto o identificador alfanumérico de remitente. Obtenga un número de teléfono.
Comprobación de requisitos previos
- En una ventana de terminal o de comandos, ejecute el comando
dotnetpara comprobar que el SDK de .NET está instalado. - Para ver los números de teléfono asociados al recurso de Communication Services, inicie sesión en Azure Portal y busque el recurso de Communication Services. En el panel de navegación de la izquierda, seleccione Números de teléfono.
Configuración del entorno de la aplicación
Para configurar un entorno para enviar mensajes, siga los pasos descritos en las secciones siguientes.
Creación de una aplicación de C#
En una ventana de la consola, como cmd, PowerShell o Bash, use el comando
dotnet newpara crear una aplicación de consola con el nombreSmsQuickstart. Este comando crea un proyecto sencillo de C# "Hola mundo" con un único archivo de código fuente, Program.cs.dotnet new console -o SmsQuickstartCambie el directorio a la carpeta de la aplicación recién creada y use el comando
dotnet buildpara compilar la aplicación.cd SmsQuickstart dotnet build
Instalar el paquete
Mientras sigue en el directorio de la aplicación, instale el paquete del SDK de SMS de Azure Communication Services para .NET con el siguiente comando.
dotnet add package Azure.Communication.Sms --version 1.0.0Agregue una
usingdirectiva a la parte superior de Program.cs para incluir elAzure.Communicationespacio de nombres.using System; using System.Collections.Generic; using Azure; using Azure.Communication; using Azure.Communication.Sms;
Modelo de objetos
Las siguientes clases e interfaces controlan algunas de las características principales del SDK de SMS de Azure Communication Services para C#.
| Name | Description |
|---|---|
| SmsClient | Esta clase es necesaria para la funcionalidad de los SMS. Cree una instancia de esta clase con la información de suscripción y úsela para enviar mensajes de texto. |
| SmsSendOptions | Esta clase proporciona opciones para configurar los informes de entrega. Si enable_delivery_report se establece como "Verdadero", se emite un evento cuando la entrega es correcta. |
| SmsSendResult | Esta clase contiene el resultado del servicio SMS. |
Autenticar el cliente
Abra Program.cs en un editor de texto y reemplace el cuerpo del método Main por el código para inicializar SmsClient con la cadena de conexión. El siguiente código recupera la cadena de conexión para el recurso de una variable de entorno denominada COMMUNICATION_SERVICES_CONNECTION_STRING. Aprenda a administrar la cadena de conexión del recurso.
// This code retrieves your connection string
// from an environment variable.
string connectionString = Environment.GetEnvironmentVariable("COMMUNICATION_SERVICES_CONNECTION_STRING");
SmsClient smsClient = new SmsClient(connectionString);
Envío de un SMS de un remitente a un solo destinatario
Para enviar un SMS a un solo destinatario, llame a la función Send o SendAsync desde SmsClient. Agregue este código al final del Main método en Program.cs:
SmsSendResult sendResult = smsClient.Send(
from: "<from-phone-number>",
to: "<to-phone-number>",
message: "Hello World via SMS"
);
Console.WriteLine($"Sms id: {sendResult.MessageId}");
Haga estas sustituciones en el código:
- Sustituye
<from-phone-number>por un número de teléfono compatible con SMS asociado con tu recurso de Servicios de Comunicación. - Reemplace
<to-phone-number>por el número de teléfono al que desea enviar un mensaje.
Warning
Proporcione números de teléfono en formato estándar internacional E.164, como +14255550123. El valor <from-phone-number> de también puede ser un código corto, como 23456 o un identificador de remitente alfanumérico, como CONTOSO.
Envío de un SMS de un remitente a varios destinatarios con opciones
Para enviar un SMS a una lista de destinatarios, llame a la función Send o SendAsync desde SmsClient con una lista de números de teléfono de destinatarios. También puede proporcionar parámetros opcionales para especificar si el informe de entrega se debe habilitar y establecer etiquetas personalizadas.
Response<IReadOnlyList<SmsSendResult>> response = smsClient.Send(
from: "<from-phone-number>",
to: new string[] { "<to-phone-number-1>", "<to-phone-number-2>" },
message: "Weekly Promotion!",
options: new SmsSendOptions(enableDeliveryReport: true) // OPTIONAL
{
Tag = "marketing", // custom tags
});
IEnumerable<SmsSendResult> results = response.Value;
foreach (SmsSendResult result in results)
{
Console.WriteLine($"Sms id: {result.MessageId}");
Console.WriteLine($"Send Result Successful: {result.Successful}");
}
Haga estas sustituciones en el código:
- Sustituye
<from-phone-number>por un número de teléfono compatible con SMS asociado con tu recurso de Servicios de Comunicación. - Reemplace
<to-phone-number-1>y<to-phone-number-2>por números de teléfono a los que le gustaría enviar un mensaje.
Warning
Proporcione números de teléfono en formato estándar internacional E.164, como +14255550123. El valor <from-phone-number> de también puede ser un código corto, como 23456 o un identificador de remitente alfanumérico, como CONTOSO.
El parámetro enableDeliveryReport es un parámetro opcional que puede usar para configurar los informes de entrega. Esta funcionalidad es útil cuando se quiere enviar eventos al entregar los mensajes SMS. Consulte el inicio rápido Control de eventos SMS a fin de configurar los informes de entrega para los mensajes SMS.
Puede usar el parámetro Tag para aplicar una etiqueta al informe de entrega.
Envío de SMS globalmente con Messaging Connect
Important
Esta característica de Azure Communication Services se encuentra actualmente en versión preliminar. Las características de la versión preliminar están disponibles públicamente y se pueden usar en todos los clientes nuevos y existentes de Microsoft.
Las API y los SDK en versión preliminar se proporcionan sin contrato de nivel de servicio. No se recomienda su uso para cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que las funcionalidades estén restringidas.
Para más información, consulte Términos de uso complementarios para las versiones preliminares de Microsoft Azure.
Si usa un número de teléfono aprovisionado a través de Messaging Connect, puede enviar mensajes SMS mediante el SDK estándar de Azure Communication Services. La única diferencia es que debe incluir el MessagingConnect objeto para especificar el nombre del asociado y la clave de API.
Response<IReadOnlyList<SmsSendResult>> response = smsClient.Send(
from: "<from-messaging-connect-number>",
to: new string[] { "<to-phone-number-1>", "<to-phone-number-2>" },
message: "Weekly Promotion!",
options: new SmsSendOptions(enableDeliveryReport: true) // OPTIONAL
{
Tag = "marketing", // custom tags
MessagingConnect = new MessagingConnectOptions("<partner-api-key>", "infobip")
});
IEnumerable<SmsSendResult> results = response.Value;
foreach (SmsSendResult result in results)
{
Console.WriteLine($"Sms id: {result.MessageId}");
Console.WriteLine($"Send Result Successful: {result.Successful}");
}
Reemplace estos valores:
-
<from-messaging-connect-number>: El número de teléfono adquirido a través de Messaging Connect y vinculado al recurso de ACS. -
<to-phone-number-1>y<to-phone-number-2>: los números de teléfono del destinatario. -
<partner-api-key>: la clave de API del asociado de Messaging Connect (por ejemplo, Infobip).
Tip
¿Quiere obtener más información sobre la mensajería global? Consulte la página Messaging Connect (Conexión de mensajería)
Warning
Los números de teléfono deben seguir el formato estándar internacional E.164 (por ejemplo, +14255550123).
<rom-messaging-connect-number> debe ser un número de Messaging Connect o un identificador de remitente alfa dinámico (por ejemplo, CONTOSO) ya aprovisionado y sincronizado con el recurso de ACS.
El parámetro enableDeliveryReport es un parámetro opcional que puede usar para configurar los informes de entrega. Esta funcionalidad es útil cuando se quiere enviar eventos al entregar los mensajes SMS. Consulte el inicio rápido Control de eventos SMS a fin de configurar los informes de entrega para los mensajes SMS. Puede usar el parámetro Tag para aplicar una etiqueta al informe de entrega.
Ejecución del código
Ejecute la aplicación desde el directorio de la aplicación con el comando dotnet run.
dotnet run
Código de ejemplo
Descargue la aplicación de ejemplo desde Azure Samples GitHub Enviar un mensaje SMS mediante .NET.
Introducción a Azure Communication Services mediante el SDK de SMS de JavaScript de Communication Services para enviar mensajes SMS.
Completar este artículo conlleva un pequeño costo de unos pocos centavos de USD o menos en su cuenta de Azure.
Note
Consulte el código finalizado Ejemplos de Azure GitHub Enviar un mensaje SMS mediante JavaScript.
Prerequisites
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Node.js Se recomiendan las versiones de LTS y Mantenimiento LTS activas (8.11.1 y 10.14.1).
- Recurso activo de Communication Services y una cadena de conexión. Cree un recurso de Communication Services.
- Un número de teléfono habilitado para SMS, código corto o identificador alfanumérico de remitente. Obtenga un número de teléfono.
Comprobación de requisitos previos
- En una ventana de terminal o de comandos, ejecute
node --versionpara comprobar que Node.js está instalado. - Para ver los números de teléfono asociados al recurso de Communication Services, inicie sesión en Azure Portal y busque el recurso de Communication Services. En el panel de navegación de la izquierda, seleccione Números de teléfono.
Configuración del entorno de la aplicación
Para configurar un entorno para enviar mensajes, siga los pasos descritos en las secciones siguientes.
Creación de una aplicación Node.js
Abra el terminal o la ventana de comandos y, a continuación, ejecute el siguiente comando para crear un directorio en la aplicación y navegar a él.
mkdir sms-quickstart && cd sms-quickstartEjecute el siguiente comando para crear un archivo package.json con la configuración predeterminada.
npm init -yUse un editor de texto para crear un archivo denominado send-sms.js en el directorio raíz del proyecto.
En las secciones siguientes, agregue todo el código fuente de este inicio rápido al archivo send-sms.js que creó.
Instalar el paquete
Use el comando npm install para instalar el SDK de SMS de Azure Communication Services para JavaScript.
npm install @azure/communication-sms --save
La opción --save muestra la biblioteca como dependencia en el archivo package.json.
Modelo de objetos
Las clases e interfaces siguientes controlan algunas de las características principales del SDK de SMS de Azure Communication Services para Node.js.
| Name | Description |
|---|---|
| SmsClient | Esta clase es necesaria para la funcionalidad de los SMS. Cree una instancia de esta clase con la información de suscripción y úsela para enviar mensajes de texto. |
| SmsSendRequest | Esta interfaz es el modelo para crear la solicitud de SMS. Se usa para configurar los números de teléfono de origen y destino y el contenido del SMS. |
| SmsSendOptions | Esta interfaz proporciona opciones para configurar los informes de entrega. Si enableDeliveryReport se establece como true, se emitirá un evento cuando la entrega se realice correctamente. |
| SmsSendResult | Esta clase contiene el resultado del servicio SMS. |
Autenticar el cliente
Para autenticar un cliente, importe SmsClient desde el SDK y cree una instancia con la cadena de conexión. Se puede recuperar la cadena de conexión para el recurso desde una variable de entorno. Por ejemplo, el código de esta sección recupera la cadena de conexión de la variable de entorno COMMUNICATION_SERVICES_CONNECTION_STRING. Aprenda a administrar la cadena de conexión del recurso.
Para importar el cliente y crear una instancia de él:
Cree un archivo denominado send-sms.js.
Agregue el código siguiente a send-sms.js.
const { SmsClient } = require('@azure/communication-sms');
// This code retrieves your connection string
// from an environment variable.
const connectionString = process.env['COMMUNICATION_SERVICES_CONNECTION_STRING'];
// Instantiate the SMS client.
const smsClient = new SmsClient(connectionString);
Envío de un SMS de un remitente a varios destinatarios
Para enviar un SMS a una lista de destinatarios, llame a la función send desde SmsClient con una lista de números de teléfono de destinatarios. Si desea enviar un mensaje a un solo destinatario, incluya solo un número en la lista. Agregue este código al final de send-sms.js:
async function main() {
const sendResults = await smsClient.send({
from: "<from-phone-number>",
to: ["<to-phone-number-1>", "<to-phone-number-2>"],
message: "Hello World 👋🏻 via SMS"
});
// Individual messages can encounter errors during sending.
// Use the "successful" property to verify the status.
for (const sendResult of sendResults) {
if (sendResult.successful) {
console.log("Success: ", sendResult);
} else {
console.error("Something went wrong when trying to send this message: ", sendResult);
}
}
}
main();
Haga estas sustituciones en el código:
- Sustituye
<from-phone-number>por un número de teléfono compatible con SMS asociado con tu recurso de Servicios de Comunicación. - Reemplace
<to-phone-number-1>y<to-phone-number-2>por los números de teléfono a los que desea enviar un mensaje.
Warning
Proporcione números de teléfono en formato estándar internacional E.164, por ejemplo, +14255550123. El valor <from-phone-number> también puede ser un código corto, por ejemplo, 23456 o un identificador de remitente alfanumérico, por ejemplo, CONTOSO.
Envío de un SMS de un remitente a varios destinatarios con opciones
También puede proporcionar un objeto de opciones para especificar si el informe de entrega debe estar habilitado y para establecer etiquetas personalizadas.
async function main() {
const sendResults = await smsClient.send({
from: "<from-phone-number>",
to: ["<to-phone-number-1>", "<to-phone-number-2>"],
message: "Weekly Promotion!"
}, {
// Optional parameters
enableDeliveryReport: true,
tag: "marketing"
});
// Individual messages can encounter errors during sending.
// Use the "successful" property to verify the status.
for (const sendResult of sendResults) {
if (sendResult.successful) {
console.log("Success: ", sendResult);
} else {
console.error("Something went wrong when trying to send this message: ", sendResult);
}
}
}
main();
Haga estas sustituciones en el código:
- Sustituye
<from-phone-number>por un número de teléfono compatible con SMS asociado con tu recurso de Servicios de Comunicación. - Reemplace
<to-phone-number-1>y<to-phone-number-2>por números de teléfono a los que le gustaría enviar un mensaje.
Warning
Proporcione números de teléfono en formato estándar internacional E.164, por ejemplo, +14255550123. El valor <from-phone-number> también puede ser un código corto, por ejemplo, 23456 o un identificador de remitente alfanumérico, por ejemplo, CONTOSO.
El parámetro enableDeliveryReport es un parámetro opcional que puede usar para configurar los informes de entrega. Esta funcionalidad es útil cuando se quiere enviar eventos al entregar los mensajes SMS. Consulte el inicio rápido Control de eventos SMS a fin de configurar los informes de entrega para los mensajes SMS.
El tag es opcional. Puede usarlo para aplicar una etiqueta al informe de entrega.
Envío de SMS globalmente con Messaging Connect
Important
Esta característica de Azure Communication Services se encuentra actualmente en versión preliminar. Las características de la versión preliminar están disponibles públicamente y se pueden usar en todos los clientes nuevos y existentes de Microsoft.
Las API y los SDK en versión preliminar se proporcionan sin contrato de nivel de servicio. No se recomienda su uso para cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que las funcionalidades estén restringidas.
Para más información, consulte Términos de uso complementarios para las versiones preliminares de Microsoft Azure.
Si usa un número de teléfono aprovisionado a través de Messaging Connect, puede enviar mensajes SMS mediante el SDK estándar de JavaScript de Azure Communication Services. La única diferencia es que debe incluir el messagingConnect objeto para especificar el nombre del asociado y la clave de API.
async function main() {
const sendResults = await smsClient.send({
from: "<from-messaging-connect-number>",
to: ["<to-phone-number-1>", "<to-phone-number-2>"],
message: "Weekly Promotion!"
}, {
// Optional parameters
enableDeliveryReport: true,
tag: "marketing", // custom tag
messagingConnect: {
apiKey: "<partner-api-key>",
partner: "infobip"
}
});
for (const sendResult of sendResults) {
if (sendResult.successful) {
console.log("Success:", sendResult);
} else {
console.error("Failed to send message:", sendResult);
}
}
}
main();
Reemplace estos valores:
-
<from-messaging-connect-number>: El número de teléfono adquirido a través de Messaging Connect y vinculado al recurso de ACS. -
<to-phone-number-1>y<to-phone-number-2>: los números de teléfono del destinatario. -
<partner-api-key>: la clave de API del asociado de Messaging Connect (por ejemplo, Infobip).
Tip
¿Quiere obtener más información sobre la mensajería global? Consulte la página Messaging Connect (Conexión de mensajería)
Warning
Los números de teléfono deben seguir el formato estándar internacional E.164 (por ejemplo, +14255550123).
<from-messaging-connect-number> debe ser un número de Messaging Connect o un identificador de remitente alfa dinámico (por ejemplo, CONTOSO) ya aprovisionado y sincronizado con el recurso de ACS.
El enableDeliveryReport parámetro permite configurar los informes de entrega. El tag parámetro es opcional y permite aplicar una etiqueta personalizada al informe de entrega. Para configurar los informes de entrega de SMS, consulte el inicio rápido Control de eventos de SMS .
Ejecución del código
Use el node comando para ejecutar el código que agregó al archivo send-sms.js .
node ./send-sms.js
Introducción a Azure Communication Services con SMS SDK de Communication Services para Python para enviar mensajes de texto.
Este inicio rápido supone un pequeño costo en su cuenta de Azure.
Note
Para obtener el código finalizado de este artículo, consulte GitHub Azure Samples Manage phone numbers using Python (Administración de números de teléfono mediante Python).
Prerequisites
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Versión 3.7 o superiores de Python.
- Recurso activo de Communication Services y una cadena de conexión. Cree un recurso de Communication Services.
- Un número de teléfono habilitado para SMS, código corto o identificador alfanumérico de remitente. Obtenga un número de teléfono.
Comprobación de requisitos previos
- En una ventana de terminal o de comandos, ejecute
python --versionpara comprobar que Python está instalado. - Para ver los números de teléfono asociados al recurso de Communication Services, inicie sesión en Azure Portal y busque el recurso de Communication Services. En el panel de navegación de la izquierda, seleccione Números de teléfono.
Configuración del entorno de la aplicación
Para configurar un entorno para enviar mensajes, complete las secciones siguientes.
Creación de una nueva aplicación de Python
Abra el terminal o la ventana de comandos. Use el siguiente comando para crear un directorio para la aplicación y navegar a ella.
mkdir sms-quickstart && cd sms-quickstartUse un editor de texto para crear un archivo denominado send-sms.py en el directorio raíz del proyecto y agregar la estructura del programa, incluido el control de excepciones básico.
import os from azure.communication.sms import SmsClient try: # Quickstart code goes here. except Exception as ex: print('Exception:') print(ex)
En las secciones siguientes, agregue todo el código fuente de este inicio rápido al archivo send-sms.py que creó.
Instalar el paquete
Mientras sigue en el directorio de la aplicación, instale el paquete del SDK de SMS de Azure Communication Services para Python con el siguiente comando.
pip install azure-communication-sms
Modelo de objetos
Las clases e interfaces siguientes controlan algunas de las características principales de SMS SDK de Azure Communication Services para Python.
| Name | Description |
|---|---|
| SmsClient | Esta clase es necesaria para la funcionalidad de los SMS. Cree una instancia de esta clase con la información de suscripción y úsela para enviar mensajes de texto. |
| SmsSendResult | Esta clase contiene el resultado del servicio SMS. |
Autenticar el cliente
Cree una instancia de SmsClient con la cadena de conexión. Aprenda a administrar la cadena de conexión del recurso.
# Create the SmsClient object that you use to send SMS messages.
sms_client = SmsClient.from_connection_string(<connection_string>)
Para facilitar las cosas, en este inicio rápido se usan cadenas de conexión, pero en los entornos de producción se recomienda usar entidades de servicio.
Envío de un SMS de un remitente a un solo destinatario
Para enviar un mensaje SMS a un único destinatario, llame al send método desde SmsClient con un solo número de teléfono de destinatario. También puede proporcionar parámetros opcionales para especificar si el informe de entrega se debe habilitar y establecer etiquetas personalizadas. Agregue este código al final del try bloque en send-sms.py:
# Call send() with SMS values.
sms_responses = sms_client.send(
from_="<from-phone-number>",
to="<to-phone-number>",
message="Hello World via SMS",
enable_delivery_report=True, # optional property
tag="custom-tag") # optional property
Haga estas sustituciones en el código:
- Reemplace
<from-phone-number>por un número de teléfono compatible con SMS asociado a sus servicios de comunicación. - Reemplace
<to-phone-number>por el número de teléfono al que desea enviar un mensaje.
Warning
Proporcione números de teléfono en formato estándar internacional E.164, por ejemplo, +14255550123. El valor <from-phone-number> también puede ser un código corto, por ejemplo, 23456 o un identificador de remitente alfanumérico, por ejemplo, CONTOSO.
Envío de un SMS de un remitente a varios destinatarios
Para enviar un mensaje SMS a una lista de destinatarios, llame al send método desde SmsClient con una lista de números de teléfono de destinatarios. También puede proporcionar parámetros opcionales para especificar si el informe de entrega se debe habilitar y establecer etiquetas personalizadas. Agregue este código al final del try bloque en send-sms.py:
# Call send() with SMS values.
sms_responses = sms_client.send(
from_="<from-phone-number>",
to=["<to-phone-number-1>", "<to-phone-number-2>"],
message="Hello World via SMS",
enable_delivery_report=True, # optional property
tag="custom-tag") # optional property
Haga estas sustituciones en el código:
- Reemplace
<from-phone-number>por un número de teléfono compatible con SMS asociado a sus servicios de comunicación. - Reemplace
<to-phone-number-1>y<to-phone-number-2>por números de teléfono a los que le gustaría enviar un mensaje.
Warning
Proporcione números de teléfono en formato estándar internacional E.164, como +14255550123. El valor <from-phone-number> de también puede ser un código corto, como 23456 o un identificador de remitente alfanumérico, como CONTOSO.
Parámetros opcionales
El enable_delivery_report parámetro es un parámetro opcional que puede usar para configurar los informes de entrega. Use esta función si desea emitir eventos cuando se entreguen mensajes SMS. Consulte Control de eventos de SMS para configurar los informes de entrega de los mensajes SMS.
El parámetro tag es un parámetro opcional que puede usar para aplicar una etiqueta al informe de entregas.
Ejecución del código
Ejecute la aplicación desde el directorio de la aplicación con el comando python.
python send-sms.py
El script de Python completo debería ser algo parecido al siguiente código:
import os
from azure.communication.sms import SmsClient
try:
# Create the SmsClient object that you use to send SMS messages.
sms_client = SmsClient.from_connection_string("<connection string>")
# Call send() with SMS values.
sms_responses = sms_client.send(
from_="<from-phone-number>",
to="<to-phone-number>",
message="Hello World via SMS",
enable_delivery_report=True, # optional property
tag="custom-tag") # optional property
except Exception as ex:
print('Exception:')
print(ex)
Introducción a Azure Communication Services mediante el SDK de SMS de Communication Services para Java para enviar mensajes SMS.
Completar este artículo conlleva un pequeño costo de unos pocos centavos de USD o menos en su cuenta de Azure.
Note
Consulte el código finalizado Ejemplos de Azure GitHub Envío de un mensaje SMS mediante Java.
Prerequisites
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Kit de desarrollo de Java (JDK) versión 8 o posterior.
- Apache Maven.
- Recurso activo de Communication Services y una cadena de conexión. Cree un recurso de Communication Services.
- Un número de teléfono habilitado para SMS, código corto o identificador alfanumérico de remitente. Obtenga un número de teléfono.
Comprobación de requisitos previos
- En una ventana de terminal o de comandos, ejecute
mvn -vpara comprobar que Maven está instalado. - Para ver los números de teléfono asociados al recurso de Communication Services, inicie sesión en Azure Portal y busque el recurso de Communication Services. En el panel de navegación de la izquierda, seleccione Números de teléfono.
Configuración del entorno de la aplicación
Para configurar un entorno para enviar mensajes, complete las secciones siguientes.
Creación de una aplicación Java
Abra la ventana Comandos o el terminal y navegue hasta el directorio en el que quiere crear la aplicación de Java. Para generar el proyecto de Java desde la plantilla maven-archetype-quickstart, ejecute el siguiente comando.
- Símbolo del sistemaCommand Prompt
mvn archetype:generate -DgroupId=com.communication.quickstart -DartifactId=communication-quickstart -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
- PowerShell
mvn archetype:generate "-DgroupId=com.communication.quickstart" "-DartifactId=communication-quickstart" "-DarchetypeArtifactId=maven-archetype-quickstart" "-DarchetypeVersion=1.4" "-DinteractiveMode=false"
El objetivo generate crea un directorio con el mismo nombre que el valor artifactId. En este directorio, el directorio src/main/java contiene el código fuente del proyecto, el directorio src/test/java contiene el origen de la prueba, y el archivo pom.xml es el modelo de objetos del proyecto (POM).
Instalar el paquete
Abra el archivo pom.xml en el editor de texto. Agregue el siguiente elemento de dependencia al grupo de dependencias.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-sms</artifactId>
<version>1.0.1</version>
</dependency>
Instalación del marco de la aplicación
Abra /src/main/java/com/communication/quickstart/App.java en un editor de texto, agregue directivas de importación y quite la instrucción System.out.println("Hello world!");:
package com.communication.quickstart;
import com.azure.communication.sms.models.*;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.communication.sms.*;
import com.azure.core.util.Context;
import java.util.Arrays;
public class App
{
public static void main( String[] args )
{
// Quickstart code goes here.
}
}
Modelo de objetos
Las siguientes clases e interfaces controlan algunas de las características principales del SDK de SMS de Azure Communication Services para Java:
| Name | Description |
|---|---|
| SmsClientBuilder | Esta clase crea SmsClient. Se proporciona un punto de conexión, una credencial y un cliente HTTP. |
| SmsClient | Esta clase es necesaria para la funcionalidad de los SMS. que se utiliza para enviar mensajes SMS. |
| SmsSendOptions | Esta clase proporciona opciones para agregar etiquetas personalizadas y configurar informes de entrega. Si "deliveryReportEnabled" se establece en verdadero, se emite un evento cuando la entrega es correcta. |
| SmsSendResult | Esta clase contiene el resultado del servicio SMS. |
Autenticar el cliente
Para autenticar un cliente, cree una instancia SmsClient de con la cadena de conexión. Para la credencial, use el Key del Azure Portal. Aprenda a administrar la cadena de conexión del recurso. También puede iniciar el cliente con cualquier cliente HTTP personalizado que implemente la interfaz com.azure.core.http.HttpClient.
Para crear una instancia de un cliente, agregue el siguiente código al método main:
// You can get your endpoint and access key from your resource in the Azure portal.
String endpoint = "https://<resource-name>.communication.azure.com/";
AzureKeyCredential azureKeyCredential = new AzureKeyCredential("<access-key-credential>");
SmsClient smsClient = new SmsClientBuilder()
.endpoint(endpoint)
.credential(azureKeyCredential)
.buildClient();
También puede proporcionar la cadena de conexión completa mediante la función connectionString en lugar de proporcionar el punto de conexión y la clave de acceso.
// You can get your connection string from your resource in the Azure portal.
String connectionString = "endpoint=https://<resource-name>.communication.azure.com/;accesskey=<access-key>";
SmsClient smsClient = new SmsClientBuilder()
.connectionString(connectionString)
.buildClient();
Envío de un SMS de un remitente a un solo destinatario
Para enviar un SMS a un solo destinatario, llame al método send desde el SmsClient con el número de teléfono de un solo destinatario. También puede proporcionar parámetros opcionales para especificar si el informe de entrega se debe habilitar y establecer etiquetas personalizadas.
SmsSendResult sendResult = smsClient.send(
"<from-phone-number>",
"<to-phone-number>",
"Weekly Promotion");
System.out.println("Message Id: " + sendResult.getMessageId());
System.out.println("Recipient Number: " + sendResult.getTo());
System.out.println("Send Result Successful:" + sendResult.isSuccessful());
Haga estas sustituciones en el código:
- Sustituye
<from-phone-number>por un número de teléfono compatible con SMS asociado con tu recurso de Servicios de Comunicación. - Reemplace
<to-phone-number>con un número de teléfono al que desea enviar un mensaje.
Warning
Proporcione números de teléfono en formato estándar internacional E.164, como +14255550123. El valor <from-phone-number> de también puede ser un código corto, como 23456 o un identificador de remitente alfanumérico, como CONTOSO.
Envío de un SMS de un remitente a varios destinatarios con opciones
Para enviar un SMS a una lista de destinatarios, llame al método send con una lista de los números de teléfono de los destinatarios. También puede proporcionar parámetros opcionales para especificar si el informe de entrega se debe habilitar y establecer etiquetas personalizadas.
SmsSendOptions options = new SmsSendOptions();
options.setDeliveryReportEnabled(true);
options.setTag("Marketing");
Iterable<SmsSendResult> sendResults = smsClient.sendWithResponse(
"<from-phone-number>",
Arrays.asList("<to-phone-number1>", "<to-phone-number2>"),
"Weekly Promotion",
options /* Optional */,
Context.NONE).getValue();
for (SmsSendResult result : sendResults) {
System.out.println("Message Id: " + result.getMessageId());
System.out.println("Recipient Number: " + result.getTo());
System.out.println("Send Result Successful:" + result.isSuccessful());
}
Haga estas sustituciones en el código:
- Sustituya
<from-phone-number>por un número de teléfono habilitado para SMS asociado a su recurso de Communication Services. - Reemplace
<to-phone-number-1>y<to-phone-number-2>por números de teléfono a los que le gustaría enviar un mensaje.
Warning
Proporcione números de teléfono en formato estándar internacional E.164, por ejemplo, +14255550123. El valor <from-phone-number> también puede ser un código corto, por ejemplo, 23456 o un identificador de remitente alfanumérico, por ejemplo, CONTOSO.
El método setDeliveryReportEnabled se usa para configurar los informes de entrega. Esta funcionalidad es útil cuando se quiere enviar eventos al entregar los mensajes SMS. Consulte el inicio rápido Control de eventos SMS a fin de configurar los informes de entrega para los mensajes SMS.
Para aplicar una etiqueta al informe de entrega, use el setTag método .
Ejecución del código
Vaya al directorio que contiene el archivo pom.xml y compile el proyecto mediante el
mvncomando .mvn compileCompile el paquete.
mvn packageEjecute el siguiente comando
mvnpara ejecutar la aplicación.- Símbolo del sistemaCommand Prompt
mvn exec:java -Dexec.mainClass="com.communication.quickstart.App" -Dexec.cleanupDaemonThreads=false- PowerShell
mvn exec:java "-Dexec.mainClass=com.communication.quickstart.App" "-Dexec.cleanupDaemonThreads=false"
Use el conector sms de Azure Communication Services y Azure Logic Apps para crear flujos de trabajo automatizados que puedan enviar mensajes SMS.
En este artículo se describe cómo enviar automáticamente mensajes de texto en respuesta a un evento de desencadenador, que es el primer paso de un flujo de trabajo de aplicación lógica. Un evento de desencadenador puede ser un mensaje de correo electrónico entrante, una programación de periodicidad, un evento de recursos de Azure Event Grid o cualquier otro desencadenador compatible con Azure Logic Apps.
Aunque este artículo se centra en el uso del conector para responder a un desencadenador, también puede usar el conector para responder a otras acciones, que son los pasos que siguen el desencadenador en un flujo de trabajo. Si no está familiarizado con Logic Apps, consulte ¿Qué es Azure Logic Apps antes de empezar?
Note
Completar este artículo conlleva un pequeño costo de unos pocos centavos de USD o menos en su cuenta de Azure.
Prerequisites
Una cuenta de Azure con una suscripción activa o también puede crear una cuenta de Azure de forma gratuita.
Un recurso de Azure Communication Services activo o también puede crear un recurso de Communication Services.
Un recurso de Logic Apps activo (aplicación lógica) o también puede crear una aplicación lógica en blanco, pero con el desencadenador que quiere usar. Actualmente, el conector SMS de Azure Communication Services solo proporciona acciones, por lo que la aplicación lógica requiere un desencadenador, como mínimo.
En esta guía de inicio rápido se usa el desencadenador Cuando llega un nuevo correo electrónico, que está disponible con el conector de Outlook de Office 365.
Un número de teléfono habilitado para SMS, código corto o identificador alfanumérico de remitente. Obtenga un número de teléfono.
Important
Las funcionalidades SMS y RTC dependen del número de teléfono que use y del país o región en el que trabaje, determinado por la dirección de facturación de Azure. Para obtener más información, visite la documentación sobre idoneidad de la suscripción .
Adición de una acción de SMS
Para agregar la acción Enviar SMS como un nuevo paso en el flujo de trabajo mediante el conector sms de Azure Communication Services, siga estos pasos en Azure Portal con el flujo de trabajo de la aplicación lógica abierto en el Diseñador de aplicaciones lógicas:
En el diseñador, en el paso donde desea agregar la nueva acción, seleccione Nuevo paso. Como alternativa, para agregar la nueva acción entre pasos, mueva el puntero sobre la flecha entre esos pasos, seleccione el signo más (+) y seleccione Agregar una acción.
En el cuadro de búsqueda Elegir una operación, escriba
Azure Communication Services. En la lista de acciones, seleccione Enviar SMS.
A continuación, cree una conexión al recurso de Communication Services.
Dentro de la misma suscripción:
Proporcione un nombre para la conexión.
Seleccione el recurso de Azure Communication Services.
Selecciona Crear.
Utilizando la cadena de conexión del recurso de Communication Services:
Proporcione un nombre para la conexión.
Seleccione Autenticación de ConnectionString de las opciones desplegables.
Escriba la cadena de conexión del recurso de Communication Services.
Selecciona Crear.
Mediante la entidad de servicio (consulte el artículo sobre la creación de entidades de servicio):
Proporcione un nombre para la conexión.
Seleccione Autenticación de entidad de servicio (aplicación de Microsoft Entra) de las opciones desplegables.
Escriba el identificador del inquilino, el identificador del cliente y el secreto del cliente de la entidad de servicio.
Escriba el valor Dirección URL del punto de conexión de Communication Services de su recurso de Communication Services.
Selecciona Crear.
En la acción Enviar SMS , proporcione la siguiente información:
Los números de teléfono de origen y de destino. Con fines de prueba, puede usar su propio número de teléfono como el número de teléfono de destino.
El contenido del mensaje que desea enviar, por ejemplo, "¡Hola desde Logic Apps!".
Esta es una acción Enviar SMS con información de ejemplo:
Cuando esté listo, seleccione Guardar en la barra de herramientas del diseñador.
A continuación, ejecute el flujo de trabajo para realizar pruebas.
Pruebe el flujo de trabajo
Para iniciar manualmente el flujo de trabajo, en la barra de herramientas del diseñador, seleccione Ejecutar. O bien, puede esperar a que se active el desencadenador. En ambos casos, el flujo de trabajo debe enviar un mensaje SMS al número de teléfono de destino especificado. Para más información, revise cómo ejecutar el flujo de trabajo.
Limpieza de recursos de flujo de trabajo
Para limpiar el flujo de trabajo de la aplicación lógica y los recursos relacionados, consulte Limpieza de recursos.
Troubleshooting
Para solucionar problemas relacionados con la entrega de SMS, puede habilitar los informes de entrega con Event Grid para capturar los detalles de la entrega.
Limpieza de recursos
Si quiere limpiar y quitar una suscripción a Communication Services, puede eliminar el recurso o grupo de recursos. Al eliminar el grupo de recursos, también se elimina cualquier otro recurso que esté asociado a él. Obtenga más información sobre la limpieza de recursos.
Verificación sin coste
Para usar un nuevo número gratuito para enviar mensajes SMS, debe completar un proceso de comprobación de número gratuito. Para obtener instrucciones sobre cómo completar la comprobación de su número gratuito, consulte el Inicio rápido: Solicitud de la comprobación de número gratuito. Solo los números gratuitos totalmente comprobados se autorizan para enviar tráfico SMS. Se bloqueará cualquier tráfico SMS de números gratuitos no comprobados dirigidos a números de teléfono de EE. UU. y Canadá.
Pasos siguientes
En este artículo se describe cómo enviar mensajes SMS mediante Azure Communication Services.