RM Updates
(→Вьюха customer/show.rhtml) |
(→RM Updates) |
||
(23 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
+ | ==RM Updates== | ||
+ | |||
+ | * [[RM Updates: RM API]] | ||
+ | * [[RM Updates: Later]] | ||
+ | * [[RM Updates: April 7, 2008]] | ||
+ | * [[RM Updates: April 20, 2008]] | ||
+ | |||
==Tasks Overview== | ==Tasks Overview== | ||
− | * Релизовать | + | * Релизовать подписки. |
==Bugs== | ==Bugs== | ||
Line 7: | Line 14: | ||
* Конвертацию /r/n (новая строка) в <br> (см. описания там всё в одну линии). | * Конвертацию /r/n (новая строка) в <br> (см. описания там всё в одну линии). | ||
− | * | + | ==Доработки раздела "Products"== |
+ | |||
+ | Ссылка: [http://rm.medialooks.com/product/edit/4 http://rm.medialooks.com/product/edit/4] | ||
+ | |||
+ | Параметры: | ||
+ | |||
+ | * Добавить параметр '''Release Notes Link''' (это ссылка на вику, которую нужно будет вставлять в письма). | ||
+ | |||
+ | * Добавить параметр '''License Update Link''' (это ссылка на платежную систему, которую нужно будет вставлять в письма). | ||
==Доработки раздела "Customers"== | ==Доработки раздела "Customers"== | ||
Line 18: | Line 33: | ||
* '''customer.email''' нужно либо проапгрейдить либо заменить на другой. Контактов на одного клиента может быть несколько (любое количество) - поэтому тут через список должны выводиться все контакты клиента, в виде '''Name <email@email.com>'''. | * '''customer.email''' нужно либо проапгрейдить либо заменить на другой. Контактов на одного клиента может быть несколько (любое количество) - поэтому тут через список должны выводиться все контакты клиента, в виде '''Name <email@email.com>'''. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===Вьюха customer/show.rhtml=== | ===Вьюха customer/show.rhtml=== | ||
Line 33: | Line 40: | ||
Параметры: | Параметры: | ||
− | * Добавить параметр "список контактов" (вместо '''customer.email'''). | + | * Добавить параметр "список контактов" (вместо '''customer.email'''). Рямдо с каждым контактом стоит checkbox - если checked, то данный контакт подписан на рассылку '''Updates''' по данному продукту. Если не checked, то не подписан. Эти чекбоксы используются для подписки/отписки котнтактов от рассылки '''Updates'''. |
* Subscribers (список контактов, подписанных на обновления по данному продукту). | * Subscribers (список контактов, подписанных на обновления по данному продукту). | ||
− | + | ==Подписки== | |
− | + | ||
− | + | ||
− | + | ||
− | == | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
Каждый контакт может быть подписан на любое количество имеющихся подписок. | Каждый контакт может быть подписан на любое количество имеющихся подписок. | ||
Line 56: | Line 49: | ||
В первом приближении нужно две подписки: | В первом приближении нужно две подписки: | ||
− | * Автоматические нотификации о новых версиях тех продуктов, которые лицензированы у данного контакта. Высылается каждый раз когда в RM появляется новый релиз продукта (впоследствии логика будет усложнена). | + | * '''Updates.''' Автоматические нотификации о новых версиях тех продуктов, которые лицензированы у данного контакта. Высылается каждый раз когда в RM появляется новый релиз продукта (впоследствии логика будет усложнена). |
− | * Автоматические нотификации об истечении срока действия лицензии. Высылается за 7 дней до окончания срока действия лицензии. Высылается повторно в день окончания срока действия лицензии. | + | * '''LicenseExpired.''' Автоматические нотификации об истечении срока действия лицензии ('''license.expires.strftime'''). Высылается за 7 дней до окончания срока действия лицензии. Высылается повторно в день окончания срока действия лицензии. |
− | Обе подписки выставляются контактам автоматически. | + | Обе подписки выставляются контактам автоматически. Т.е. все контакты клиента по-умолчанию подписаны на все подписки, связанные с лицензиями данного клиента. |
− | + | Необходимо учесть что на одного контакта может быть заведено любое количество лицензий одного и того же продукта. Отличаться они при этом будут по allowed_modules и по датам. Для рассылки '''Updates''' при возникновении обновлений должно отсылаться одно письмо. Если при этом у одной (или более) из лицензий уже истек '''license.expires.strftime''', то в письме должен сработать соотв. шаблон. | |
===Шаблоны писем=== | ===Шаблоны писем=== | ||
+ | |||
+ | ''Веб-интерфейс для редактирования шаблонов писем пока делать не нужно. Достаточно указать в каких файлах лежат шаблоны и в каких контролах я могу редактировать параметры "From" и "Reply-to".'' | ||
Директива IF/ELSE. Например, для случая если для данного продукта уже истекла лицензия - что-т вроде <IF license_expired> ... <ELSE> ... <END>. | Директива IF/ELSE. Например, для случая если для данного продукта уже истекла лицензия - что-т вроде <IF license_expired> ... <ELSE> ... <END>. | ||
Line 75: | Line 70: | ||
* Ссылка на оплату продления лицензии. | * Ссылка на оплату продления лицензии. | ||
* Дата, когда заканчивается (или закончилась) лицензия на данный продукт. | * Дата, когда заканчивается (или закончилась) лицензия на данный продукт. | ||
+ | * Ссылка на отписку от данной рассылки. | ||
− | == | + | ==Интеграция с формой feedback на сайте== |
− | + | К [http://www.medialooks.com/products/directshow_filters/quicktime_filter.html форме контактов] на сайте необходимо добавить 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.''' (Покажи плиз в какой вьюхе это можно будет редактировать.) | ||
+ | |||
+ | ==Мелкие доработки== | ||
* Сделать что-бы можно было обновлять файл без изменения описания и версии. | * Сделать что-бы можно было обновлять файл без изменения описания и версии. | ||
Line 91: | Line 96: | ||
==See Also== | ==See Also== | ||
− | + | ||
− | + | __NOTOC__ |
Latest revision as of 12:56, 20 April 2008
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".