Настройка уведомлений с помощью шаблонов уведомлений

Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee
X.info

Что такое шаблоны уведомлений?

Функция монетизации предоставляет набор шаблонов, определяющих примерный текст для различных типов уведомлений о событиях. Вы можете настроить любой из этих шаблонов следующим образом:

  • Уведомляйте всех разработчиков о таких событиях, как новые продукты, новые версии условий использования или новые тарифные планы.
  • Уведомите затронутых застройщиков о таких событиях, как пересмотр тарифного плана.
  • Уведомляйте поставщика API о событиях, связанных с разработчиками, например, о регистрации учетной записи или подключении к тарифному плану.
  • Уведомить всех администраторов компании о конкретном событии.

В качестве альтернативы вы можете создать веб-перехватчик, который определяет обработчик HTTP-обратного вызова, а затем настроить условие, которое запускает этот веб-перехватчик, как описано в разделе «Настройка уведомлений с помощью веб-перехватчиков» .

Изучение страницы уведомлений

Перейдите на страницу уведомлений, как описано ниже.

Край

Чтобы получить доступ к странице уведомлений с помощью интерфейса Edge:

  1. Войдите на сайт apigee.com/edge .
  2. В левой панели навигации выберите «Публикация» > «Монетизация» > «Уведомления» .

Отображается страница уведомлений.

Как показано на рисунке, страница «Уведомления» позволяет вам:

Классический Edge (частное облако)

Чтобы получить доступ к странице уведомлений, используя классический интерфейс Edge:

  1. Войдите в систему по http:// ms-ip :9000 , где ms-ip — это IP-адрес или DNS-имя узла сервера управления.
  2. В верхней панели навигации выберите «Администрирование» > «Уведомления» .

На странице «Уведомления» вы можете:

Уведомления о редактировании

Чтобы отредактировать уведомление с помощью пользовательского интерфейса:

  1. Перейдите на страницу уведомлений .
  2. Нажмите Рядом с уведомлением, которое вы хотите отредактировать, разверните его подробности.
  3. При необходимости отредактируйте поля «Тема», «Текст» и «Получатель» (если имеется).

    Информацию о переменных, которые можно указать в шаблоне уведомления, см. в разделе «Использование переменных в шаблонах уведомлений» .

    Для получения более подробной информации о редактировании уведомлений в каждой категории обратитесь к следующим разделам:

  4. Включите уведомление, установив флажок рядом с ним.
  5. Повторите шаги 2–4, чтобы отредактировать дополнительные уведомления.
  6. Нажмите «Сохранить» , чтобы сохранить все изменения.

Отобразится сообщение, подтверждающее сохранение уведомлений. Сохранение может занять несколько минут.

Редактирование уведомлений для оповещения всех разработчиков.

Уведомления о выбранных вами типах событий в разделе «Уведомлять всех разработчиков» отправляются всем разработчикам.

Уведомления запланированы на конец дня. После отправки уведомлений флажки событий автоматически снимаются. Вам необходимо снова выбрать их, чтобы запланировать уведомления для соответствующих типов событий.

В таблице ниже перечислены уведомления в зависимости от типов событий в разделе «Уведомить всех разработчиков». Дополнительную информацию см. в разделе «Редактирование уведомлений с помощью пользовательского интерфейса» .

Тип события Курок Примечания
Новая упаковка Доступен новый пакет API.

В текст шаблона электронного письма добавьте название каждого нового пакета (и продукты, входящие в каждый пакет) в рамках обновления. Вы также можете добавить ссылку на портал разработчиков или любой другой веб-сайт, предоставляющий дополнительную информацию об уведомлении.

Новый продукт Доступен новый продукт API.

В текст электронного письма добавьте название каждого нового продукта в качестве части обновления. Вы также можете добавить ссылку на портал разработчиков или любой другой веб-сайт, предоставляющий дополнительную информацию об уведомлении.

Новые рынки/Охват Новые продукты API доступны на определенных географических рынках.

В текст шаблона электронного письма добавьте название каждого нового рынка и соответствующих продуктов в рамках обновления. Вы также можете добавить ссылку на портал разработчиков или любой другой веб-сайт, предоставляющий дополнительную информацию об уведомлении.

Редактирование уведомлений для оповещения затронутых разработчиков.

