Плейсхолдеры для описания Правила обработки события

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

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

При описании Правила обработки события возможны следующие операции с Плейсхолдерами:

  • >

  • <

  • >=

  • <=

  • =

  • !=

  • include? (например, order.type = "SalesOrder" and (order.plans_ids include? 2000030)) — обработчик события сработает, если в заказ на покупку включен тарифный план с id =2000030)

  • exclude? (исключить определенные сущности (по id, ключу, имени) из выбранного массива сущностей, например, для исключения отправки уведомления о создании заказа на подписку по тарифному плану с id = 2000, необходимо использовать следующее правило: order.plans_ids exclude? 2000)
  • and (например, для исключения нескольких сущностей из массива необходимо использовать (product_ids exclude? 34650) and (product_ids exclude? 34702))

  • or. Для нескольких or после and следует использовать дополнительные скобки: order.type = "RenewalOrder" and order.renewal_is_positive = true and subscription.payment_model = "prepay" and ((order.plans_ids include? 293827) or (order.plans_ids include? 293824) or (order.plans_ids include? 294340))
  • % (например, 30% от Порога срабатывания финансовой блокировкиaccount.financial_blocking_threshold % 30 )
СобытиеПлейсхолдерОписаниеТипПример

Общее для всех событий

owner.status

Статус владельца Клиентаstringowner.status = "active"

owner.country

2-буквенный код страны (ISO) из адресной информации владельца Клиента (например, BY для Республики Беларусь)stringowner.country = "BY"

owner.city

Название города из адресной информации владельца Клиентаstringowner.city = "Minsk"
current_dateТекущая датаdatecurrent_date

Приближается финансовая блокировка клиента (Account credit hold is coming)


Клиент изменен (Account changed)


Клиент создан (Account created)


Порог срабатывания финансовой блокировки изменен (Financial blocking threshold was changed)


Менеджер клиента изменен (Account manager changed)


Недостаточно средств на балансе (Low balance)


Закрывающие документы сформированы (Closing documents generated)


Создание сервера (Create instance)

Сброс пароля сервера (Reset instance password)

account.balanceБаланс клиентаnumber
account.balance = 1000
account.balance.was

Предыдущее значение Баланса клиента

Может быть использован только для события Недостаточно средств на балансе.

number
account.balance.was = 100
account.cityНазвание города из адресной информации Клиентаstringaccount.city = "Minsk"
account.class_idID Правила обслуживания Клиентаintegeraccount.class_id = 1
account.class_keyКлюч Правила обслуживания Клиентаstringaccount.class_key = "manual"
account.country2-буквенный код страны (ISO) из адресной информации Клиента (например, BY для Республики Беларусь)stringaccount.country = "BY"
account.financial_blocking_threshold

numberaccount.financial_blocking_threshold = 100
account.has_endless_trial_subscriptions

Признак наличия у Клиента хотя бы одной активной коммерческой Подписки с бессрочным периодом


booleanaccount.has_endless_trial_subscriptions = true
account.has_managerПризнак наличия прикрепленного Сотрудника (Менеджера)booleanaccount.has_manager = true
account.regular_sending

Плейсхолдер используется для задания условий отправки уведомлений о низком Балансе.

  • Если account.regular_sending = true, отправка уведомлений осуществляется при выполнении биллинг процесса.
  • Если account.regular_sending = false, отправка уведомлений осуществляется в момент изменения Баланса.
  • Если параметр regular_sending не задан, отправка уведомлений осуществляется дважды: при выполнении биллинг процесса и в момент изменения Баланса.
booleanaccount.regular_sending = true
account.statusСтатус Клиентаstringaccount.status = "inactive"
account.status.was

Предыдущий статус Клиента

Может быть использован только для события Клиент изменен.

stringaccount.status.was = "inactive"
account.subscription_credit_limitЧисловое значение кредитного лимита по подписке по модели Постоплатаnumberaccount.subscription_credit_limit = 100
account.type_idID Типа клиентов Клиентаintegeraccount.type_id = 1
account.type_keyКлюч Типа клиентов Клиентаstringaccount.type_key = "business"
account.owner_reset_password_url

