RM Updates

From AVObjects Knowledge Base
Jump to: navigation, search

RM Updates

Tasks Overview

  • Релизовать подписки.

Bugs

  • Конвертацию /r/n (новая строка) в
    (см. описания там всё в одну линии).

Доработки раздела "Products"

Ссылка: http://rm.medialooks.com/product/edit/4

Параметры:

  • Добавить параметр Release Notes Link (это ссылка на вику, которую нужно будет вставлять в письма).
  • Добавить параметр License Update Link (это ссылка на платежную систему, которую нужно будет вставлять в письма).

Доработки раздела "Customers"

Вьюха customer/index.rhtml

Ссылка: http://rm.medialooks.com/customer

Параметры:

  • customer.email нужно либо проапгрейдить либо заменить на другой. Контактов на одного клиента может быть несколько (любое количество) - поэтому тут через список должны выводиться все контакты клиента, в виде Name <email@email.com>.

Вьюха customer/show.rhtml

Ссылка: http://rm.medialooks.com/customer/show/1

Параметры:

  • Добавить параметр "список контактов" (вместо customer.email). Рямдо с каждым контактом стоит checkbox - если checked, то данный контакт подписан на рассылку Updates по данному продукту. Если не checked, то не подписан. Эти чекбоксы используются для подписки/отписки котнтактов от рассылки Updates.
  • Subscribers (список контактов, подписанных на обновления по данному продукту).

Подписки

Каждый контакт может быть подписан на любое количество имеющихся подписок.

В первом приближении нужно две подписки:

  • Updates. Автоматические нотификации о новых версиях тех продуктов, которые лицензированы у данного контакта. Высылается каждый раз когда в RM появляется новый релиз продукта (впоследствии логика будет усложнена).
  • LicenseExpired. Автоматические нотификации об истечении срока действия лицензии (license.expires.strftime). Высылается за 7 дней до окончания срока действия лицензии. Высылается повторно в день окончания срока действия лицензии.

Обе подписки выставляются контактам автоматически. Т.е. все контакты клиента по-умолчанию подписаны на все подписки, связанные с лицензиями данного клиента.

Необходимо учесть что на одного контакта может быть заведено любое количество лицензий одного и того же продукта. Отличаться они при этом будут по allowed_modules и по датам. Для рассылки Updates при возникновении обновлений должно отсылаться одно письмо. Если при этом у одной (или более) из лицензий уже истек license.expires.strftime, то в письме должен сработать соотв. шаблон.

Шаблоны писем

Веб-интерфейс для редактирования шаблонов писем пока делать не нужно. Достаточно указать в каких файлах лежат шаблоны и в каких контролах я могу редактировать параметры "From" и "Reply-to".

Директива IF/ELSE. Например, для случая если для данного продукта уже истекла лицензия - что-т вроде <IF license_expired> ... <ELSE> ... <END>.

Переменные:

  • Cсылка последнюю версию продукта.
  • Release Notes (из текущего релиза).
  • Ссылка на апдейт лог.
  • Ссылка на оплату продления лицензии.
  • Дата, когда заканчивается (или закончилась) лицензия на данный продукт.
  • Ссылка на отписку от данной рассылки.

Интеграция с формой feedback на сайте

К форме контактов на сайте необходимо добавить checkbox. Если при сабмите формы он прочекан, то в RM необходимо подписать данный email на подписку Updates. Как это лучше сделать - нужно подумать:

1) Через виртуальную (с пустыми датами) лицензию. Но тогда в списке Customers мы получим большое количество записей, которые кастомерами не являются.

2) Через отдельную сущность. Но в таком случае нужно будет уметь "срастить" данную подписку с лицензией в тот момент, когда таковая будет создана.

Отписки

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

Ограничение: Если данный email привязан к действительной лицензии (т.е. такой у которой еще не закончился license.expires.strftime) и является единственным, то его отписывать не надо, а нужно выдать сообщение Sorry, at least one email has to be subscribed if you have a valid license. Please contact MediaLooks if you want to be permanently removed. (Покажи плиз в какой вьюхе это можно будет редактировать.)

Мелкие доработки

  • Сделать что-бы можно было обновлять файл без изменения описания и версии.
  • Сделать отправку нотификаций по почте администратору о новых закачках. В текст нотификации обязательно вставлять текущие Release Notes.
  • Добавить диалог подтверждения ко всем операциям "Delete".

See Also

Personal tools