This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Услуги

Услуги

Для того, чтобы оказать/продать услугу, её необходимо создать и настроить.

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

Описание полей услуг:

Поле Тип Обязательное default Описание
name Integer Да - Название услуги. Например: "Тариф простой"
category String Да - Служит для группировки услуг. События для услуг создаются по этому полю
cost Double Да - Стоимость услуги за период
period_cost Integer Нет 1 Кол-во месяцев. Например, для продажи доменных имён обычно используется период в 12 месяцев
next Integer Нет - Идентификатор следующей услуги. `-1` - удалить услугу после истечения
children JSON Нет - Дочерние услуги. Массив из идентификаторов дочерних услуг и их кол-ва
allow_to_order Integer Нет - Установите 1, для разрешения услуги к заказу клиентом
pay_in_credit Integer Нет - Установите 1, для разрешения кредита для услуги
config JSON Нет - Произвольные данные в формате JSON

1 - Настройка

Название услуги

Любое произвольное, понятное название. Название услуги будут видеть ваши клиенты.

Категория услуги

Категория услуги это любое слово.

Категория услуг может использоваться для следующих задач:

  • связывание услуг и событий. Укажите эту же категорию в событии для связывания
  • групировка и выборка услуг, например в API, в шаблонах, и в Telegram bot-е
  • Отображение определенных Web форм в кабинете клиента

Предопределенные категории:

  • vpn-* - Для этого имени категории в Web интерфейсе пользователя будет отображаться специальная форма, где пользователь может скачать ключ VPN. Вы можете указать категорию услуги, например такую: vpn-russia, или vpn-home

Период услуги

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

Период задается в формате M.DDHH, где:

  • M - месяцы
  • DD - дни
  • HH - часы

Примеры:

  • 0.01 - период 1 день
  • 0.0001 - период 1 час
  • 0.10 (0.1) - период 10 дней
  • 0.1001 - 10 дней и 1 час
  • 0.1110 (0.111) - 11 дней и 10 часов
  • 1.10 (1.1) - период 1 месяц и 10 дней
  • 1.1012 - период 1 месяц, 10 дней и 12 часов
  • 12 - период 1 год (12 месяцев)

Стоимость

Стоимость услуги за указанный период. Эта сумма списывается при заказе и продлении услуги.

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

Например, стоимость услуги 300, период 1 месяц (30 дней). Если услугу удалить через 10 дней, то итоговая стоимость услуги составит: 300/30*10=100, т.е. на балнс вернется: 300-100=200

Следующая услуга

  • Можно указать: “Не изменять”. Режим по-умолчанию. Услуга будет автоматически продлеваться без изменения имени, стоимости и периода.
  • Можно указать: “Не продлевать”. В этом случае, услуга будет автоматически удалена по окончанию периода.
  • Можно указать следующую услугу. Это удобный механизм для организации тестовых периодов. Например, можно сделать услугу вида: “Тест на 10 дней” за 0 рублей, а следующей указать уже услугу с периодом 30 дней, за 300 рублей. Таким образом, когда первая услуга истечет (пройдет 10 дней), биллинг автоматически переключится на следующую услугу с указанной стоимостью. Так же удобно создавать услуги вида: “Регистрация домена”, а следующей услугой указать: “Продление домена”. Срок одинаковый, но стоимость разная. В случае, если денег на балансе будет недостаточно, услуга заблокируется.

Следующую услугу можно указать как в “Каталоге услуг” (services), так и в “Услугах пользователя” (user_services). Если услуга у пользователя уже создана, то необходимо производить эту настройку именно в услуге пользователя.

Дочерние услуги

Дочерние услуги - это такие услуги, которые будут созданы при создании основной услуги (под-услуги).

Более подробно про тип услуг можно почитать здесь.

Прайс-лист

Установите галочку “Доступно к заказу”, чтобы услуга появилась в списке доступных для регистрации пользователем.

Если установить галочку “Можно заказать только один раз”, то в случае, когда клиент уже заказывал эту услугу ранее, она будет исключена из списка доступных для регистрации услуг.

2 - Виды услуг

Дочерние услуги

Бывают случаи, когда для одной платной услуги, нужно создать несколько услуг, на различных серверах.

Например:

  • Услуга “Виртуальный хостинг”, подразумевает создание таких услуг как: “Web хостинг”, “Хостинг БД” и “Хостинг почты”. Это три совершенно разные услуги, которые оказываются как дочерние к основной.

  • Услуга “DNS хостинг”, подразумевает под собой первычный и вторичный DNS-ы. Это тоже удобно оформить ввиде дочерних услуг.

Составные услуги

Составные услуги это такой режим работы биллинга, когда стоимость родительской услуги суммируется со стоимостью дочерних. Таким образом, услуга будет оплачена только в том случае, если хватает средств как на основную услугу, так и на все её дочерние. Изменяя параметр кол-во дочерних услуг, изменяется общая стоимость услуги.

Этот режим удобно использовать для продажи таких услуг, как VPS, где в качестве дочерних создаются такие услуги как CPU, RAM, HDD и т.п. Например, установив стоимость для 1 CPU, и указав кол-во этих услуг, будет автоматически вычислена итоговая стоимость.

Одноразовые услуги

Если услугу пометить как “одноразовая”, то такую услугу клиент сможет заказать только единожды. Этот режим хорошо подходит для создания “пробных” периодов.

Например: для того, чтобы дать клиенту тестовый, бесплатный (или акционный) период, можно создать одноразовую услугу с акционной стоимостью, а в качестве следующей услуги установить уже обычную услугу, с обычной ценой. Когда тестовая услуга закончится, биллинг автоматически переключится на базовую услугу (при наличии средств на счёте).

Пользовательские услуги

Пользовательская услуга - это такая услуга, которая уже оказана пользователю.

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

3 - События

События генерируются SHM, для возможности привязки команд.

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

Список cобытий

Event Статус ДО Статус ПОСЛЕ Описание
create INIT ACTIVE Услуга создана и оплачена (впервые)
not_enough_money INIT NOT_PAID Не хватает денег для создания услуги
prolongate ACTIVE ACTIVE Услуга продлена (хватило денег для продления активной услуги)
block ACTIVE BLOCK Услуга заблокирована (нехватка денег для продления, либо вручную)
activate BLOCK ACTIVE Услуга активирована (возобновлена после блокировки)
remove BLOCK REMOVED Услуга удалена
changed * * Событие вызывается каждый раз, когда меняется статус услуги

Если для события настроена команда, то пользовательской услуге будет присвоен промежуточный статус: PROGRESS, а после выполнения команды пользовательской услуге будет присвоен результирующий статус.

Вот так будет выглядеть создание услуги с настроеным событием:

INIT -> PROGRESS (выполнение команды) -> ACTIVE

событие PROLONGATE не переводит услугу в статус PROGRESS, и событие CHANGED не вызывается

Настройка событий

Для события необходимо указать “Категорию” услуги и “Группу серверов”, для выполнения команд.

Категория события должна соответствовать категории услуги, для которой создается это событие и может быть указана с маской, например: vpn-*, где * заменяет любые символы.

В зависимости от выбранной группы серверов, могут быть использованы дополнительные настройки, зависящие от Транспорта группы.

Например, если выбрана группа серверов, транспорт которой определен как “SSH”, то будет предложено выбрать шаблон в качестве скрипта, который должен быть выполнен на конечном сервере. Используйте Шаблоны для написания команд.

А если выбрана группа серверов, транспорт которой определен как “Mail”, то можно настроить поле “Шаблон” (template_id), по которому будет сформировано письмо, а так-же другие поля, такие как “Тема письма” (subject) и прочие.

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