Одноразовая ссылка для установки пароля Владельца Клиента

Может быть использован только для события Клиент создан.

stringaccount.owner_reset_password_url = "http://example.com/password/edit?reset_password_token=1q2w3e"

Закрытие Акта (Invoice closed)


Счет был подтвержден (The Invoice was approved)

invoice.statusCтатус Актаstringinvoice.status = "open"
invoice.has_attachedУказывает, был ли прикреплен к Платежу файл Счета на оплату, сформированный сторонней ERP-системой, при подтверждении Акта по модели Постоплата с внешним управлением (см. Управление Актами по модели Постоплата сторонней ERP-системой)booleaninvoice.has_attached = true
account.type.keyКлюч Типа клиентов Клиентаstringaccount.type_key = "business"

Ручная операция (Manual Operation)

operation.idID Ручной операцииintegeroperation.id = 1
operation.statusСтатус Ручной операции (см. Просмотр списка Ручных операций)string

operation.status = "approval_required"

operation.status = "declined"

operation.typeТип Ручной операции (см. Просмотр списка Ручных операций)string

operation.type = "postpay_subscription_verify"

operation.type = "manual_provisioning_plugin_application_install"

operation.type = "manual_provisioning_plugin_application_update"

product.idID Продукта Тарифного планаintegerproduct.id = 1
product.nameИмя Продукта Тарифного планаstringproduct.name = "ESET"
product_category.idID Продукта Тарифного планаintegerproduct_category.id = 1
plan.idID Тарифного планаintegerplan.id = 1
plan_category.keyКлюч Категории тарифных плановstringplan_category.key = "default"
subscription.idID Подпискиintegersubscription.id = 1
subscription.status.wasПредыдущий статус Подпискиstringsubscription.status.was="installing"
subscription.statusСтатус Подпискиstringsubscription.status.was="active"
account.type_keyКлюч Типа клиентовstringaccount.type_key = "personal"
account.class_keyКлюч Правила обслуживания Клиентаstringaccount.class_key = "default"

Приглашение пользователя (User invitation)

----

Платеж получен (Payment has been received)

account.type_keyКлюч Типа клиентовstringaccount.type_key = "business"
account.class_keyКлюч Правила обслуживания Клиентаstringaccount.class_key = "manual"
account.financial_blocking_threshold

numberaccount.financial_blocking_threshold = 100
account.balanceБаланс клиентаintegeraccount.balance = 1000
account.statusСтатус Клиентаstringaccount.status = "inactive"
account.country2-буквенный код страны (ISO) из адресной информации Клиента (например, BY для Республики Беларусь)stringaccount.country = "BY"
account.cityНазвание города из адресной информации Клиентаstringaccount.city = "Minsk"
payment.totalОбщая сумма Платежа (Итого)integerpayment.total = 100
payment.statusСтатус Платежаstringpayment.status = "completed"

Запрос сброса пароля (Password reset request)

Подтверждение email (Verify email)

user.idID Пользователяintegeruser.id = 1

Запрос сброса пароля менеджера

Manager password reset request

manager.idID Сотрудникаintegermanager.id = 1

До окончания периода подписки
(Before subscription expiration)

После окончания периода подписки
(After subscription expiration)

Подписка переведена из пробного статуса в платный 
(After subscription switched from trial to no-trial)

Подписка изменена (Subscription changed)


Кредитный лимит для постоплатной подписки изменен (Credit limit for postpaid subscription was changed)


Приближение к кредитному лимиту постоплатной подписки (Credit limit for postpaid subscription is approaching)

account.balanceБаланс клиентаnumberaccount.balance = 1000
account.statusСтатус Клиентаstringaccount.status = "inactive"

account.type_key

Ключ Типа клиентаstringaccount.type_key = "business"
account.class_keyКлюч Правила обслуживания Клиентаstringaccount.class_key = "manual"
account.financial_blocking_threshold

Денежный лимит, в пределах которого баланс клиента может быть отрицательным без перехода в статус Финансовая блокировка в течение Разрешенного периода отрицательного баланса