Уведомления о событиях выбранного вами типа в разделе «Уведомить затронутых разработчиков» отправляются только тем разработчикам, на которых повлияли эти события. Например, если вы выберете событие «Измененный тарифный план», уведомление будет отправлено только тем разработчикам, которые приняли этот тарифный план.

В таблице ниже перечислены уведомления в зависимости от типов событий в разделе «Уведомить затронутых разработчиков». Дополнительную информацию см. в разделе «Редактирование уведомлений с помощью пользовательского интерфейса» .

Тип события Курок Примечания
Условия и положения не приняты или истекли Опубликованы новые условия и положения, но разработчик их еще не принял.

Уведомление отправляется за 30 дней, 7 дней и 1 день до вступления в силу новых условий.

Новый тарифный план Опубликованы новые тарифные планы.

Если тарифный план представляет собой:

  • Стандартный план, все разработчики получают уведомление.
  • Тарифный план для разработчиков: уведомления получают только разработчики, относящиеся к данной категории.
  • Тарифный план для застройщиков: уведомления получают только конкретные застройщики.
Пересмотренный тарифный план Доступна более новая версия приобретенного тарифного плана.

Уведомление получат только разработчики, купившие текущую версию. Уведомление позволит разработчикам ознакомиться с новой версией и отказаться от новых тарифов или сменить тарифный план, если они не захотят их принять.

Тарифный план истек Тарифный план истек, и последующего тарифного плана нет.

Это уведомление отправляется при первоначальной настройке тарифного плана с истекающим сроком действия, а дополнительные уведомления отправляются за 30, 7 и 1 день до даты истечения срока действия. Уведомление получат только те застройщики, которые приобрели тарифный план с истекающим сроком действия.

Обновленный тарифный план Подписка на тарифный план продлена.

Сообщите разработчику, что будут взиматься соответствующие сборы.

Превышен лимит скорости. Превышен лимит тарифного плана.

Сообщите разработчику, что будут взиматься соответствующие сборы.

Исчерпанный тарифный план Freemium Бесплатные периоды использования, измеряемые количеством транзакций или количеством дней, исчерпаны.

Период бесплатного использования определяется вашим тарифным планом с бесплатной версией.

Опубликован платежный документ.

Доступны платежные документы (например, счета-фактуры) для застройщика.

Застройщик переходит на новый тарифный план Разработчик переходит на новый тарифный план.

Редактирование уведомлений для оповещения поставщиков API.

Уведомления о событиях выбранного вами типа в разделе «Уведомлять поставщика API» отправляются указанному вами поставщику API.

В таблице ниже перечислены уведомления в зависимости от типов событий в разделе «Поставщик API уведомлений». Дополнительную информацию см. в разделе «Редактирование уведомлений с помощью пользовательского интерфейса» .

Тип события Курок
Зарегистрировался новый разработчик

Разработчик зарегистрировал учетную запись.

Разработчик добавил приложение.

Разработчик создал новое приложение.

Разработчики регистрируются для перехода на новый тарифный план

Разработчик подписался на тарифный план.

Разработчик вносит изменения в финансовые данные.

Разработчик изменил финансовые данные, такие как название или адрес своей компании.

Включение или отключение уведомления

Чтобы включить или отключить уведомление с помощью пользовательского интерфейса:

  1. Перейдите на страницу уведомлений .
  2. Чтобы включить или отключить уведомление, установите или снимите флажок рядом с ним.
  3. Нажмите «Сохранить» , чтобы сохранить все изменения.

Сохранение может занять несколько минут. После сохранения отобразится сообщение, подтверждающее, что уведомления сохранены.

Настройка уведомлений с использованием шаблонов через API.

Настройте уведомления с помощью API, как описано в следующих разделах.

Управление шаблонами уведомлений с помощью API

Управление шаблонами уведомлений осуществляется с помощью API, как описано в следующих разделах:

Просмотр всех шаблонов уведомлений с помощью API

Вы можете получить список всех шаблонов уведомлений, предоставляемых монетизацией, отправив GET-запрос по адресу /mint/organizations/{org_name}/notification-email-templates . Например:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/notification-email-templates" \
  -u email:password

Например, ниже представлен шаблон события, который уведомляет разработчиков о доступности нового API-продукта:

