Модуль DrWeb

Назначение модуля

Модуль автоматизирует работу с Dr.Web AV-Desk. Позволяет пользователям подписываться на услугу, менять тариф, блокировать на время и прекращать подписку. Производит списание наработки с баланса пользователя в соответствии старифами. В настоящий момент поддерживаться версия Dr.Web AV-Desk 5 c API2.0.

Базовые понятия и алгоритм работы модуля

При запросе агента через web интерфейс пользователя, проверяется наличие достаточного количества денег, после чего посылается запрос на сервер Dr.Web AV-Desk, полученная ссылка показывается пользователю для загрузки агента.

Задача планировщика "Обработка задач Dr.Web (режим 1)",выполняет несколько задач.

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

  • При поступлении денег на счет пользователя, у которого прекращена подписка из-за нехватки денег, продлевает подписку;

  • В первые дни месяца посылает запрос на изменение тарифа для пользователей, которые инициировали смену тарифа.

Задача планировщика "Начисление Dr.Web", выполняет начисление наработки, по акивным агентам.

Установка и настройка модуля

Модуль устанавливается с помощью утилиты bg_installer, после чего создаётся его экземпляр и прописываются необходимые услуги.

На вкладке Конфигурация создайте и установите конфигурацию модуля.

#ссылка на api2 для сервера AVDESK
drweb.api.url=http://localhost:9080/api/2.0/
#логин для доступа к серверу
drweb.api.user=
#пароль для доступа к серверу
drweb.api.pswd=
#кодировка
drweb.api.encoding=UTF-8
#id расхода за Drweb
drweb.charge.id=54
# коментарий к расходу
drweb.charge.comment=За Dr.Web AV-Desk test;
#текст ошибки при нехватке баланса
drweb.error.balance.message=Недостаточно денег на счету test
#наличие льготного периода
graceperiod=yes
#количество полных месяцев льготного периода
graceperiod.count=1
#название пункта меню в web-интерфейсе
web.menuItem1=Dr.Web AV-Desk - подписка
#максимальное кол-во на однин договор
#drweb.agent.max.count=5
#текст ошибки при превышение максимального количества агентов
#drweb.error.max.count.message=Вы превысили количество агентов

На вкладке модуля Тарифы создайте тарифы, соответствующие тарифам в Dr.Web AV-Desk.

Для тарифа можно выбрать следующие параметры:

  • Название - определяет как тариф будет показываться пользователю;

  • Услуга - определяет услугу, по которой будет начисляться наработка;

  • Услуга активации - определяет услугу, по которой будет начисляться наработка в месяц активации агента (месяц первого платежа);

  • Группа - соответствеут группе на сервере Av-Desk;

  • Действует - задает период действия тарифа;

  • Показывать - задает период, когда пользователь видит тариф и может на него переключаться (подключаться);

  • Следующий тариф - определяет тариф, на который нужно переключить агента по истечении срока действия данного тарифа (применяеться для акционных тарифов);

  • Показывать для групп - определяет группы договоров, пользователи которых видят тариф и могут на него переключаться (подключаться);

  • Только для новых - тариф виден только для первичного подключения, но не для перехода на него в последующем.

images/download/attachments/43385384/x_439.gif

В планировщике заданий необходимо добавить задачу Обработка задач Dr.Web (режим 1). Данная задача отвечает за продление подписки и изменение тарифов на сервере Dr.Web AV-Desk. Период запуска устанавливаем в начале каждых суток. В конфигурации задачи должно быть указано

#mid модуля drweb
mid=
#В какие дни месяца можно менять тариф. AV-Desk позволяет переключать тариф в первый день месяца
change.tariff.days=1
#За сколько дней до конца месяца начинать продлять агентов (когда начинать списывать средства и продлять или прекращать подписку )
prolong.days=2

В планировщике заданий необходимо добавить задачу Начисление Dr.Web. Данная задача производит начисление за подписку. В конфигурации задачи должно быть указано

#mid модуля drweb
mid=

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