Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Внимание
Возможности SMS зависят от используемого номера телефона и страны или региона, в которых вы работаете, что определяется адресом выставления счетов Azure. Дополнительные сведения см. в разделе "Доступ к подписке".
Начало работы с Службы коммуникации Azure с помощью модуля коммуникации в Azure CLI для отправки SMS-сообщений.
Завершение этой статьи обойдется вам в небольшую стоимость — несколько центов США или даже меньше в вашей учетной записи Azure.
Предварительные условия
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Активный ресурс Служб коммуникации и строка подключения. Создайте ресурс Служб коммуникации.
- Номер телефона с поддержкой SMS, короткий код или идентификатор буквенно-цифрового отправителя. Получите номер телефона.
- Последняя версия Azure CLI для операционной системы.
Проверка предварительных условий
- В окне терминала или командной строки выполните команду
az --version
, чтобы проверить, установлен ли Azure CLI.
Настройка
Установка модуля коммуникации
Чтобы установить модуль связи, выполните следующую команду в окне терминала или командной строки.
az extension add --name communication
Вход в Azure CLI
Вам нужно войти в Azure CLI. Вы можете войти, выполнив команду az login
в терминале и введя свои учетные данные.
Убедитесь, что вы используете правильную подписку
Если у вас несколько подписок в учетной записи, убедитесь, что вы используете правильную для этого руководства.
В окне терминала или командной строки выполните следующую команду, чтобы проверить текущую подписку.
az account show
Если вам нужно изменить подписку, это можно сделать, выполнив следующую команду.
az account set --subscription "<yourSubscriptionId>"
Вам нужно заменить <yourSubscriptionId>
на фактический идентификатор подписки, который можно найти в разделе "Подписки" в портале Azure.
(Необязательно) Используйте операции СМС Azure-CLI без передачи строки подключения
Вы можете настроить AZURE_COMMUNICATION_CONNECTION_STRING
переменную среды для использования операции Azure CLI SMS без необходимости --connection_string
передавать строку подключения. Чтобы настроить переменную среды, откройте окно консоли и выберите операционную систему на следующих вкладках. Замените <yourConnectionString>
фактической строкой подключения.
Откройте окно консоли и введите следующую команду:
setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"
После добавления переменной среды может потребоваться перезапустить все запущенные приложения, которым может понадобиться считать переменную среды, в том числе окно консоли. Например, если вы используете Visual Studio в качестве редактора, перезапустите Visual Studio перед запуском примера.
Операции
Отправка личного текстового сообщения
Чтобы отправить SMS-сообщение одному получателю, вызовите send
метод из модуля SMS с одним номером телефона получателя.
az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"
Выполните следующие замены в коде:
- Замените
<fromPhoneNumber>
номер телефона с поддержкой SMS, связанный с ресурсом Служб коммуникации. - Замените
<toPhoneNumber>
номер телефона, на который вы хотите отправить сообщение. - Замените
<yourConnectionString>
на строку подключения.
Предупреждение
Укажите номера телефонов в международном формате E.164( например, +14255550123). Значение <fromPhoneNumber>
также может быть коротким кодом, например 23456 или буквенно-цифровым идентификатором отправителя, например CONTOSO.
Отправка 1:N текстового сообщения
Чтобы отправить SMS-сообщение в список получателей, вызовите send
метод из модуля SMS с несколькими номерами телефонов получателя.
az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber1>" "<toPhoneNumber2>" "<toPhoneNumber3>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"
Выполните следующие замены в коде:
- Замените
<fromPhoneNumber>
номер телефона с поддержкой SMS, связанный с ресурсом Служб коммуникации. - Замените
<toPhoneNumberN>
на N-й номер телефона, на который вы хотите отправить сообщение. - Замените
<yourConnectionString>
на строку подключения.
Предупреждение
Укажите номера телефонов в международном стандартном формате E.164, например +14255550123. Значение <fromPhoneNumber>
также может быть коротким кодом, например 23456 или буквенно-цифровым идентификатором отправителя, например CONTOSO.
Начиная использовать Службы коммуникации Azure, воспользуйтесь SDK для SMS на C# для отправки SMS-сообщений.
Завершение этой статьи обойдется вам в небольшую стоимость — несколько центов США или даже меньше в вашей учетной записи Azure.
Примечание.
См. завершенный код в Azure Samples GitHub Отправить SMS-сообщение с помощью .NET.
Предварительные условия
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Последняя версия SDK .NET Core для вашей операционной системы.
- Активный ресурс Служб коммуникации и строка подключения. Создайте ресурс Служб коммуникации.
- Номер телефона с поддержкой SMS, короткий код или идентификатор буквенно-цифрового отправителя. Получите номер телефона.
Проверка предварительных условий
- В окне терминала или командном окне выполните команду
dotnet
, чтобы проверить, установлен ли пакет SDK для .NET. - Чтобы просмотреть номера телефонов, связанные с ресурсом Служб коммуникации, войдите в портал Azure и найдите ресурс Служб коммуникации. В области навигации слева выберите номера телефонов.
Настройка среды приложения
Чтобы настроить среду для отправки сообщений, выполните действия, описанные в следующих разделах.
Создание нового приложения C#
В окне консоли (cmd, PowerShell или Bash) выполните команду
dotnet new
, чтобы создать консольное приложение с именемSmsQuickstart
. Эта команда создает простой проект "Hello World" на языке C# с одним файлом исходного кода Program.cs.dotnet new console -o SmsQuickstart
Измените каталог на только что созданную папку приложения и выполните команду
dotnet build
, чтобы скомпилировать приложение.cd SmsQuickstart dotnet build
Установка пакета
Находясь в каталоге приложения, установите пакет SDK для отправки SMS через Службы коммуникации Azure для .NET, используя следующую команду.
dotnet add package Azure.Communication.Sms --version 1.0.0
Добавьте директиву
using
в начало Program.cs, чтобы включить пространство именAzure.Communication
.using System; using System.Collections.Generic; using Azure; using Azure.Communication; using Azure.Communication.Sms;
Объектная модель
Следующие классы и интерфейсы реализуют некоторые основные возможности SDK для службы SMS Azure Communication Services для C#.
Имя | Описание |
---|---|
SmsClient | Этот класс требуется для реализации всех функций обмена текстовыми сообщениями. Вы создаёте экземпляр с использованием информации о вашей подписке и используете его для отправки SMS-сообщений. |
Опции отправки SMS | Этот класс предоставляет параметры настройки отчетов о доставке. Если enable_delivery_report имеет значение True, событие создается при успешной доставке. |
РезультатОтправкиСМС | Этот класс содержит результат, полученный от службы SMS. |
аутентификация клиента;
Откройте Program.cs в текстовом редакторе и замените текст метода Main
кодом, чтобы инициализировать SmsClient
с помощью строки подключения. Следующий код извлекает строку подключения к ресурсу из переменной среды с именем COMMUNICATION_SERVICES_CONNECTION_STRING
. Узнайте, как управлять строкой подключения ресурса.
// This code retrieves your connection string
// from an environment variable.
string connectionString = Environment.GetEnvironmentVariable("COMMUNICATION_SERVICES_CONNECTION_STRING");
SmsClient smsClient = new SmsClient(connectionString);
Отправка личного текстового сообщения
Чтобы отправить текстовое сообщение одному получателю, вызовите функцию Send
или SendAsync
из SmsClient. Добавьте этот код в конец Main
метода в 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}");
Выполните следующие замены в коде:
- Замените
<from-phone-number>
номер телефона с поддержкой SMS, связанный с ресурсом Служб коммуникации. - Замените
<to-phone-number>
номер телефона, на который вы хотите отправить сообщение.
Предупреждение
Укажите номера телефонов в международном стандартном формате E.164, например +14255550123. Значение <from-phone-number>
также может быть коротким кодом, например 23456 или буквенно-цифровым идентификатором отправителя, например CONTOSO.
Отправка SMS сообщения типа 1:N с параметрами
Чтобы отправить SMS-сообщение в список получателей, вызовите Send
или SendAsync
функцию из SmsClient со списком номеров телефонов получателя. Кроме того, можно указать, следует ли включить отчет о доставке и задать пользовательские теги.
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}");
}
Выполните следующие замены в коде:
- Замените
<from-phone-number>
номер телефона с поддержкой SMS, связанный с ресурсом Служб коммуникации. - Замените
<to-phone-number-1>
и<to-phone-number-2>
на номера телефонов, на которые вы хотите отправить сообщение.
Предупреждение
Укажите номера телефонов в международном стандартном формате E.164, например +14255550123. Значение <from-phone-number>
также может быть коротким кодом, например 23456 или буквенно-цифровым идентификатором отправителя, например CONTOSO.
Этот enableDeliveryReport
параметр является необязательным параметром, который можно использовать для настройки отчетов о доставке. Эта функция полезна, если вы хотите выдавать события при доставке SMS-сообщений. В кратком руководстве по обработке SMS-событий можно настроить отчеты о доставке sms-сообщений.
Вы можете использовать параметр Tag
для применения тега к отчету о доставке.
Выполнение кода
Запустите приложение из каталога приложения с помощью команды dotnet run
.
dotnet run
Пример кода
Скачайте пример приложения из Azure Samples GitHub Отправить SMS-сообщение с помощью .NET.
Начните работу со службами коммуникации Azure, используя JavaScript SDK для SMS из Communication Services для отправки SMS-сообщений.
Завершение этой статьи обойдется вам в небольшую стоимость — несколько центов США или даже меньше в вашей учетной записи Azure.
Примечание.
См. завершенный код Azure Samples GitHub Send an SMS message using JavaScript.
Предварительные условия
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Рекомендуется использовать Node.js версий Active LTS и Maintenance LTS (8.11.1 и 10.14.1).
- Активный ресурс Служб коммуникации и строка подключения. Создайте ресурс Служб коммуникации.
- Номер телефона с поддержкой SMS, короткий код или идентификатор буквенно-цифрового отправителя. Получите номер телефона.
Проверка предварительных условий
- В терминале или командном окне воспользуйтесь
node --version
, чтобы проверить, установлен ли пакет Node.js. - Чтобы просмотреть номера телефонов, связанные с ресурсом Служб коммуникации, войдите в портал Azure и найдите ресурс Служб коммуникации. В области навигации слева выберите номера телефонов.
Настройка среды приложения
Чтобы настроить среду для отправки сообщений, выполните действия, описанные в следующих разделах.
Создание нового приложения Node.js
Откройте терминал или командное окно, а затем выполните следующую команду, чтобы создать каталог для приложения и перейти к нему.
mkdir sms-quickstart && cd sms-quickstart
Выполните следующую команду, чтобы создать файл package.json с параметрами по умолчанию.
npm init -y
Используйте текстовый редактор, чтобы создать файл с именем send-sms.js в корневом каталоге проекта.
В следующих разделах добавьте весь исходный код для этого быстрого старта в файл send-sms.js, который вы создали.
Установка пакета
Используйте команду npm install
, чтобы установить пакет SDK Служб коммуникации Azure для SMS для JavaScript.
npm install @azure/communication-sms --save
Параметр --save
указывает библиотеку как зависимость в файле пакета package.json.
Объектная модель
Следующие классы и интерфейсы обрабатывают некоторые основные возможности SDK для SMS в Службах коммуникации Azure для Node.js.
Имя | Описание |
---|---|
SmsClient | Этот класс требуется для реализации всех функций обмена текстовыми сообщениями. Вы создаёте экземпляр с использованием информации о вашей подписке и используете его для отправки SMS-сообщений. |
Запрос на отправку SMS | Этот интерфейс является моделью для создания SMS-запроса. Вы используете его для настройки номеров телефонов и SMS-содержимого. |
Опции отправки SMS | Этот интерфейс предоставляет параметры настройки отчетов о доставке. Если enableDeliveryReport установлено в true , событие генерируется при успешной доставке. |
РезультатОтправкиСМС | Этот класс содержит результат, полученный от службы SMS. |
аутентификация клиента;
Чтобы выполнить проверку подлинности клиента, вы импортируете SmsClient из комплекта SDK и создаете экземпляр с помощью строки подключения. Вы можете получить строку подключения для ресурса из переменной среды. Например, код в этом разделе извлекает эту строку подключения из переменной COMMUNICATION_SERVICES_CONNECTION_STRING
среды. Узнайте, как управлять строкой подключения ресурса.
Чтобы импортировать клиент и создать его экземпляр, выполните следующие действия.
Создайте файл с именем send-sms.js.
Добавьте следующий код в 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);
Отправка 1:N текстового сообщения
Чтобы отправить SMS-сообщение в список получателей, вызовите send
функцию из SmsClient со списком номеров телефонов получателя. Если вы хотите отправить сообщение одному получателю, добавьте в список только один номер. Добавьте следующий код в конец файла 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();
Выполните следующие замены в коде:
- Замените
<from-phone-number>
номер телефона с поддержкой SMS, связанный с ресурсом Служб коммуникации. - Замените
<to-phone-number-1>
и<to-phone-number-2>
на номера телефонов, на которые вы хотите отправить сообщение.
Предупреждение
Укажите номера телефонов в международном формате E.164( например, +14255550123). Значение <from-phone-number>
также может быть коротким кодом, например 23456 или буквенно-цифровым идентификатором отправителя, например CONTOSO.
Отправка SMS сообщения типа 1:N с параметрами
Можно также указать объект параметров, чтобы указать, следует ли включить отчет о доставке и задать пользовательские теги.
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();
Выполните следующие замены в коде:
- Замените
<from-phone-number>
номер телефона с поддержкой SMS, связанный с ресурсом Служб коммуникации. - Замените
<to-phone-number-1>
и<to-phone-number-2>
на номера телефонов, на которые вы хотите отправить сообщение.
Предупреждение
Укажите номера телефонов в международном формате E.164( например, +14255550123). Значение <from-phone-number>
также может быть коротким кодом, например 23456 или буквенно-цифровым идентификатором отправителя, например CONTOSO.
Этот enableDeliveryReport
параметр является необязательным параметром, который можно использовать для настройки отчетов о доставке. Эта функция полезна, если вы хотите выдавать события при доставке SMS-сообщений. В кратком руководстве по обработке SMS-событий можно настроить отчеты о доставке sms-сообщений.
Параметр tag
является необязательным. Его можно использовать для применения тега к отчету о доставке.
Выполнение кода
node
Используйте команду, чтобы запустить код, добавленный в файл send-sms.js.
node ./send-sms.js
Начните работу с Azure Communication Services, используя Python SDK для SMS от Azure Communication Services, чтобы отправлять SMS-сообщения.
Выполнение этого краткого руководства влечёт за собой небольшую плату в несколько центов США в вашей учетной записи Azure.
Примечание.
Полный код для этой статьи см. в репозитории GitHub Azure Samples Управление телефонными номерами с помощью Python.
Предварительные условия
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Python версии 3.7 и выше.
- Активный ресурс Служб коммуникации и строка подключения. Создайте ресурс Служб коммуникации.
- Номер телефона с поддержкой SMS, короткий код или идентификатор буквенно-цифрового отправителя. Получите номер телефона.
Проверка предварительных условий
- В окне терминала или команды выполните команду
python --version
, чтобы проверить, установлен ли пакет Python. - Чтобы просмотреть номера телефонов, связанные с ресурсом Служб коммуникации, войдите в портал Azure и найдите ресурс Служб коммуникации. В области навигации слева выберите номера телефонов.
Настройка среды приложения
Чтобы настроить среду для отправки сообщений, выполните следующие разделы.
Создание приложения Python
Откройте терминал или командное окно. Используйте следующую команду, чтобы создать новый каталог для приложения и перейти к нему.
mkdir sms-quickstart && cd sms-quickstart
Используйте текстовый редактор, чтобы создать файл с именем send-sms.py в корневом каталоге проекта и добавить структуру для программы, включая базовую обработку исключений.
import os from azure.communication.sms import SmsClient try: # Quickstart code goes here. except Exception as ex: print('Exception:') print(ex)
В следующих разделах добавьте весь исходный код этого краткого руководства в файл send-sms.py, который вы создали.
Установка пакета
Оставаясь в каталоге приложения, установите Azure Communication Services SMS SDK для Python с помощью следующей команды.
pip install azure-communication-sms
Объектная модель
Следующие классы и интерфейсы обрабатывают некоторые из основных функций пакета Azure Communication Services SMS SDK для Python.
Имя | Описание |
---|---|
SmsClient | Этот класс требуется для реализации всех функций обмена текстовыми сообщениями. Создайте экземпляр с информацией о подписке и используйте ее для отправки SMS-сообщений. |
РезультатОтправкиСМС | Этот класс содержит результат, полученный от службы SMS. |
аутентификация клиента;
Создайте экземпляр SmsClient с использованием строки подключения. Узнайте, как управлять строкой подключения ресурса.
# Create the SmsClient object that you use to send SMS messages.
sms_client = SmsClient.from_connection_string(<connection_string>)
Для простоты в этом кратком руководстве используются строки подключения, но в рабочих средах рекомендуется использовать служебные принципалы.
Отправка личного текстового сообщения
Чтобы отправить текстовое сообщение одному получателю, вызовите метод send
из SmsClient с номером телефона этого получателя. Кроме того, можно указать, следует ли включить отчет о доставке и задать пользовательские теги. Добавьте этот код в конец try
блока в 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
Выполните следующие замены в коде:
- Замените
<from-phone-number>
номер телефона с поддержкой SMS, связанный со службой коммуникации. - Замените
<to-phone-number>
номер телефона, на который вы хотите отправить сообщение.
Предупреждение
Укажите номера телефонов в международном формате E.164( например, +14255550123). Значение <from-phone-number>
также может быть коротким кодом, например 23456 или буквенно-цифровым идентификатором отправителя, например CONTOSO.
Отправка 1:N текстового сообщения
Чтобы отправить SMS-сообщение в список получателей, вызовите send
метод из SmsClient со списком номеров телефонов получателя. Кроме того, можно указать, следует ли включить отчет о доставке и задать пользовательские теги. Добавьте этот код в конец try
блока в 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
Выполните следующие замены в коде:
- Замените
<from-phone-number>
номер телефона с поддержкой SMS, связанный со службой коммуникации. - Замените
<to-phone-number-1>
и<to-phone-number-2>
на номера телефонов, на которые вы хотите отправить сообщение.
Предупреждение
Укажите номера телефонов в международном стандартном формате E.164, например +14255550123. Значение <from-phone-number>
также может быть коротким кодом, например 23456 или буквенно-цифровым идентификатором отправителя, например CONTOSO.
Необязательные параметры
Этот enable_delivery_report
параметр является необязательным параметром, который можно использовать для настройки отчетов о доставке. Используйте эту функцию, если вы хотите выдавать события при доставке SMS-сообщений. Сведения о настройке отчетов о доставке sms-сообщений см. в разделе "Обработка SMS-событий ".
Этот tag
параметр является необязательным параметром, который можно использовать для применения тега к отчету о доставке.
Выполнение кода
Запустите приложение из каталога приложения с помощью команды python
.
python send-sms.py
Полный скрипт Python должен выглядеть примерно так:
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)
Приступайте к работе со Службами коммуникации Azure, используя Java SDK для SMS, чтобы отправлять SMS-сообщения.
Завершение этой статьи обойдется вам в небольшую стоимость — несколько центов США или даже меньше в вашей учетной записи Azure.
Примечание.
См. завершенный код Azure Samples GitHub Send an SMS message using Java.
Предварительные условия
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Пакет средств разработки Java (JDK) версии 8 или более поздней версии.
- Apache Maven.
- Активный ресурс Служб коммуникации и строка подключения. Создайте ресурс Служб коммуникации.
- Номер телефона с поддержкой SMS, короткий код или идентификатор буквенно-цифрового отправителя. Получите номер телефона.
Проверка предварительных условий
- В окне терминала или командной строки выполните команду
mvn -v
, чтобы проверить, установлен ли Maven. - Чтобы просмотреть номера телефонов, связанные с ресурсом Служб коммуникации, войдите в портал Azure и найдите ресурс Служб коммуникации. В области навигации слева выберите номера телефонов.
Настройка среды приложения
Чтобы настроить среду для отправки сообщений, выполните следующие разделы.
Создание нового приложения Java
Откройте терминал или командное окно и перейдите в каталог, в котором нужно создать приложение Java. Чтобы создать проект Java из шаблона maven-archetype-quickstart, выполните следующую команду.
- Командная строка
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"
Цель generate
создает каталог с тем же именем, что и значение artifactId
. В этом каталоге каталог src/main/java содержит исходный код проекта, каталог src/test/java содержит источник теста, а файл pom.xml — объектную модель проекта проекта (POM).
Установка пакета
Откройте файл pom.xml в текстовом редакторе. Добавьте приведенный ниже элемент зависимости в группу зависимостей.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-sms</artifactId>
<version>1.0.1</version>
</dependency>
Настройка платформы приложения
Откройте /src/main/java/com/communication/quickstart/App.java в текстовом редакторе, добавьте директивы импорта и удалите инструкцию 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.
}
}
Объектная модель
Следующие классы и интерфейсы обрабатывают некоторые из основных функций Java SDK для служб связи Azure Communication Services SMS.
Имя | Описание |
---|---|
SmsClientBuilder | Этот класс создает SmsClient. Вы предоставляете конечную точку, учетные данные и HTTP-клиент. |
SmsClient | Этот класс требуется для реализации всех функций обмена текстовыми сообщениями. Он используется для отправки SMS-сообщений. |
Опции отправки SMS | Этот класс предоставляет варианты для добавления пользовательских тегов и настройки отчетов о доставке. Если для deliveryReportEnabled задано значение true, событие создается при успешной доставке. |
РезультатОтправкиСМС | Этот класс содержит результат, полученный от службы SMS. |
аутентификация клиента;
Чтобы выполнить проверку подлинности клиента, создайте экземпляр SmsClient
с использованием строки подключения. Для учетных данных используйте Key
из портала Azure. Узнайте, как управлять строкой подключения ресурса. Вы также можете инициализировать клиент с помощью любого пользовательского HTTP-клиента, реализующего com.azure.core.http.HttpClient
интерфейс.
Чтобы создать экземпляр клиента, добавьте следующий код в 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();
Вы также можете предоставить всю строку подключения, используя функцию connectionString
вместо указания конечной точки и ключа доступа.
// 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();
Отправка личного текстового сообщения
Чтобы отправить текстовое сообщение одному получателю, вызовите метод send
из SmsClient с номером телефона этого получателя. Кроме того, можно указать, следует ли включить отчет о доставке и задать пользовательские теги.
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());
Выполните следующие замены в коде:
- Замените
<from-phone-number>
номер телефона с поддержкой SMS, связанный с ресурсом Служб коммуникации. - Замените
<to-phone-number>
номер телефона, на который вы хотите отправить сообщение.
Предупреждение
Укажите номера телефонов в международном стандартном формате E.164, например +14255550123. Значение <from-phone-number>
также может быть коротким кодом, например 23456 или буквенно-цифровым идентификатором отправителя, например CONTOSO.
Отправка SMS сообщения типа 1:N с параметрами
Чтобы отправить текстовое сообщение списку получателей, вызовите метод send
со списком номеров телефонов нужных получателей. Кроме того, можно указать, следует ли включить отчет о доставке и задать пользовательские теги.
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());
}
Выполните следующие замены в коде:
- Замените
<from-phone-number>
номер телефона с поддержкой SMS, связанный с ресурсом Служб коммуникации - Замените
<to-phone-number-1>
и<to-phone-number-2>
на номера телефонов, на которые вы хотите отправить сообщение.
Предупреждение
Укажите номера телефонов в международном формате E.164( например, +14255550123). Значение <from-phone-number>
также может быть коротким кодом, например 23456 или буквенно-цифровым идентификатором отправителя, например CONTOSO.
Этот setDeliveryReportEnabled
метод используется для настройки отчетов о доставке. Эта функция полезна, если вы хотите выдавать события при доставке SMS-сообщений. В кратком руководстве по обработке SMS-событий можно настроить отчеты о доставке sms-сообщений.
Чтобы применить тег к отчету о доставке, используйте метод setTag
.
Выполнение кода
Перейдите в каталог, содержащий файл pom.xml и скомпилируйте проект с помощью
mvn
команды.mvn compile
Создайте пакет.
mvn package
Выполните следующую команду
mvn
для запуска приложения.- Командная строка
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"
Используйте соединитель SMS служб коммуникации Azure и Azure Logic Apps для создания автоматизированных рабочих процессов, которые могут отправлять SMS-сообщения.
В этой статье описывается, как автоматически отправлять текстовые сообщения в ответ на событие триггера, которое является первым шагом в рабочем процессе приложения логики. Событие триггера может быть входящим сообщением электронной почты, расписанием повторения, событием ресурса сетки событий Azure или любым другим триггером, поддерживаемым Azure Logic Apps.
Хотя в этой статье основное внимание уделяется использованию соединителя для реагирования на триггер, вы также можете использовать соединитель для реагирования на другие действия, которые следуют за триггером в рабочем процессе. Если вы не знакомы с Logic Apps, ознакомьтесь с разделом "Что такое Azure Logic Apps перед началом работы".
Примечание.
Завершение этой статьи обойдется вам в небольшую стоимость — несколько центов США или даже меньше в вашей учетной записи Azure.
Предварительные условия
Учетная запись Azure с активной подпиской. Создать бесплатную учетную запись Azure.
Активный ресурс Служб коммуникации Azure. Создать ресурс Служб коммуникации.
Активный ресурс Logic Apps (приложение логики) или создайте пустое приложение логики, но с триггером, который вы хотите использовать. В настоящее время соединитель SMS Служб коммуникации Azure предоставляет только операции, поэтому логическое приложение должно содержать по крайней мере триггер.
В этом кратком руководстве описано использование триггера Когда приходит новое электронное письмо, который доступен в соединителе Outlook Office 365.
Номер телефона с поддержкой SMS, короткий код или идентификатор буквенно-цифрового отправителя. Получите номер телефона.
Внимание
Возможности SMS и ТСОП зависят от используемого номера телефона и страны или региона, в которых вы работаете, определяемых вашим адресом выставления счетов Azure. Дополнительные сведения см. в документации по условиям подписки.
Добавление действия с SMS
Чтобы добавить с помощью соединителя SMS Служб коммуникации Azure действие Отправить SMS в качестве нового шага рабочего процесса, выполните следующие действия на портале Azure с помощью рабочего процесса приложения логики, открытого в конструкторе приложений логики:
В конструкторе в шаге, где вы хотите добавить новое действие, выберите Создать шаг. Если же необходимо добавить новое действие между шагами, наведите указатель мыши на стрелку между этими шагами, щелкните знак "плюс" (+) и выберите Добавить действие.
В поле поиска Выберите операцию введите
Azure Communication Services
. В списке действия выберите Отправить SMS.Теперь создайте подключение к ресурсу Служб коммуникации.
В той же подписке:
Укажите имя подключения.
Выберите ресурс Служб коммуникации Azure.
Нажмите кнопку создания.
Использование строки подключения из ресурса Служб коммуникации:
Укажите имя подключения.
Выберите "Проверка подлинности ConnectionString" в раскрывающемся списке.
Введите строку подключения ресурса Служб коммуникации.
Нажмите кнопку создания.
Использование субъекта-службы (см. "Создание субъекта-службы"):
Укажите имя подключения.
Выберите аутентификацию служебного участника (приложение Microsoft Entra) в раскрывающемся списке.
Введите идентификатор арендатора, идентификатор клиента и секрет клиента субъекта-службы.
Введите значение URL-адреса конечной точки Служб коммуникации для ресурса Служб коммуникации.
Нажмите кнопку создания.
В области действия Отправить SMS введите следующие сведения:
Исходный и конечный номера телефонов. В целях тестирования в качестве конечного номера телефона можно использовать собственный номер телефона.
Содержимое сообщения, которое необходимо отправить, например "Привет от Logic Apps!".
Ниже показано действие Отправить SMS с примерами сведений.
По завершении на панели инструментов конструктора выберите Сохранить.
Затем запустите рабочий процесс для тестирования.
Тестирование рабочего процесса
Чтобы вручную запустить рабочий процесс, на панели инструментов конструктора щелкните Запустить. Также можно подождать срабатывания триггера. В обоих случаях рабочий процесс должен отправить сообщение SMS на указанный конечный телефонный номер. Дополнительные сведения см. в статье о запуске рабочих процессов.
Очистка ресурсов рабочего процесса
Чтобы очистить рабочий процесс Logic Apps и связанные с ним ресурсы, ознакомьтесь с инструкцией по очистке ресурсов Logic Apps.
Устранение неполадок
Для устранения проблем, связанных с доставкой текстовых сообщений, вы можете включить отчеты о доставке в Сетке событий, чтобы сохранять сведения о доставке.
Очистка ресурсов
Если вы хотите отменить и удалить подписку на Службы коммуникации, можно удалить ресурс или группу ресурсов. При удалении группы ресурсов также удаляются все связанные с ней ресурсы. См. сведения об очистке ресурсов.
Бесплатная верификация
Чтобы использовать новый бесплатный номер для отправки SMS-сообщений, необходимо выполнить бесплатный процесс проверки. Чтобы ознакомиться с инструкциями по проверке вашего бесплатного номера, см. в кратком руководстве по отправке запроса на бесплатную проверку. Только полностью проверенные бесплатные номера разрешены для отправки SMS-трафика. Любой SMS-трафик из непроверенных бесплатных (toll-free) номеров, направленных на номера телефонов в США и Канаде, блокируется.
Следующие шаги
В этой статье описано, как отправлять SMS-сообщения с помощью Служб коммуникации Azure.