{
    "createdDate" : 1376975394984,
    "htmlImage" : "<p>Dear ${developer.legalName} , ${developer.name} <br /> Introducing _________. For more details visit us at _________________</p>",
    "id" : "4d81ea64-d005-4010-b0a7-6ec8a5c3954b",
    "name" : "DEFAULT_NEW_PRODUCT_TEMPLATE",
    "orgId" : "myorg",
    "source" : "Mail Man Test",
    "subject" : "Notification of new product",
    "updatedDate" : 1376975394984
}

Просмотр шаблона уведомления с помощью API

Чтобы просмотреть шаблон уведомления, отправьте GET-запрос по адресу /mint/organizations/{org_name}/notification-email-templates/{template_id} , где {template_id} — это идентификатор шаблона. Например:

curl -X GET "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/notification-email-templates/4d81ea64-d005-4010-b0a7-6ec8a5c3954b" \
  -H "Accept:application/json"  \
  -u email:password

Элементы в шаблонах, начинающиеся с символа $, являются переменными. Дополнительную информацию см. в разделе «Использование переменных в шаблонах уведомлений» . Предположим, что переменные в уведомлении принимают следующие значения:

  • ${developer.legalName}.XYZ company
  • ${developer.name}.DEV1
  • ${QUOTA_TYPE}.Transactions
  • ${PERCENT}.90%
  • ${QUOTA_UNIT}.Calls
  • ${QUOTA_LIMIT}.100
  • ${ratePlan.monetizationPackage.products.name}.X
  • ${EXPIRY_DATE}.2016-09-30

Уведомление, предоставляемое шаблоном, будет выглядеть следующим образом:

    "Dear XYZ company, DEV1
    You have exceeded Transactions of 90% calls of 100 calls for X product. Your API calls will be blocked till 2016-09-30"

Редактирование шаблона уведомления с помощью API

Отредактируйте шаблон уведомления, отправив PUT-запрос по адресу /nint/organizations/{org_name}/notification-email-templates/{template_id} . Укажите измененное содержимое шаблона в теле запроса.

При настройке сообщения в шаблоне уведомления можно использовать одну или несколько переменных. Дополнительную информацию см. в разделе «Использование переменных в шаблонах уведомлений» .

Например, следующий запрос изменяет содержимое уведомления о новом продукте API:

curl -X PUT "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/notification-email-templates/4d81ea64-d005-4010-b0a7-6ec8a5c3954b " \
  -H "Content-Type: application/json" \
  -d '{
    "id" : "4d81ea64-d005-4010-b0a7-6ec8a5c3954b",
    "htmlImage" : "<p>Exciting news, we have added a new product :${Product.name}. See details in <a href="${Product.url}">New Products</a> </p>",
    "name" : "NewProductNotification",
    "organization": {
    "id": "{org_name}"
    },
    "source" : "Mail Man Test ",
    "subject" : "New Product Available: ${Product.name}"
  }' \
  -u email:password

Управление условиями и действиями уведомлений с помощью API.

Управляйте условиями и действиями уведомлений с помощью API, как описано в следующих разделах.

Создание условия уведомления и действия с помощью API

Создайте условие и действие для уведомления, которые приведут к автоматическому уведомлению, отправив POST-запрос на /mint/organizations/{org_name}/notification-conditions .

При отправке запроса укажите в теле запроса условие, которое приводит к уведомлению, и действия, которые должны быть предприняты при достижении этого условия (например, отправка уведомления по электронной почте).

Детали условия уведомления определяются путем указания одного или нескольких значений атрибутов. Список атрибутов см. в разделе «Свойства конфигурации условий уведомления» . В случае уведомления о событии условие может срабатывать при публикации нового продукта.

При определении actions используйте соответствующий шаблон уведомления. Список действий см. в разделе «Свойства конфигурации действий уведомления» .

Например, следующий запрос указывает, что если атрибут имеет значение NEW_PRODUCT , а значение атрибута PUBLISHED равно true , то необходимо отправить уведомление в шаблоне с идентификатором 01191bf9-5fdd-45bf-8130-3f024694e63 (это DEFAULT_NEW_PRODUCT_TEMPLATE ).