numberaccount.financial_blocking_threshold = 100
account.subscription_credit_limitЧисловое значение кредитного лимита по подписке по модели Постоплатаnumberaccount.subscription_credit_limit = 100
account.country2-буквенный код страны (ISO) из адресной информации Клиента (например, BY для Республики Беларусь)stringaccount.country = "BY"
account.cityНазвание города из адресной информации Клиентаstringaccount.city = "Minsk"
plan.auto_renewal_disabledВключена ли опция Блокировать опцию Автопродление в Тарифном планеbooleanplan.auto_renewal_disabled = false
plan.idID Тарифного планаintegerplan.id = 1
plan.statusСтатус Тарифного планаstringplan.status = "completed"
plan_period.duration_valueДлительность периода Подписки на Тарифный планintegerplan_period.duration_value = 30
plan_period.duration_typeЕдиницы измерения длительности периода Подписки на Тарифный план (год, месяц, день)stringplan_period.duration_type = "months"
plan_period.trial

Является ли период Тарифного плана пробным

Значения true и false должны быть указаны в кавычках.

string ("boolean")plan_period.trial = "false"
plan_period.setup_feeСтоимость установки Подписки на период Тарифного планаnumber plan_period.setup_fee = 100
plan_period.recurring_feeАбонентская плата за Подписку на период Тарифного планаnumberplan_period.recurring_fee = 100
plan_period.renewal_feeСтоимость продления Подписки на период Тарифного планаnumberplan_period.renewal_fee = 100
plan_category.keyКлюч Категории тарифных плановstringplan_category.key = "streaming"
plan_category.idID Категории тарифных плановintegerplan_category.id = 1
subscription.idID Подпискиintegersubscription.id = 1
subscription.cspЯвляется ли Подписка предоставляемой по программе Microsoft CSPbooleansubscription.csp = true
subscription.individual_priceЗаказана ли Подписка по индивидуальным ценам (см. Заказ Подписки по индивидуальным ценам)booleansubscription.individual_price = true
subscription.statusСтатус Подпискиstringsubscription.status = "active"
subscription.status.was

Предыдущий статус Подписки

Плейсхолдер не поддерживается для Событий Кредитный лимит для постоплатной подписки изменен и Приближение к кредитному лимиту постоплатной подписки.

stringsubscription.status.was="installing"
subscription.auto_renewalВключена ли опция Автопродление в Подпискеbooleansubscription.auto_renewal = true
subscription.auto_renewal_disabledВключена ли опция Блокировать опцию Автопродление в Подпискеbooleansubscription.auto_renewal_disabled = false
subscription.days_leftКоличество дней до даты истечения Подпискиintegersubscription.days_left = 7
subscription.days_passedКоличество дней, прошедших со дня создания Подпискиintegersubscription.days_passed = 15
subscription.plan_classНазвание Правила предоставления Тарифного планаstringsubscription.plan_class = "default"
subscription.payment_model

Модель оплаты Подписки. Возможные значения prepay (Предоплата) или postpay (Постоплата).

Для События Подписка переведена из пробного статуса в платный может использоваться только subscription.payment_model = "prepay", так как само Событие доступно только для модели prepay (Предоплата).

stringsubscription.payment_model = "postpay"
subscription_postpay.current_debtТекущая задолженность по Подписке, рассчитанная как сумма всех Списаний по данной Подписке за текущий Финансовый период в статусе Заблокированоnumbersubscription_postpay.current_debt = 100
subscription_postpay.credit_limitВеличина задолженности по Подписке, при превышении которой только данная Подписка по модели Постоплата будет остановлена.numbersubscription_postpay.credit_limit = 100
product.idID Продукта Тарифного плана, на который оформлена Подписка (см. Изменение общей информации о Тарифном плане)integer product.id = 1
product.nameИмя Продукта Тарифного плана, на который оформлена Подписка (см. Изменение общей информации о Тарифном плане)integerproduct.name = "Default"
order.type

Тип Заказа (список типов см. в Управление Заказами)

Плейсхолдер не поддерживается для Событий Кредитный лимит для постоплатной подписки изменен и Приближение к кредитному лимиту постоплатной подписки.

stringorder.type = "RenewalOrder"

Заказ изменен (Order changed)


Заказ создан (Order created)


Повторная отправка заказа (Resend the order)

