Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»
Yandex Cloud Notification Service
    • Обзор
    • Начало работы с мобильными Push-уведомлениями
    • Начало работы с Push-уведомлениями в браузере
    • Начало работы с SMS
    • Начало работы с топиками
    • Все инструкции
      • Создать топик
      • Создать подписку на топик
      • Отправить уведомление в топик
      • Управлять топиком
      • Управлять подпиской
    • Настроить логирование
    • Обзор
    • Мобильные Push-уведомления
    • Push-уведомления в браузере
    • SMS
    • Топики
    • Квоты и лимиты
    • Все инструменты
    • AWS CLI
    • AWS SDK для С++
    • AWS SDK для Go
    • AWS SDK для Java
    • AWS SDK для JavaScript
    • AWS SDK для Kotlin
    • AWS SDK для .NET
    • AWS SDK для PHP
    • AWS SDK для Python (boto3)
  • Правила тарификации
  • Метрики Monitoring
  • Логи Cloud Logging
  • История изменений
  1. Пошаговые операции
  2. Топики
  3. Отправить уведомление в топик

Отправить уведомление в топик

Статья создана
Yandex Cloud
Обновлена 22 августа 2025 г.
Консоль управления
AWS CLI
AWS SDK для Python
  1. Выберите топик.

  2. Нажмите кнопку Отправить уведомление.

  3. Выберите вид уведомлений:

    • Одинаковые — во все типы каналов будет отправлено одно и то же уведомление.
    • Различные — можно ввести разные тексты для разных типов каналов.
  4. Введите единый текст для всех каналов или разные тексты для разных типов каналов в формате JSON. Если канал не указан, будет отправлен текст по умолчанию из поля default.

    Формат уведомления в JSON:

    {
      "default": "<Текст_по_умолчанию>",
      "sms": "<Текст_уведомления_для_sms>",
      "WEB": "<Текст_уведомления_для_браузера>",
      "APNS": {
        "aps": {
          "alert": {
            "title": "Заголовок_уведомления",
            "body": "Текст_уведомления"
          }
        }
      },
      "GCM": {
        "notification": {
          "title": "Заголовок_уведомления",
          "body": "Текст_уведомления"
        }
      },
      "HMS": {
        "notification": {
          "title": "Заголовок_уведомления",
          "body": "<Текст_уведомления>"
        }
      },
      "RUSTORE": {
        "notification": {
          "title": "Заголовок_уведомления",
          "body": "<Текст_уведомления>"
        }
      }
    }
    
  5. Нажмите кнопку Отправить.

  1. Если у вас еще нет AWS CLI, установите и сконфигурируйте его.

  2. Выполните команду:

    Для отправки уведомления:

    aws sns publish \
    --topic-arn <ARN_топика> \
    --message-structure json \
    --message '{"default": "<текст_уведомления>","APNS": {"aps":{"alert":"<текст_уведомления>"}},"GCM": {"notification":{"body":"<текст_уведомления>"}},"HMS": {"notification":{"body":"<текст_уведомления>"}},"RUSTORE": {"notification":{"body":"<текст_уведомления>"}},"WEB": "<текст_уведомления>","sms": "<текст_уведомления>"}'
    

    Где:

    • topic-arn — ARN топика.
    • message-structure — формат сообщения json.
    • message — текст уведомления или путь к файлу с уведомлением. Для отправки разных уведомлений в зависимости от типа канала укажите канал и текст уведомления. Если какой-либо канал не указан, будет отправлено сообщение по умолчанию.

    Подробнее о команде aws sns publish см. в документации AWS.

  1. Если у вас еще нет AWS SDK для Python (boto3), установите и настройте его.

  2. Чтобы создать канал push-уведомлений, используйте следующий код:

    try:
        response = client.publish(
            TopicArn="<ARN_топика>",
            Message=json.dumps({
                "default": "<текст_уведомления>",
                "APNS": {"aps":{"alert":"<текст_уведомления>"}},
                "GCM": {"notification":{"body":"<текст_уведомления>"}},
                "HMS": {"notification":{"body":"<текст_уведомления>"}},
                "RUSTORE": {"notification":{"body":"<текст_уведомления>"}},
                "WEB": "<текст_уведомления>",
                "sms": "<текст_уведомления>"
            }),
            MessageStructure="json"
        )
        print(f"Message ID: {response["MessageId"]}")
    except botocore.exceptions.ClientError as error:
        print(f"Error: {error}")
    

    Где:

    • TopicArn — ARN топика.
    • Message — текст уведомления. Можно указать единый текст для всех типов каналов или разные тексты для каждого типа канала. Если какой-либо канал не указан, будет отправлено сообщение по умолчанию из поля default.
    • MessageStructure — формат сообщения (json).

Была ли статья полезна?

Предыдущая
Создать подписку на топик
Следующая
Управлять топиком
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»