curl -X POST "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/notification-conditions" \
  -H "Content-Type:application/json"
  -d '{
    "notificationCondition": [
    {
      "attribute": "NEW_PRODUCT"
    },
    {
      "attribute": "PUBLISHED",
      "value": "true"
    }
    ],
    "actions": [{
      "actionAttribute": "DEV_ID",
      "value": "ANY",
      "templateId": "01191bf9-5fdd-45bf-8130-3f024694e63"
    }]
  }' \
  -u email:password

Просмотр условий уведомления и действий с помощью API.

Чтобы просмотреть условие уведомления и действие, отправьте GET-запрос по адресу organizations/{org_name}/notification-conditions/{condition_Id} , где {condition_Id} — это идентификатор условия. Идентификатор возвращается при создании условия уведомления. Например:

curl -X GET "https://api.enterprise.apigee.com /v1/mint/organizations/{org_name}/notification-conditions/2d08d03f-8a54-4e75-bd6f-9c9da2f53fc4" \
  -H "Accept:application/json" \
  -u email:password

Ниже приведён пример ответа:

    {
    "actions" : [ {
    "actionAttribute" : "DEV_ID",
    "id" : "141ba00c-d7bd-4fef-b339-9d58b83255f4",
    "templateId" : "766aba4f-0f7a-4555-b48e-d707c48b8f4c",
    "value" : "ANY"
    }, {
    "actionAttribute" : "ORG_EMAIL",
    "id" : "21486ce1-4290-4a55-b415-165af3e93c9d",
    "templateId" : "efa4ce63-7c08-4876-984b-6878ec435994",
    "value" : "DEFAULT_LIMIT_NOTIFICATION_EMAIL"
    } ],
    "notificationCondition" : [ {
    "attribute" : "Balance",
    "id" : "2d08d03f-8a54-4e75-bd6f-9c9da2f53fc4",
    "organization" : {
    ...
    },
    "value" : "< 0"
    } ]
    }

Редактирование условия уведомления и действия с помощью API.

Чтобы изменить условие и действие уведомления, отправьте POST-запрос по адресу organizations/{org_name}/notification-conditions/{condition_Id} , где {condition_Id} — это идентификатор условия. Идентификатор возвращается при создании условия уведомления. При отправке запроса укажите в теле запроса изменения, которые вы хотите внести в условие или действие уведомления.

Например:

   $ curl -H "Content-Type:application/json" -X POST -d \
    ' {
    "notificationCondition": [
    {
      "attribute": "NEW_PRODUCT"
    },
    {
    "attribute": "PUBLISHED",
    "value": "true"
    }
    ],
    "actions": [{
      "actionAttribute": "DEV_ID",
      "value": "ANY",
      "templateId": "01191bf9-5fdd-45bf-8130-3f024694e63"
    }]
    }' \
    "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/notification-conditions/2d08d03f-8a54-4e75-bd6f-9c9da2f53fc4" \
  -u email:password

Удаление условия уведомления и действия с помощью API.

Удалите условие уведомления, отправив запрос DELETE по адресу organizations/{org_name}notification-conditions/{condition_Id} . Например:

curl -X DELETE "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/notification-conditions/2d08d03f-8a54-4e75-bd6f-9c9da2f53fc4"  \
  -H "Accept:application/json"  \
  -u email:password

Свойства конфигурации для условий уведомления

При использовании API доступны следующие параметры конфигурации условий уведомлений.

Имя Описание По умолчанию Необходимый?
attribute

Подробности условия уведомления. Для уточнения условия уведомления можно указать один или несколько атрибутов.

Значение может быть одним или несколькими из следующих:

  • ADD_RATEPLAN
  • ADHOC_NOTIFY_DEVELOPERS
  • BILLING_DOCS_PUBLISHED
  • COMPANY_ACCEPTS_INVITATION
  • COMPANY_CANCELS_INVITATION
  • COMPANY_DECLINES_INVITATION
  • COMPANY_INVITES_DEVELOPER
  • CREATE_APPLICATION
  • CREATE_DEVELOPER
  • DATE
  • DEVELOPER_ACCEPTS_INVITATION
  • DEVELOPER_CANCELS_INVITATION
  • DEVELOPER_DECLINES_INVITATION
  • DEVELOPER_INVITES_COMPANY
  • EXPIRING_TNC
  • FeeExposure
  • FREEMIUM_USED_UP
  • NEW_PACKAGE
  • NEW_PRODUCT
  • PUBLISHED
  • RATEPLAN
  • RATEPLAN_ACCEPTED
  • RATEPLAN_ENDED
  • RATEPLAN_EXPIRED
  • RATEPLAN_RENEWED
  • RATEPLAN_REVISION
  • Transactions
  • UPDATE_DEVELOPER
  • UsageTarget (действительно только для настройки веб-хуков )