order.id

ID Заказа

Плейсхолдер не поддерживается для Событий Заказ изменен и Заказ создан.

integerorder.id = 1
order.plans_idsID заказанных Тарифных плановintegerorder.type = "SalesOrder" and (order.plans_ids include? 2000030)
order.statusСтатус Заказаstringorder.status = "waiting for payment"
order.status.was

Предыдущий статус Заказа

Плейсхолдер не поддерживается для События Заказ создан.

stringorder.status.was = "provisioning"
order.totalОбщая стоимость Заказаinteger order.total = 100
order.typeТип Заказа (список типов см. в Управление Заказами)stringorder.type = "RenewalOrder"
order.renewal_point

Плейсхолдер устарел. В текущей версии платформы всегда order.renewal_point = true.

См. Плейсхолдер order.renewal_is_positive.

Установлено ли значение в поле Точка автоматического продления (в днях) на странице Подписки

booleanorder.renewal_point = true
order.renewal_is_positive

Установлено ли автоматическое продление Подписки до наступления дня ее истечения (см. Просмотр и обновление информации о Подписке):

  • true Заказ на продление формируется до наступления дня истечения Подписки (значение параметра Точка автоматического продления (в днях) больше 0).
  • falseЗаказ на продление формируется в день истечения Подписки (значение Точка автоматического продления (в днях) равно 0).
booleanorder.renewal_is_positive = true
subscription.statusСтатус Подпискиstringsubscription.status.was="active"
product.idID Продукта Тарифного плана на который оформлена Подписка, включенная в Заказ (см. Просмотр информации о Заказе)integer product.id = 1
product.nameНазвание Продукта Тарифного плана на который оформлена Подписка, включенная в Заказ (см. Просмотр информации о Заказе)integerproduct.name = "Default"
subscription.payment_modelМодель оплаты Подписки. Возможные значения prepay (Предоплата) или postpay (Постоплата).stringsubscription.payment_model = "postpay"
plan_category.keyКлюч Категории тарифных плановstringplan_category.key = "streaming"

Повторная отправка заказа (Resend the order)

order.days_passedКоличество дней, прошедших со дня создания Заказаintegerorder.days_passed = 5

Обещанный платеж создан (Guaranteed payment created)


Обещанный платеж изменен (Guaranteed payment changed)


Обещанный платеж истекает (Guaranteed payment will expire)
account.type_idID Типа клиентовintegeraccount.type_id = 1
account.type_keyКлюч Типа клиентовstringaccount.type_key = "business"
account.class_idID Правила обслуживания Клиентаintegeraccount.class_id = 1
account.class_keyКлюч Правила обслуживания Клиентаstringaccount.class_key = "manual"
guaranteed_payment.status.was

Предыдущий статус Обещанного платежа

Может быть использован только для События Обещанный платеж изменен.

stringguaranteed_payment.status.was = "provided"
guaranteed_payment.statusСтатус Обещанного платежаstringguaranteed_payment.status = "revoked"
guaranteed_payment.days_left

Количество дней до истечения Обещанного платежа

integerguaranteed_payment.days_left = 1
Финансовый день наступает (Billing day is coming)billing_dayДата Финансового дня, для которого было вызвано Событиеintegerbilling_day = 5
billing_day_left

Количество дней, которое осталось до Финансового дня, для которого было вызвано Событие

В Финансовый день, для которого было вызвано Событие, возвращает не 0, а количество дней до следующего Финансового дня