Н/Д Да
value

Значение атрибута.

Н/Д Нет
associatedCondition

Ссылка на сопутствующее состояние.

Н/Д Нет

Свойства конфигурации для действий уведомлений

При использовании API для действий с уведомлениями доступны следующие параметры конфигурации.

Имя Описание По умолчанию Необходимый?
actionAttribute

Метод, используемый для идентификации получателя уведомления. Значение может быть одним или несколькими из следующих:

  • ORG_EMAIL . Получатель уведомления идентифицируется по адресу электронной почты.
  • DEV_ID . Получатель уведомления идентифицируется по идентификатору разработчика (адресу электронной почты).
  • COMPANY_ADMINS . Уведомление отправляется всем администраторам компании независимо от установленного значения. Обратите внимание, что администраторы компании отличаются от администраторов организации.
  • WEBHOOK . Информация о получателе уведомления отправляется обработчику обратного вызова веб-хука. См. раздел «Настройка уведомлений с помощью веб-хуков» .
Н/Д Да
value

Значение атрибута действия.

Если для actionAttribute установлено значение ORG_EMAIL или DEV_ID , значение ANY отправляет уведомление любому подходящему получателю, например, на любой адрес ORG_EMAIL или DEV_ID .

Если для параметра actionAttribute установлено значение WEBHOOK , присвойте этому значению идентификатор веб-перехватчика.

Если для actionAttribute установлено значение COMPANY_ADMINS , это значение игнорируется; уведомление отправляется всем администраторам компании.

Н/Д Да
templateID

Идентификатор шаблона уведомления.

Примечание: Этот параметр недействителен, если для actionAttribute установлено значение WEBHOOK .

Н/Д Да
postURL

Обработчик обратного вызова для веб-хука.

Примечание: Этот параметр обязателен, если actionAttribute установлен в WEBHOOK . Этот параметр недействителен, если значение установлено в ORG_EMAIL , DEV_ID или COMPANY_ADMINS .

Н/Д Да

Использование переменных в шаблонах уведомлений

При редактировании сообщения в шаблоне уведомления можно использовать одну или несколько переменных, представляющих значения, возвращаемые объектом Transaction, с помощью языка выражений Spring Expression Language (SpEL).

В таблице ниже приведено краткое описание наиболее часто используемых переменных шаблона уведомлений.

Переменная Описание
${application.name}

Название приложения.

${application.products.name} Название продукта, включенного в приложение.
${BALANCE} Баланс для заданной квоты.
${developer.legalName}

Название компании-разработчика.

${developer.name}

Имя разработчика.

${EXPIRY_DATE}

Дата или время истечения или сброса лимита.

${LONG_PERCENT} Процент от достигнутого лимита при текущем использовании, без символа %. Например, 50.
${PERCENT}

Процент от лимита, достигнутый текущим использованием, обозначается символом %. Например, 50%.

${products.displayName} Отображаемое имя, заданное для товара.
${QUOTA_TYPE}

Тип ограничения (объем транзакций, лимит расходов или размер комиссионных сборов).

${QUOTA_UNIT}

Базовая единица измерения лимита: валюта (для лимита расходов) или звонки (для лимита транзакций).

${QUOTA_LIMIT}

Величина лимита.

${ratePlan.displayName} Отображаемое имя, заданное для тарифного плана.
${ratePlan.endDate} Дата, когда поставщик API прекратил действие тарифного плана.
${ratePlan.monetizationPackage.displayName}

Название пакета API.

${ratePlan.monetizationPackage.name} Название пакета монетизации.
${ratePlan.monetizationPackage.products.displayName}

Отображаемое имя, определенное для продукта API.

${ratePlan.monetizationPackage.products.name} Название продукта, входящего в пакет монетизации.
${ratePlan.startDate} Дата составления тарифного плана.
${USAGE} Текущее использование (общий доход или платежи, или объем).
${USER}

Имя пользователя.