integerbilling_day_left = 7
billing_day_open_charges_amountСумма Cписаний в статусе Открыто, которые будут закрыты или заблокированы в Финансовый день, для которого было вызвано событие. Учитываются только Подписки, у которых Точка автоматического продления = 0. Если Списания в статусе Открыто не существуют, то производится расчет суммы на основе предварительной генерации Списаний на будущий Финансовый периодnumberbilling_day_open_charges_amount = 120.1
plan_idsМассив ID Тарифных планов активных Подписок Клиентаarray(int)plan_ids include? 200023
product_idsМассив ID Продуктов Тарифных планов, на которые оформлены активные Подписки Клиентаarray(int)product_ids include? 100022
product_namesМассив названий Продуктов Тарифных планов, на которые оформлены активные Подписки Клиентаarray(str)product_names include? "Default"
monthly_billingФлаг, указывающий на то, что у Клиента есть неудаленные Подписки с типом биллинга CSP месячныйMonthly CommitmentESET solutions for ISP (Monthly)G SuiteОплата в полном объеме и Без возврата, для которых актуален Финансовый день, для которого было вызвано событиеbooleanmonthly_billing = true
account.type_keyКлюч Типа Клиентаstringaccount.type_key = "personal"
account.class_keyКлюч Правила обслуживания Клиентаstringaccount.class_key = "default"
account.balanceДоступный Баланс Клиентаnumberaccount.balance = 58.5
account.financial_blocking_thresholdДенежный лимит, в пределах которого баланс клиента может быть отрицательным без перехода в статус Финансовая блокировка в течение Разрешенного периода отрицательного балансаnumberaccount.financial_blocking_threshold = 10000
subscription.expiration_dateДата истечения Подпискиdate ДД.ММ.ГГГГ01.01.2019
subscription.payment_modelМодель оплаты Подписки. Возможные значения prepay (Предоплата) или postpay (Постоплата)stringsubscription.payment_model = "postpay"

Срок оплаты платежа приближается (Payment due date is coming)

payment.days_left

Количество дней до истечения Периода отсрочки Платежа, за которое будет отправлено Уведомлениеinteger

payment.days_left = 5

Порог срабатывания финансовой блокировки изменен (Credit hold threshold was changed)

account.financial_blocking_threshold

Денежный лимит, в пределах которого баланс клиента может быть отрицательным без перехода в статус Финансовая блокировка в течение Разрешенного периода отрицательного баланса

numberaccount.financial_blocking_threshold = 100

Финансовый день по подпискам менеджера наступил

(Billing day for manager's subscriptions has come)

(ранее — Финансовый день наступил (Billing day has come))

billing_dayДата Финансового дня, для которого вызывается Событиеintegerbilling_day = 5
subscriptions_plan_category_keysКлюч Категории тарифного плана, который используется для проверки, что у Менеджера есть хотя бы один Клиент с Подпиской на Тарифный план указанной Категорииarraysubscriptions_plan_category_keys include? "azure"
subscriptions_statusesМассив статусов Подписок, для проверки статусов Подписок Клиентов, для которых может срабатывать данное событие уведомленийarraysubscriptions_statuses include? "active"

Создан объединенный платеж (Joined payment created)


Повторная отправка объединенного платежа (Resend the joined payment) 

account.class_idID Правила обслуживания Клиентаintegeraccount.class_id = 1
account.class_keyКлюч Правила обслуживания Клиентаstringaccount.class_key = "default"
payment.days_passed

Количество дней, прошедших со дня создания объединенного Платежа

Может быть использован только для события Повторная отправка объединенного платежа.

integerpayment.days_passed = 5
Финансовый день по подписке клиента наступил (Billing day for account's subscription has come)billing_day_passed

Количество дней после наступления Финансового дня, когда срабатывает Cобытие уведомлений для прошедшего Финансового периода

Параметр billing_day_passed обязателен:

  • Для настройки отложенного наступления События по Подпискам Microsoft Azure Plan (см. Microsoft Azure Plan. Operator Guide) — потому что для них Списания закрываются после наступления Финансового дня.
  • Для остальных Подписок — если не требуется откладывать наступления События, указывается billing_day_passed = 0.
integerbilling_day_passed = 5
plan_category_key

Ключ Категории тарифного плана для проверки, что у Клиента есть Подписка на Тарифный план указанной Категории

stringplan_category_key = "azure"
subscription_statusСтатус Подписки, для которого может срабатывать Событие уведомленийstringsubscription_status = "active'
account_class_keyПравило обслуживания Клиента, для которого может срабатывать Событие уведомленийstringaccount_class_key = "default"
Корректировка баланса подтверждена (Correction approved)correction.approved_manager_idsСписок ID Сотрудников, подтвердивших Корректировку, для которых может срабатывать Событие уведомленийintegercorrection.approved_manager_ids include? 221

Отзыв | Feedback